ILIAS  eassessment Revision 61809
 All Data Structures Namespaces Files Functions Variables Groups Pages
ilBookingTypeGUI Class Reference

Class ilBookingTypeGUI. More...

+ Collaboration diagram for ilBookingTypeGUI:

Public Member Functions

 __construct ($a_parent_obj)
 Constructor.
 executeCommand ()
 main switch
 render ()
 Render list of booking types.
 create ()
 Render creation form.
 edit ()
 Render edit form.
 initForm ($a_mode="create", $id=NULL)
 Build property form.
 save ()
 Create new dataset.
 update ()
 Update dataset.
 confirmDelete ()
 Confirm delete.
 delete ()
 Delete type.

Detailed Description

Constructor & Destructor Documentation

ilBookingTypeGUI::__construct (   $a_parent_obj)

Constructor.

Parameters
object$a_parent_obj

Definition at line 21 of file class.ilBookingTypeGUI.php.

{
$this->ref_id = $a_parent_obj->ref_id;
$this->obj_id = $a_parent_obj->object->getId();
}

Member Function Documentation

ilBookingTypeGUI::confirmDelete ( )

Confirm delete.

Definition at line 250 of file class.ilBookingTypeGUI.php.

References $_GET, $ilCtrl, $lng, $tpl, and $type.

{
global $ilCtrl, $lng, $tpl;
include_once 'Services/Utilities/classes/class.ilConfirmationGUI.php';
$conf = new ilConfirmationGUI();
$conf->setFormAction($ilCtrl->getFormAction($this));
$conf->setHeaderText($lng->txt('book_confirm_delete'));
include_once 'Modules/BookingManager/classes/class.ilBookingType.php';
$type = new ilBookingType((int)$_GET['type_id']);
$conf->addItem('type_id', (int)$_GET['type_id'], $type->getTitle());
$conf->setConfirm($lng->txt('delete'), 'delete');
$conf->setCancel($lng->txt('cancel'), 'render');
$tpl->setContent($conf->getHTML());
}
ilBookingTypeGUI::create ( )

Render creation form.

Definition at line 77 of file class.ilBookingTypeGUI.php.

References $ilCtrl, $lng, $tpl, and initForm().

{
global $tpl, $ilCtrl, $ilTabs, $lng;
$ilTabs->clearTargets();
$ilTabs->setBackTarget($lng->txt('book_back_to_list'), $ilCtrl->getLinkTarget($this, 'render'));
$form = $this->initForm();
$tpl->setContent($form->getHTML());
}

+ Here is the call graph for this function:

ilBookingTypeGUI::delete ( )

Delete type.

Definition at line 271 of file class.ilBookingTypeGUI.php.

References $_POST, $ilCtrl, $lng, $type, and ilUtil\sendSuccess().

{
global $ilCtrl, $lng;
include_once 'Modules/BookingManager/classes/class.ilBookingType.php';
$type = new ilBookingType((int)$_POST['type_id']);
$type->delete();
ilUtil::sendSuccess($lng->txt('book_type_deleted'), true);
$ilCtrl->redirect($this, 'render');
}

+ Here is the call graph for this function:

ilBookingTypeGUI::edit ( )

Render edit form.

Definition at line 91 of file class.ilBookingTypeGUI.php.

References $_GET, $ilCtrl, $lng, $tpl, and initForm().

{
global $tpl, $ilCtrl, $ilTabs, $lng;
$ilTabs->clearTargets();
$ilTabs->setBackTarget($lng->txt('book_back_to_list'), $ilCtrl->getLinkTarget($this, 'render'));
$form = $this->initForm('edit', (int)$_GET['type_id']);
$tpl->setContent($form->getHTML());
}

+ Here is the call graph for this function:

ilBookingTypeGUI::executeCommand ( )

main switch

Definition at line 30 of file class.ilBookingTypeGUI.php.

References $cmd, $ilCtrl, and $tpl.

{
global $tpl, $ilTabs, $ilCtrl;
$next_class = $ilCtrl->getNextClass($this);
switch($next_class)
{
default:
$cmd = $ilCtrl->getCmd("render");
$this->$cmd();
break;
}
return true;
}
ilBookingTypeGUI::initForm (   $a_mode = "create",
  $id = NULL 
)

Build property form.

Parameters
string$a_mode
int$id
Returns
object

Definition at line 108 of file class.ilBookingTypeGUI.php.

References $ilCtrl, $lng, $title, $type, ilBookingSchedule\getList(), ilFormPropertyGUI\setInfo(), and ilFormPropertyGUI\setRequired().

Referenced by create(), edit(), save(), and update().

{
global $lng, $ilCtrl, $ilObjDataCache;
include_once("Services/Form/classes/class.ilPropertyFormGUI.php");
$form_gui = new ilPropertyFormGUI();
$title = new ilTextInputGUI($lng->txt("title"), "title");
$title->setRequired(true);
$title->setSize(40);
$title->setMaxLength(120);
$form_gui->addItem($title);
include_once 'Modules/BookingManager/classes/class.ilBookingSchedule.php';
$schedules = ilBookingSchedule::getList($this->obj_id);
$group = new ilCheckboxInputGUI($lng->txt("book_group_objects"), "group");
$group->setInfo($lng->txt("book_group_objects_info"));
$form_gui->addItem($group);
if(sizeof($schedules))
{
$options = array();
foreach($schedules as $schedule)
{
$options[$schedule["booking_schedule_id"]] = $schedule["title"];
}
$schedule = new ilSelectInputGUI($lng->txt("book_schedule"), "schedule");
$schedule->setRequired(true);
$schedule->setOptions($options);
$group->addSubItem($schedule);
}
else
{
$group->setDisabled(true);
}
if ($a_mode == "edit")
{
$form_gui->setTitle($lng->txt("book_edit_type"));
$item = new ilHiddenInputGUI('type_id');
$item->setValue($id);
$form_gui->addItem($item);
include_once 'Modules/BookingManager/classes/class.ilBookingType.php';
$type = new ilBookingType($id);
$title->setValue($type->getTitle());
if($type->getScheduleId())
{
$schedule->setValue($type->getScheduleId());
$group->setChecked(true);
}
$form_gui->addCommandButton("update", $lng->txt("save"));
}
else
{
$form_gui->setTitle($lng->txt("book_add_type"));
$form_gui->addCommandButton("save", $lng->txt("save"));
$form_gui->addCommandButton("render", $lng->txt("cancel"));
}
$form_gui->setFormAction($ilCtrl->getFormAction($this));
return $form_gui;
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilBookingTypeGUI::render ( )

Render list of booking types.

uses ilBookingTypesTableGUI

Definition at line 51 of file class.ilBookingTypeGUI.php.

References $ilCtrl, $lng, $tpl, ilToolbarGUI\addButton(), ilBookingSchedule\hasExistingSchedules(), and ilUtil\sendFailure().

Referenced by update().

{
global $tpl, $lng, $ilCtrl, $ilAccess;
include_once "Modules/BookingManager/classes/class.ilBookingSchedule.php";
{
ilUtil::sendFailure($lng->txt("book_schedule_warning"));
}
if ($ilAccess->checkAccess('write', '', $this->ref_id))
{
include_once 'Services/UIComponent/Toolbar/classes/class.ilToolbarGUI.php';
$bar = new ilToolbarGUI;
$bar->addButton($lng->txt('book_add_type'), $ilCtrl->getLinkTarget($this, 'create'));
$bar = $bar->getHTML();
}
include_once 'Modules/BookingManager/classes/class.ilBookingTypesTableGUI.php';
$table = new ilBookingTypesTableGUI($this, 'render', $this->ref_id);
$tpl->setContent($bar.$table->getHTML());
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilBookingTypeGUI::save ( )

Create new dataset.

Definition at line 181 of file class.ilBookingTypeGUI.php.

References $ilCtrl, $lng, $tpl, initForm(), ilUtil\sendSuccess(), and ilBookingType\setTitle().

{
global $tpl, $ilObjDataCache, $ilCtrl, $lng;
$form = $this->initForm();
if($form->checkInput())
{
include_once 'Modules/BookingManager/classes/class.ilBookingType.php';
$obj = new ilBookingType;
$obj->setTitle($form->getInput("title"));
$obj->setPoolId($ilObjDataCache->lookupObjId($this->ref_id));
if($form->getInput("group"))
{
$obj->setScheduleId($form->getInput("schedule"));
}
$obj->save();
ilUtil::sendSuccess($lng->txt("book_type_added"));
$ilCtrl->setParameterByClass('ilbookingobjectgui', 'type_id', $obj->getId());
$ilCtrl->redirectByClass("ilbookingobjectgui", "create");
}
else
{
$form->setValuesByPost();
$tpl->setContent($form->getHTML());
}
}

+ Here is the call graph for this function:

ilBookingTypeGUI::update ( )

Update dataset.

Definition at line 214 of file class.ilBookingTypeGUI.php.

References $_POST, $lng, $tpl, initForm(), render(), and ilUtil\sendSuccess().

{
global $tpl, $ilObjDataCache, $lng;
$form = $this->initForm('edit', (int)$_POST['type_id']);
if($form->checkInput())
{
include_once 'Modules/BookingManager/classes/class.ilBookingType.php';
$obj = new ilBookingType((int)$_POST['type_id']);
$obj->setTitle($form->getInput("title"));
$obj->setPoolId($ilObjDataCache->lookupObjId($this->ref_id));
if($form->getInput("group"))
{
$obj->setScheduleId($form->getInput("schedule"));
}
else
{
$obj->setScheduleId(NULL);
}
$obj->update();
ilUtil::sendSuccess($lng->txt("book_type_updated"));
$this->render();
}
else
{
$form->setValuesByPost();
$tpl->setContent($form->getHTML());
}
}

+ Here is the call graph for this function:


The documentation for this class was generated from the following file: