20 $this->ref_id = $a_parent_obj->ref_id;
30 $next_class = $ilCtrl->getNextClass($this);
35 $cmd = $ilCtrl->getCmd(
"render");
51 include_once
'Modules/BookingManager/classes/class.ilBookingSchedulesTableGUI.php';
54 if ($ilAccess->checkAccess(
'write',
'', $this->ref_id))
57 if(
sizeof($table->getData()))
59 include_once
"Modules/BookingManager/classes/class.ilBookingObject.php";
66 include_once
'Services/UIComponent/Toolbar/classes/class.ilToolbarGUI.php';
68 $bar->
addButton($lng->txt(
'book_add_schedule'), $ilCtrl->getLinkTarget($this,
'create'));
69 $bar = $bar->getHTML();
72 $tpl->setContent($bar.$table->getHTML());
82 $ilTabs->clearTargets();
83 $ilTabs->setBackTarget($lng->txt(
'book_back_to_list'), $ilCtrl->getLinkTarget($this,
'render'));
84 $ilHelp->setScreenIdComponent(
"book");
85 $ilHelp->setScreenId(
"schedules");
86 $ilHelp->setSubScreenId(
"create");
89 $tpl->setContent($form->getHTML());
99 $ilTabs->clearTargets();
100 $ilTabs->setBackTarget($lng->txt(
'book_back_to_list'), $ilCtrl->getLinkTarget($this,
'render'));
101 $ilHelp->setScreenIdComponent(
"book");
102 $ilHelp->setScreenId(
"schedules");
103 $ilHelp->setSubScreenId(
"edit");
106 $tpl->setContent($form->getHTML());
119 $lng->loadLanguageModule(
"dateplaner");
121 include_once(
"Services/Form/classes/class.ilPropertyFormGUI.php");
128 $title->setMaxLength(120);
129 $form_gui->addItem($title);
173 include_once
"Modules/BookingManager/classes/class.ilScheduleInputGUI.php";
175 $definition->
setInfo($lng->txt(
"book_schedule_days_info"));
176 $definition->setRequired(
true);
177 $form_gui->addItem($definition);
180 $deadline->
setInfo($lng->txt(
"book_deadline_info"));
181 $deadline->setSuffix($lng->txt(
"book_hours"));
182 $deadline->setMinValue(0);
183 $deadline->setSize(3);
184 $deadline->setMaxLength(3);
185 $form_gui->addItem($deadline);
187 if ($a_mode ==
"edit")
189 include_once
'Modules/BookingManager/classes/class.ilBookingSchedule.php';
194 $av->setTitle($lng->txt(
"obj_activation_list_gui"));
195 $form_gui->addItem($av);
198 $lng->loadLanguageModule(
'rep');
201 $from->
enableDateActivation(
"",
"from_tgl", $schedule ? is_object($schedule->getAvailabilityFrom()) :
false);
202 $from->setShowTime(
true);
203 $form_gui->addItem($from);
206 $to->
enableDateActivation(
"",
"to_tgl", $schedule ? is_object($schedule->getAvailabilityTo()) :
false);
207 $to->setShowTime(
true);
208 $form_gui->addItem($to);
210 if ($a_mode ==
"edit")
212 $form_gui->setTitle($lng->txt(
"book_edit_schedule"));
215 $item->setValue($id);
216 $form_gui->addItem($item);
218 include_once
'Modules/BookingManager/classes/class.ilBookingSchedule.php';
220 $title->setValue($schedule->getTitle());
221 $deadline->setValue($schedule->getDeadline());
222 $from->setDate($schedule->getAvailabilityFrom());
223 $to->setDate($schedule->getAvailabilityTo());
240 $definition->setValue($schedule->getDefinitionBySlots());
242 $form_gui->addCommandButton(
"update", $lng->txt(
"save"));
246 $form_gui->setTitle($lng->txt(
"book_add_schedule"));
247 $form_gui->addCommandButton(
"save", $lng->txt(
"save"));
248 $form_gui->addCommandButton(
"render", $lng->txt(
"cancel"));
250 $form_gui->setFormAction($ilCtrl->getFormAction($this));
263 if($form->checkInput())
265 include_once
'Modules/BookingManager/classes/class.ilBookingSchedule.php';
275 $form->setValuesByPost();
277 $tpl->setContent($form->getHTML());
289 if($form->checkInput())
291 include_once
'Modules/BookingManager/classes/class.ilBookingSchedule.php';
301 $form->setValuesByPost();
303 $tpl->setContent($form->getHTML());
318 foreach($days_group->getOptions() as $option)
320 $days_fields[$option->getValue()] = $option;
323 foreach($days as $day)
325 $slot = $form->
getInput($day.
"_slot");
326 $subs = $days_fields[$day]->getSubItems();
329 $subs[0]->setValue($slot[0]);
333 $subs[1]->setValue($slot[1]);
346 global $ilObjDataCache;
348 $schedule->setTitle($form->getInput(
"title"));
349 $schedule->setPoolId($ilObjDataCache->lookupObjId($this->ref_id));
350 $schedule->setDeadline($form->getInput(
"deadline"));
352 $from = $form->getItemByPostVar(
"from");
353 $from_tgl = $from->getActivationPostVar();
354 $schedule->setAvailabilityFrom(
$_POST[$from_tgl] ? $from->getDate(): null);
356 $to = $form->getItemByPostVar(
"to");
357 $to_tgl = $to->getActivationPostVar();
358 $schedule->setAvailabilityTo(
$_POST[$to_tgl] ? $to->getDate(): null);
387 $ilHelp->setSubScreenId(
"delete");
390 include_once
'Services/Utilities/classes/class.ilConfirmationGUI.php';
392 $conf->setFormAction($ilCtrl->getFormAction($this));
393 $conf->setHeaderText($lng->txt(
'book_confirm_delete'));
395 include_once
'Modules/BookingManager/classes/class.ilBookingSchedule.php';
397 $conf->addItem(
'schedule_id', (
int)$_GET[
'schedule_id'], $type->getTitle());
398 $conf->setConfirm($lng->txt(
'delete'),
'delete');
399 $conf->setCancel($lng->txt(
'cancel'),
'render');
401 $tpl->setContent($conf->getHTML());
411 include_once
'Modules/BookingManager/classes/class.ilBookingSchedule.php';
416 $ilCtrl->redirect($this,
'render');
static sendSuccess($a_info="", $a_keep=false)
Send Success Message to Screen.
static getList($a_pool_id, $a_title=null)
Get list of booking objects for given type.
__construct($a_parent_obj)
Constructor.
schedule for booking ressource
List booking schedules (for booking pool)
static sendInfo($a_info="", $a_keep=false)
Send Info Message to Screen.
static _lookupObjId($a_id)
This class represents a text property in a property form.
initForm($a_mode="create", $id=NULL)
Build property form.
create()
Render creation form.
save()
Create new dataset.
executeCommand()
main switch
formToObject($form, $schedule)
Convert incoming form data to schedule object.
Class ilBookingScheduleGUI.
render()
Render list of booking schedules.
setDefinitionFromPost(ilPropertyFormGUI $form)
Reload definition values from post data.
confirmDelete()
Confirm delete.
Confirmation screen class.