57        $this->tpl = 
$DIC[
"tpl"];
 
   58        $this->tabs = 
$DIC->tabs();
 
   59        $this->ctrl = 
$DIC->ctrl();
 
   60        $this->lng = 
$DIC->language();
 
   61        $this->access = 
$DIC->access();
 
   62        $this->help = 
$DIC[
"ilHelp"];
 
   63        $this->obj_data_cache = 
$DIC[
"ilObjDataCache"];
 
   64        $this->ref_id = $a_parent_obj->ref_id;
 
   76        $next_class = 
$ilCtrl->getNextClass($this);
 
   78        switch ($next_class) {
 
   80                $cmd = 
$ilCtrl->getCmd(
"render");
 
   99        include_once 
'Modules/BookingManager/classes/class.ilBookingSchedulesTableGUI.php';
 
  102        if ($ilAccess->checkAccess(
'write', 
'', $this->ref_id)) {
 
  104            if (
sizeof(
$table->getData())) {
 
  105                include_once 
"Modules/BookingManager/classes/class.ilBookingObject.php";
 
  111            include_once 
'Services/UIComponent/Toolbar/classes/class.ilToolbarGUI.php';
 
  114            $bar = $bar->getHTML();
 
  131        $ilTabs->clearTargets();
 
  132        $ilTabs->setBackTarget(
$lng->txt(
'book_back_to_list'), 
$ilCtrl->getLinkTarget($this, 
'render'));
 
  133        $ilHelp->setScreenIdComponent(
"book");
 
  134        $ilHelp->setScreenId(
"schedules");
 
  135        $ilHelp->setSubScreenId(
"create");
 
  152        $ilTabs->clearTargets();
 
  153        $ilTabs->setBackTarget(
$lng->txt(
'book_back_to_list'), 
$ilCtrl->getLinkTarget($this, 
'render'));
 
  154        $ilHelp->setScreenIdComponent(
"book");
 
  155        $ilHelp->setScreenId(
"schedules");
 
  156        $ilHelp->setSubScreenId(
"edit");
 
  173        $lng->loadLanguageModule(
"dateplaner");
 
  175        include_once(
"Services/Form/classes/class.ilPropertyFormGUI.php");
 
  180        $title->setRequired(
true);
 
  182        $title->setMaxLength(120);
 
  183        $form_gui->addItem(
$title);
 
  185        include_once 
"Modules/BookingManager/classes/class.ilScheduleInputGUI.php";
 
  187        $definition->setInfo(
$lng->txt(
"book_schedule_days_info"));
 
  188        $definition->setRequired(
true);
 
  189        $form_gui->addItem($definition);
 
  192        $deadline_opts->setRequired(
true);
 
  193        $form_gui->addItem($deadline_opts);
 
  196        $deadline_opts->addOption($deadline_time);
 
  199        $deadline->setInfo(
$lng->txt(
"book_deadline_info"));
 
  200        $deadline->setSuffix(
$lng->txt(
"book_hours"));
 
  201        $deadline->setMinValue(1);
 
  202        $deadline->setSize(3);
 
  203        $deadline->setMaxLength(3);
 
  204        $deadline_time->addSubItem($deadline);
 
  206        $deadline_start = 
new ilRadioOption(
$lng->txt(
"book_deadline_slot_start"), 
"slot_start");
 
  207        $deadline_opts->addOption($deadline_start);
 
  209        $deadline_slot = 
new ilRadioOption(
$lng->txt(
"book_deadline_slot_end"), 
"slot_end");
 
  210        $deadline_opts->addOption($deadline_slot);
 
  212        if ($a_mode == 
"edit") {
 
  213            include_once 
'Modules/BookingManager/classes/class.ilBookingSchedule.php';
 
  218        $av->setTitle(
$lng->txt(
"obj_activation_list_gui"));
 
  219        $form_gui->addItem($av);
 
  222        $lng->loadLanguageModule(
'rep');
 
  225        $from->setShowTime(
true);
 
  226        $form_gui->addItem(
$from);
 
  229        $to->setShowTime(
true);
 
  230        $form_gui->addItem($to);
 
  232        if ($a_mode == 
"edit") {
 
  233            $form_gui->setTitle(
$lng->txt(
"book_edit_schedule"));
 
  236            $item->setValue(
$id);
 
  237            $form_gui->addItem($item);
 
  239            include_once 
'Modules/BookingManager/classes/class.ilBookingSchedule.php';
 
  241            $title->setValue($schedule->getTitle());
 
  242            $from->setDate($schedule->getAvailabilityFrom());
 
  243            $to->setDate($schedule->getAvailabilityTo());
 
  245            if ($schedule->getDeadline() == 0) {
 
  246                $deadline_opts->setValue(
"slot_start");
 
  247            } elseif ($schedule->getDeadline() > 0) {
 
  248                $deadline->setValue($schedule->getDeadline());
 
  249                $deadline_opts->setValue(
"hours");
 
  251                $deadline->setValue(0);
 
  252                $deadline_opts->setValue(
"slot_end");
 
  270            $definition->setValue($schedule->getDefinitionBySlots());
 
  272            $form_gui->addCommandButton(
"update", 
$lng->txt(
"save"));
 
  274            $form_gui->setTitle(
$lng->txt(
"book_add_schedule"));
 
  275            $form_gui->addCommandButton(
"save", 
$lng->txt(
"save"));
 
  276            $form_gui->addCommandButton(
"render", 
$lng->txt(
"cancel"));
 
  278        $form_gui->setFormAction(
$ilCtrl->getFormAction($this));
 
  292        if (
$form->checkInput()) {
 
  293            include_once 
'Modules/BookingManager/classes/class.ilBookingSchedule.php';
 
  301            $form->setValuesByPost();
 
  316        if (
$form->checkInput()) {
 
  317            include_once 
'Modules/BookingManager/classes/class.ilBookingSchedule.php';
 
  325            $form->setValuesByPost();
 
  338        $days = 
$form->getInput(
"days");
 
  340            $days_group = 
$form->getItemByPostVar(
"days");
 
  341            foreach ($days_group->getOptions() as $option) {
 
  342                $days_fields[$option->getValue()] = $option;
 
  345            foreach ($days as $day) {
 
  346                $slot = 
$form->getInput($day . 
"_slot");
 
  347                $subs = $days_fields[$day]->getSubItems();
 
  349                    $subs[0]->setValue($slot[0]);
 
  352                    $subs[1]->setValue($slot[1]);
 
  367        $schedule->setTitle(
$form->getInput(
"title"));
 
  368        $schedule->setPoolId($ilObjDataCache->lookupObjId($this->ref_id));
 
  371        $schedule->setAvailabilityFrom(
$from->getDate());
 
  373        $to = 
$form->getItemByPostVar(
"to");
 
  374        $schedule->setAvailabilityTo($to->getDate());
 
  376        switch (
$form->getInput(
"deadline_opts")) {
 
  378                $schedule->setDeadline(0);
 
  382                $schedule->setDeadline(
$form->getInput(
"deadline"));
 
  386                $schedule->setDeadline(-1);
 
  421        $ilHelp->setSubScreenId(
"delete");
 
  424        include_once 
'Services/Utilities/classes/class.ilConfirmationGUI.php';
 
  426        $conf->setFormAction(
$ilCtrl->getFormAction($this));
 
  427        $conf->setHeaderText(
$lng->txt(
'book_confirm_delete'));
 
  429        include_once 
'Modules/BookingManager/classes/class.ilBookingSchedule.php';
 
  431        $conf->addItem(
'schedule_id', (
int) 
$_GET[
'schedule_id'], 
$type->getTitle());
 
  432        $conf->setConfirm(
$lng->txt(
'delete'), 
'delete');
 
  433        $conf->setCancel(
$lng->txt(
'cancel'), 
'render');
 
  435        $tpl->setContent($conf->getHTML());
 
  441    public function delete()
 
  446        include_once 
'Modules/BookingManager/classes/class.ilBookingSchedule.php';
 
  451        $ilCtrl->redirect($this, 
'render');
 
An exception for terminatinating execution or to throw for unit testing.
static getList($a_pool_id, $a_title=null)
Get list of booking objects for given type.
Class ilBookingScheduleGUI.
initForm($a_mode="create", $id=null)
Build property form.
formToObject($form, $schedule)
Convert incoming form data to schedule object.
render()
Render list of booking schedules.
create()
Render creation form.
__construct($a_parent_obj)
Constructor.
executeCommand()
main switch
setDefinitionFromPost(ilPropertyFormGUI $form)
Reload definition values from post data.
confirmDelete()
Confirm delete.
save()
Create new dataset.
schedule for booking ressource
List booking schedules (for booking pool)
Confirmation screen class.
static _lookupObjId($a_id)
This class represents an option in a radio group.
This class represents a text property in a property form.
static sendSuccess($a_info="", $a_keep=false)
Send Success Message to Screen.
static sendInfo($a_info="", $a_keep=false)
Send Info Message to Screen.
if(!array_key_exists('StateId', $_REQUEST)) $id
if(empty($password)) $table
if(isset($_POST['submit'])) $form