ILIAS  Release_4_2_x_branch Revision 61807
 All Data Structures Namespaces Files Functions Variables Groups Pages
ilObjSessionGUI Class Reference
+ Inheritance diagram for ilObjSessionGUI:
+ Collaboration diagram for ilObjSessionGUI:

Public Member Functions

 __construct ($a_data, $a_id, $a_call_by_reference, $a_prepare_output=true)
 Constructor.
 executeCommand ()
 execute command
 registerObject ()
 register to session
 joinObject ()
 Called from info screen.
 unregisterObject ()
 unregister from session
 addToDeskObject ()
 removeFromDeskObject ()
 infoScreenObject ()
 this one is called from the info button in the repository not very nice to set cmdClass/Cmd manually, if everything works through ilCtrl in the future this may be changed
 modifyItemGUI ($a_item_list_gui, $a_item_data, $a_show_path)
 Modify Item ListGUI for presentation in container.
 infoScreen ()
 info screen
 sendFileObject ()
 send file
 saveAndAssignMaterialsObject ()
 Save and assign sessoin materials.
 saveObject ($a_redirect_on_success=true)
 save object
 handleFileUpload ()
 editObject ()
 edit object
 updateObject ()
 update object
 confirmDeleteFilesObject ()
 confirm delete files
 deleteFilesObject ()
 delete files
 materialsObject ()
 show material assignment
 saveMaterialsObject ()
 save material assignment
 setShowHidePrefs ()
 set preferences (show/hide tabel content)
 updateMembersObject ()
 update participants
 attendanceListObject ()
 show attendance list selection
 printViewMembersObject ()
 print view
 eventsListObject ()
 list sessions of all user
 addLocatorItems ()
 Add session locator.
 getTabs ($tabs_gui)
 Build tabs.
- Public Member Functions inherited from ilObjectGUI
 ilObjectGUI ($a_data, $a_id=0, $a_call_by_reference=true, $a_prepare_output=true)
 Constructor public.
 withReferences ()
 determines wether objects are referenced or not (got ref ids or not)
 setCreationMode ($a_mode=true)
 if true, a creation screen is displayed the current $_GET[ref_id] don't belong to the current class! the mode is determined in ilrepositorygui
 getCreationMode ()
 get creation mode
 getAdminTabs (&$tabs_gui)
 administration tabs show only permissions and trash folder
 getHTML ()
 undeleteObject ()
 Get objects back from trash.
 confirmedDeleteObject ()
 confirmed deletion of object -> objects are moved to trash or deleted immediately, if trash is disabled
 cancelDeleteObject ()
 cancel deletion of object
 removeFromSystemObject ()
 remove objects from trash bin and all entries therefore every object needs a specific deleteObject() method
 cancelObject ($in_rep=false)
 cancel action and go back to previous page public
 createObject ()
 create new object form
 cancelCreation ()
 cancel create action and go back to repository parent
 saveObject ()
 save object
 getFormAction ($a_cmd, $a_formaction="")
 get form action for command (command is method name without "Object", e.g.
 isVisible ($a_ref_id, $a_type)
 viewObject ()
 list childs of current object
 deleteObject ($a_error=false)
 Display deletion confirmation screen.
 trashObject ()
 Show trash content of object.
 getTemplateFile ($a_cmd, $a_type="")
 get a template blockfile format: tpl.
 cloneAllObject ()
 Clone single (not container object) Method is overwritten in ilContainerGUI.
 copyWizardHasOptions ($a_mode)
 Check if there is any modules specific option.

Static Public Member Functions

static _goto ($a_target)
 goto

Data Fields

 $lng
 $ctrl
 $tpl
- Data Fields inherited from ilObjectGUI
const COPY_WIZARD_NEEDS_PAGE = 1
 $ilias
 $objDefinition
 $tpl
 $tree
 $lng
 $data
 $object
 $ref_id
 $obj_id
 $maxcount
 $formaction
 $return_location
 $target_frame
 $tab_target_script
 $actions
 $sub_objects
 $omit_locator = false
const CFORM_NEW = 1
const CFORM_IMPORT = 2
const CFORM_CLONE = 3

Protected Member Functions

 prepareOutput ()
 initCreateForm ($a_new_type)
 Init object creation form.
 createRecurringSessions ()
 create recurring sessions
 membersObject ()
 Show participants table.
 initAttendanceForm ()
 show attendance list selection form
 printAttendanceListObject ()
 print attendance list
 initForm ($a_mode)
 Init Form.
 load ()
 load settings
 loadRecurrenceSettings ()
 load recurrence settings
 __toUnix ($date, $time)
 protected
 formatPath ($a_ref_id)
 format path
- Protected Member Functions inherited from ilObjectGUI
 assignObject ()
 setTitleAndDescription ()
 called by prepare output
 initHeaderAction ($a_sub_type=null, $a_sub_id=null)
 Add header action menu.
 insertHeaderAction ($a_list_gui)
 Insert header action into main template.
 addHeaderAction ()
 Add header action menu.
 redrawHeaderActionObject ()
 Ajax call: redraw action header only.
 showUpperIcon ()
 setTabs ()
 set admin tabs public
 setAdminTabs ()
 set admin tabs public
 setLocator ()
 set Locator
 omitLocator ($a_omit=true)
 addAdminLocatorItems ()
 should be overwritten to add object specific items (repository items are preloaded)
 initCreationForms ($a_new_type)
 Init creation froms.
 getCreationFormsHTML (array $a_forms)
 Get HTML for creation forms (accordion)
 initDidacticTemplate (ilPropertyFormGUI $form)
 Show didactic template types.
 addDidacticTemplateOptions (array &$a_options)
 Add custom templates.
 getDidacticTemplateVar ($a_type)
 Get didactic template setting from creation screen.
 putObjectInTree (ilObject $a_obj, $a_parent_node_id=null)
 Add object to tree at given position.
 afterSave (ilObject $a_new_object)
 Post (successful) object creation hook.
 initEditForm ()
 Init object edit form.
 initEditCustomForm (ilPropertyFormGUI $a_form)
 Add custom fields to update form.
 getEditFormValues ()
 Get values for edit form.
 getEditFormCustomValues (array &$a_values)
 Add values to custom edit fields.
 updateCustom (ilPropertyFormGUI $a_form)
 Insert custom update form values into object.
 afterUpdate ()
 Post (successful) object update hook.
 initImportForm ($a_new_type)
 Init object import form.
 importFileObject ($parent_id=null)
 Import.
 afterImport (ilObject $a_new_object)
 Post (successful) object import hook.
 setFormAction ($a_cmd, $a_formaction)
 set specific form action for command
 getReturnLocation ($a_cmd, $a_location="")
 get return location for command (command is method name without "Object", e.g.
 setReturnLocation ($a_cmd, $a_location)
 set specific return location for command
 getTargetFrame ($a_cmd, $a_target_frame="")
 get target frame for command (command is method name without "Object", e.g.
 setTargetFrame ($a_cmd, $a_target_frame)
 set specific target frame for command
 showPossibleSubObjects ()
 show possible subobjects (pulldown menu)
 getTitlesByRefId ($a_ref_ids)
 get Titles of objects this method is used for error messages in methods cut/copy/paste
 getTabs (&$tabs_gui)
 get tabs abstract method.
 __showButton ($a_cmd, $a_text, $a_target= '')
 hitsperpageObject ()
__initTableGUI ()
 __setTableGUIBasicData (&$tbl, &$result_set, $a_from="")
 standard implementation for tables use 'from' variable use different initial setting of table
 __showClipboardTable ($a_result_set, $a_from="")
 redirectToRefId ($a_ref_id, $a_cmd="")
 redirects to (repository) view per ref id usually to a container and usually used at the end of a save/import method where the object gui type (of the new object) doesn't match with the type of the current $_GET["ref_id"] value
 fillCloneTemplate ($a_tpl_varname, $a_type)
 Fill object clone template This method can be called from any object GUI class that wants to offer object cloning.
 getCenterColumnHTML ()
 Get center column.
 getRightColumnHTML ()
 Display right column.
 setColumnSettings ($column_gui)
 May be overwritten in subclasses.
 checkPermission ($a_perm, $a_cmd="", $a_type="", $a_ref_id=null)
 Check permission and redirect on error.
 checkPermissionBool ($a_perm, $a_cmd="", $a_type="", $a_ref_id=null)
 Check permission.

Protected Attributes

 $course_ref_id = 0
 $course_obj_id = 0
 $files = array()

Detailed Description

Constructor & Destructor Documentation

ilObjSessionGUI::__construct (   $a_data,
  $a_id,
  $a_call_by_reference,
  $a_prepare_output = true 
)

Constructor.

public

Parameters
@return

Definition at line 39 of file class.ilObjSessionGUI.php.

References $ilCtrl, $lng, and $tpl.

{
global $ilCtrl, $lng, $tpl;
$this->type = "sess";
parent::__construct($a_data,$a_id,$a_call_by_reference,$a_prepare_output);
$this->lng = $lng;
$this->lng->loadLanguageModule("event");
$this->lng->loadLanguageModule('crs');
$this->lng->loadLanguageModule('trac');
$this->tpl = $tpl;
$this->ctrl = $ilCtrl;
}

Member Function Documentation

ilObjSessionGUI::__toUnix (   $date,
  $time 
)
protected

protected

Parameters
@return

Definition at line 1880 of file class.ilObjSessionGUI.php.

Referenced by load().

{
return mktime($time['h'],$time['m'],0,$date['m'],$date['d'],$date['y']);
}

+ Here is the caller graph for this function:

static ilObjSessionGUI::_goto (   $a_target)
static

goto

public

Parameters
@return

Definition at line 227 of file class.ilObjSessionGUI.php.

References $_GET, $ilErr, $lng, and exit.

{
global $ilAccess,$ilErr,$lng;
if($ilAccess->checkAccess('visible', "", $a_target))
{
$_GET["cmd"] = "infoScreen";
$_GET["ref_id"] = $a_target;
include("repository.php");
}
$ilErr->raiseError($lng->txt("msg_no_perm_read"), $ilErr->FATAL);
}
ilObjSessionGUI::addLocatorItems ( )

Add session locator.

public

Reimplemented from ilObjectGUI.

Definition at line 1918 of file class.ilObjSessionGUI.php.

References $_GET.

{
global $ilLocator;
if (is_object($this->object))
{
$ilLocator->addItem($this->object->getTitle(), $this->ctrl->getLinkTarget($this, "infoScreen"), "", $_GET["ref_id"]);
}
}
ilObjSessionGUI::addToDeskObject ( )
See Also
ilDesktopItemHandling::addToDesk()

Implements ilDesktopItemHandling.

Definition at line 244 of file class.ilObjSessionGUI.php.

References ilDesktopItemGUI\addToDesktop(), and infoScreenObject().

{
include_once './Services/PersonalDesktop/classes/class.ilDesktopItemGUI.php';
$this->infoScreenObject();
}

+ Here is the call graph for this function:

ilObjSessionGUI::attendanceListObject ( )

show attendance list selection

public

Returns

Definition at line 1112 of file class.ilObjSessionGUI.php.

References $tpl, ilObjectGUI\checkPermission(), and initAttendanceForm().

{
global $tpl,$ilTabs;
$this->checkPermission('write');
$ilTabs->setTabActive('event_edit_members');
$tpl->setContent($this->form->getHTML());
}

+ Here is the call graph for this function:

ilObjSessionGUI::confirmDeleteFilesObject ( )

confirm delete files

public

Parameters
@return

Definition at line 726 of file class.ilObjSessionGUI.php.

References $_POST, $file, editObject(), and ilUtil\sendFailure().

{
$this->tabs_gui->setTabActive('edit_properties');
if(!count($_POST['file_id']))
{
ilUtil::sendFailure($this->lng->txt('select_one'));
$this->editObject();
return false;
}
include_once("Services/Utilities/classes/class.ilConfirmationGUI.php");
$c_gui = new ilConfirmationGUI();
// set confirm/cancel commands
$c_gui->setFormAction($this->ctrl->getFormAction($this, "deleteFiles"));
$c_gui->setHeaderText($this->lng->txt("info_delete_sure"));
$c_gui->setCancel($this->lng->txt("cancel"), "edit");
$c_gui->setConfirm($this->lng->txt("confirm"), "deleteFiles");
// add items to delete
foreach($_POST["file_id"] as $file_id)
{
$file = new ilSessionFile($file_id);
if($file->getSessionId() != $this->object->getEventId())
{
ilUtil::sendFailure($this->lng->txt('select_one'));
$this->edit();
return false;
}
$c_gui->addItem("file_id[]", $file_id, $file->getFileName());
}
$this->tpl->setContent($c_gui->getHTML());
return true;
}

+ Here is the call graph for this function:

ilObjSessionGUI::createRecurringSessions ( )
protected

create recurring sessions

protected

Parameters
@return

Definition at line 588 of file class.ilObjSessionGUI.php.

References ilObjectGUI\$tree, ilCalendarRecurrenceCalculator\calculateDateList(), ilEventItems\getItems(), IL_CAL_UNIX, IL_CAL_YEAR, and ilEventItems\setItems().

Referenced by saveObject().

{
global $tree;
if(!$this->rec->getFrequenceType())
{
return true;
}
include_once('./Services/Calendar/classes/class.ilCalendarRecurrenceCalculator.php');
$calc = new ilCalendarRecurrenceCalculator($this->object->getFirstAppointment(),$this->rec);
$period_start = clone $this->object->getFirstAppointment()->getStart();
$period_end = clone $this->object->getFirstAppointment()->getStart();
$period_end->increment(IL_CAL_YEAR,5);
$date_list = $calc->calculateDateList($period_start,$period_end);
$period_diff = $this->object->getFirstAppointment()->getEnd()->get(IL_CAL_UNIX) -
$this->object->getFirstAppointment()->getStart()->get(IL_CAL_UNIX);
$parent_id = $tree->getParentId($this->object->getRefId());
include_once './Modules/Session/classes/class.ilEventItems.php';
$evi = new ilEventItems($this->object->getId());
$eitems = $evi->getItems();
$counter = 0;
foreach($date_list->get() as $date)
{
if(!$counter++)
{
continue;
}
$new_obj = $this->object->cloneObject($parent_id);
$new_obj->read();
$new_obj->getFirstAppointment()->setStartingTime($date->get(IL_CAL_UNIX));
$new_obj->getFirstAppointment()->setEndingTime($date->get(IL_CAL_UNIX) + $period_diff);
$new_obj->getFirstAppointment()->update();
$new_obj->update();
$new_evi = new ilEventItems($new_obj->getId());
$new_evi->setItems($eitems);
$new_evi->update();
}
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilObjSessionGUI::deleteFilesObject ( )

delete files

public

Parameters
@return

Definition at line 770 of file class.ilObjSessionGUI.php.

References $_POST, $file, editObject(), and ilUtil\sendFailure().

{
if(!count($_POST['file_id']))
{
ilUtil::sendFailure($this->lng->txt('select_one'));
$this->editObject();
return false;
}
foreach($_POST['file_id'] as $id)
{
$file = new ilSessionFile($id);
$file->delete();
}
$this->object->initFiles();
$this->editObject();
return true;
}

+ Here is the call graph for this function:

ilObjSessionGUI::editObject ( )

edit object

protected

Parameters
@return

Reimplemented from ilObjectGUI.

Definition at line 643 of file class.ilObjSessionGUI.php.

References $file, and initForm().

Referenced by confirmDeleteFilesObject(), deleteFilesObject(), and updateObject().

{
$this->tabs_gui->setTabActive('edit_properties');
$this->initForm('edit');
$this->tpl->addBlockFile('ADM_CONTENT','adm_content','tpl.sess_edit.html','Modules/Session');
$this->tpl->setVariable('EVENT_EDIT_TABLE',$this->form->getHTML());
if(!count($this->object->getFiles()))
{
return true;
}
$rows = array();
foreach($this->object->getFiles() as $file)
{
$table_data['id'] = $file->getFileId();
$table_data['filename'] = $file->getFileName();
$table_data['filetype'] = $file->getFileType();
$table_data['filesize'] = $file->getFileSize();
$rows[] = $table_data;
}
include_once("./Modules/Session/classes/class.ilSessionFileTableGUI.php");
$table_gui = new ilSessionFileTableGUI($this, "edit");
$table_gui->setTitle($this->lng->txt("event_files"));
$table_gui->setData($rows);
$table_gui->addCommandButton("cancel", $this->lng->txt("cancel"));
$table_gui->addMultiCommand("confirmDeleteFiles", $this->lng->txt("delete"));
$table_gui->setSelectAllCheckbox("file_id");
$this->tpl->setVariable('EVENT_FILE_TABLE',$table_gui->getHTML());
return true;
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilObjSessionGUI::eventsListObject ( )

list sessions of all user

public

Parameters
@return

Definition at line 1399 of file class.ilObjSessionGUI.php.

References $_GET, $_SESSION, $course_ref_id, $ilErr, ilObjectGUI\$tree, ilObjectGUI\__showButton(), ilCourseParticipants\_getInstanceByObjId(), ilObjUser\_lookupLogin(), ilObjUser\_lookupName(), ilUtil\_sortIds(), ilUtil\getImagePath(), ilObjectFactory\getInstanceByRefId(), and ilUtil\switchColor().

{
global $ilErr,$ilAccess, $ilUser,$tree;
if(!$ilAccess->checkAccess('write','',$this->object->getRefId()))
{
$ilErr->raiseError($this->lng->txt('msg_no_perm_read'),$ilErr->MESSAGE);
}
$this->tpl->addBlockFile('ADM_CONTENT','adm_content','tpl.sess_list.html','Modules/Session');
$this->__showButton($this->ctrl->getLinkTarget($this,'exportCSV'),$this->lng->txt('event_csv_export'));
include_once 'Modules/Course/classes/class.ilCourseParticipants.php';
include_once 'Modules/Session/classes/class.ilEventParticipants.php';
$this->tpl->addBlockfile("EVENTS_TABLE","events_table", "tpl.table.html");
$this->tpl->addBlockfile('TBL_CONTENT','tbl_content','tpl.sess_list_row.html','Modules/Session');
$members_obj = ilCourseParticipants::_getInstanceByObjId($this->object->getId());
$members = $members_obj->getParticipants();
$members = ilUtil::_sortIds($members,'usr_data','lastname','usr_id');
// Table
$tbl = new ilTableGUI();
$tbl->setTitle($this->lng->txt("event_overview"),
'icon_usr.gif',
$this->lng->txt('obj_usr'));
$this->ctrl->setParameter($this,'offset',(int) $_GET['offset']);
$course_ref_id = $tree->checkForParentType($this->object->getRefId(),'crs');
$events = array();
foreach($tree->getSubtree($tree->getNodeData($course_ref_id),false,'sess') as $event_id)
{
$tmp_event = ilObjectFactory::getInstanceByRefId($event_id,false);
if(!is_object($tmp_event) or $tmp_event->getType() != 'sess')
{
continue;
}
$events[] = $tmp_event;
}
$headerNames = array();
$headerVars = array();
$colWidth = array();
$headerNames[] = $this->lng->txt('name');
$headerVars[] = "name";
$colWidth[] = '20%';
for ($i = 1; $i <= count($events); $i++)
{
$headerNames[] = $i;
$headerVars[] = "event_".$i;
$colWidth[] = 80/count($events)."%";
}
$this->tpl->setVariable("FORMACTION",$this->ctrl->getFormAction($this));
$tbl->setHeaderNames($headerNames);
$tbl->setHeaderVars($headerVars, $this->ctrl->getParameterArray($this,'eventsList'));
$tbl->setColumnWidth($colWidth);
$tbl->setOrderColumn($_GET["sort_by"]);
$tbl->setOrderDirection($_GET["sort_order"]);
$tbl->setOffset($_GET["offset"]);
$tbl->setLimit($ilUser->getPref("hits_per_page"));
$tbl->setMaxCount(count($members));
$tbl->setFooter("tblfooter",$this->lng->txt("previous"),$this->lng->txt("next"));
$sliced_users = array_slice($members,$_GET['offset'],$_SESSION['tbl_limit']);
$tbl->disable('sort');
$tbl->render();
$counter = 0;
foreach($sliced_users as $user_id)
{
foreach($events as $event_obj)
{
$this->tpl->setCurrentBlock("eventcols");
$event_part = new ilEventParticipants($this->object->getId());
{
$this->tpl->setVariable("IMAGE_PARTICIPATED", $event_part->hasParticipated($user_id) ?
ilUtil::getImagePath('icon_ok.gif') :
ilUtil::getImagePath('icon_not_ok.gif'));
$this->tpl->setVariable("PARTICIPATED", $event_part->hasParticipated($user_id) ?
$this->lng->txt('event_participated') :
$this->lng->txt('event_not_participated'));
}
$this->tpl->parseCurrentBlock();
}
$this->tpl->setCurrentBlock("tbl_content");
$name = ilObjUser::_lookupName($user_id);
$this->tpl->setVariable("CSS_ROW",ilUtil::switchColor($counter++,'tblrow1','tblrow2'));
$this->tpl->setVariable("LASTNAME",$name['lastname']);
$this->tpl->setVariable("FIRSTNAME",$name['firstname']);
$this->tpl->setVariable("LOGIN",ilObjUser::_lookupLogin($user_id));
$this->tpl->parseCurrentBlock();
}
$this->tpl->setVariable("HEAD_TXT_LEGEND", $this->lng->txt("legend"));
$this->tpl->setVariable("HEAD_TXT_DIGIT", $this->lng->txt("event_digit"));
$this->tpl->setVariable("HEAD_TXT_EVENT", $this->lng->txt("event"));
$this->tpl->setVariable("HEAD_TXT_LOCATION", $this->lng->txt("event_location"));
$this->tpl->setVariable("HEAD_TXT_DATE_TIME",$this->lng->txt("event_date_time"));
$i = 1;
foreach($events as $event_obj)
{
$this->tpl->setCurrentBlock("legend_loop");
$this->tpl->setVariable("LEGEND_CSS_ROW",ilUtil::switchColor($counter++,'tblrow1','tblrow2'));
$this->tpl->setVariable("LEGEND_DIGIT", $i++);
$this->tpl->setVariable("LEGEND_EVENT_TITLE", $event_obj->getTitle());
$this->tpl->setVariable("LEGEND_EVENT_DESCRIPTION", $event_obj->getDescription());
$this->tpl->setVariable("LEGEND_EVENT_LOCATION", $event_obj->getLocation());
$this->tpl->setVariable("LEGEND_EVENT_APPOINTMENT", $event_obj->getFirstAppointment()->appointmentToString());
$this->tpl->parseCurrentBlock();
}
}

+ Here is the call graph for this function:

ilObjSessionGUI::executeCommand ( )

execute command

public

Returns

Reimplemented from ilObjectGUI.

Definition at line 62 of file class.ilObjSessionGUI.php.

References $_REQUEST, $cmd, $ilCtrl, $ret, ilObjectGUI\addHeaderAction(), ilObjectGUI\checkPermission(), ilCommonActionDispatcherGUI\getInstanceFromAjaxCall(), infoScreen(), and prepareOutput().

{
global $ilUser,$ilCtrl;
$next_class = $this->ctrl->getNextClass($this);
$cmd = $this->ctrl->getCmd();
$this->prepareOutput();
switch($next_class)
{
case "ilinfoscreengui":
$this->checkPermission("visible");
$this->infoScreen(); // forwards command
break;
case 'ilpermissiongui':
$this->tabs_gui->setTabActive('perm_settings');
include_once("Services/AccessControl/classes/class.ilPermissionGUI.php");
$perm_gui = new ilPermissionGUI($this);
$ret = $this->ctrl->forwardCommand($perm_gui);
break;
case 'ilcourseitemadministrationgui':
include_once 'Modules/Course/classes/class.ilCourseItemAdministrationGUI.php';
$this->tabs_gui->clearSubTabs();
$this->ctrl->setReturn($this,'info');
$item_adm_gui = new ilCourseItemAdministrationGUI($this->object,(int) $_REQUEST['item_id']);
$this->ctrl->forwardCommand($item_adm_gui);
break;
case 'ilobjectcopygui':
include_once './Services/Object/classes/class.ilObjectCopyGUI.php';
$cp = new ilObjectCopyGUI($this);
$cp->setType('sess');
$this->ctrl->forwardCommand($cp);
break;
case "ilexportgui":
// $this->prepareOutput();
$this->tabs_gui->setTabActive("export");
include_once("./Services/Export/classes/class.ilExportGUI.php");
$exp_gui = new ilExportGUI($this);
$exp_gui->addFormat("xml");
$ret = $this->ctrl->forwardCommand($exp_gui);
// $this->tpl->show();
break;
case "ilcommonactiondispatchergui":
include_once("Services/Object/classes/class.ilCommonActionDispatcherGUI.php");
$this->ctrl->forwardCommand($gui);
break;
default:
if(!$cmd)
{
$cmd = "infoScreen";
}
$cmd .= "Object";
if ($cmd != "infoScreenObject")
{
$this->checkPermission("read");
}
else
{
$this->checkPermission("visible");
}
$this->$cmd();
break;
}
$this->addHeaderAction();
return true;
}

+ Here is the call graph for this function:

ilObjSessionGUI::formatPath (   $a_ref_id)
protected

format path

protected

Parameters
intref_id

Definition at line 1891 of file class.ilObjSessionGUI.php.

References $path, and ilObjectGUI\$tree.

Referenced by materialsObject().

{
global $tree;
$path = $this->lng->txt('path') . ': ';
$first = true;
foreach($tree->getPathFull($a_ref_id,$this->course_ref_id) as $node)
{
if($node['ref_id'] != $a_ref_id)
{
if(!$first)
{
$path .= ' -> ';
}
$first = false;
$path .= $node['title'];
}
}
return $path;
}

+ Here is the caller graph for this function:

ilObjSessionGUI::getTabs (   $tabs_gui)

Build tabs.

public

Definition at line 1934 of file class.ilObjSessionGUI.php.

References ilObjectGUI\$tree.

{
global $ilAccess,$ilTabs,$tree;
$parent_id = $tree->getParentId($this->object->getRefId());
$tabs_gui->setBackTarget($this->lng->txt('back_to_crs_content'),'repository.php?ref_id='.$parent_id);
$tabs_gui->addTarget('info_short',
$this->ctrl->getLinkTarget($this,'infoScreen'));
if($ilAccess->checkAccess('write','',$this->object->getRefId()))
{
$tabs_gui->addTarget('edit_properties',
$this->ctrl->getLinkTarget($this,'edit'));
$tabs_gui->addTarget('crs_materials',
$this->ctrl->getLinkTarget($this,'materials'));
$tabs_gui->addTarget('event_edit_members',
$this->ctrl->getLinkTarget($this,'members'));
}
// export
if ($ilAccess->checkAccess("write", "", $this->object->getRefId()))
{
$ilTabs->addTarget("export",
$this->ctrl->getLinkTargetByClass("ilexportgui", ""), "", "ilexportgui");
}
// edit permissions
if ($ilAccess->checkAccess('edit_permission', "", $this->object->getRefId()))
{
$tabs_gui->addTarget("perm_settings",
$this->ctrl->getLinkTargetByClass("ilpermissiongui", "perm"), array("perm","info","owner"), 'ilpermissiongui');
}
}
ilObjSessionGUI::handleFileUpload ( )

Definition at line 532 of file class.ilObjSessionGUI.php.

References $file, ilObjectGUI\$tree, ilEventItems\getItems(), ilEventItems\setItems(), and ilUtil\stripSlashes().

Referenced by saveObject(), and updateObject().

{
global $tree;
include_once './Modules/Session/classes/class.ilEventItems.php';
$ev = new ilEventItems($this->object->getId());
$items = $ev->getItems();
$counter = 0;
while(true)
{
if(!isset($_FILES['files']['name'][$counter]))
{
break;
}
if(!strlen($_FILES['files']['name'][$counter]))
{
$counter++;
continue;
}
include_once './Modules/File/classes/class.ilObjFile.php';
$file = new ilObjFile();
$file->setTitle(ilUtil::stripSlashes($_FILES['files']['name'][$counter]));
$file->setDescription('');
$file->setFileName(ilUtil::stripSlashes($_FILES['files']['name'][$counter]));
$file->setFileType($_FILES['files']['type'][$counter]);
$file->setFileSize($_FILES['files']['size'][$counter]);
$file->create();
$new_ref_id = $file->createReference();
$file->putInTree($tree->getParentId($this->object->getRefId()));
$file->setPermissions($tree->getParentId($this->object->getRefId()));
$file->createDirectory();
$file->getUploadFile(
$_FILES['files']['tmp_name'][$counter],
$_FILES['files']['name'][$counter]
);
$items[] = $new_ref_id;
$counter++;
}
$ev->setItems($items);
$ev->update();
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilObjSessionGUI::infoScreen ( )

info screen

protected

Parameters
@return

Definition at line 306 of file class.ilObjSessionGUI.php.

References $_SESSION, $ilCtrl, $location, ilObjectGUI\$obj_id, ilObjectGUI\$tree, ilContainerSorting\_getInstance(), ilCourseItems\_getItem(), ilEventParticipants\_isRegistered(), ilObject\_lookupDescription(), ilObject\_lookupObjId(), ilObject\_lookupTitle(), ilObject\_lookupType(), ilChangeEvent\_recordReadEvent(), ilObjectGUI\checkPermission(), ilSessionObjectListGUIFactory\factory(), modifyItemGUI(), and ilUtil\sendInfo().

Referenced by executeCommand(), and infoScreenObject().

{
global $ilAccess, $ilUser,$ilCtrl,$tree,$ilToolbar;
$this->checkPermission('visible');
$this->tabs_gui->setTabActive('info_short');
$appointment_obj = $this->object->getFirstAppointment();
include_once("./Services/InfoScreen/classes/class.ilInfoScreenGUI.php");
$info = new ilInfoScreenGUI($this);
if($this->object->enabledRegistration())
{
include_once './Modules/Session/classes/class.ilEventParticipants.php';
if(ilEventParticipants::_isRegistered($ilUser->getId(), $this->object->getId()))
{
$ilToolbar->addFormButton($this->lng->txt('event_unregister'),'join');
}
else
{
if(!isset($_SESSION['sess_hide_info']))
{
ilUtil::sendInfo($this->lng->txt('sess_join_info'));
}
$ilToolbar->addFormButton($this->lng->txt('join_session'),'join');
}
$ilToolbar->setFormAction($this->ctrl->getFormAction($this));
}
// Session information
if(strlen($this->object->getLocation()) or strlen($this->object->getDetails()))
{
$info->addSection($this->lng->txt('event_section_information'));
}
if(strlen($location = $this->object->getLocation()))
{
$info->addProperty($this->lng->txt('event_location'),
nl2br($this->object->getLocation()));
}
if(strlen($this->object->getDetails()))
{
$info->addProperty($this->lng->txt('event_details_workflow'),
nl2br($this->object->getDetails()));
}
// Tutor information
if($this->object->hasTutorSettings())
{
$info->addSection($this->lng->txt('event_tutor_data'));
if(strlen($fullname = $this->object->getName()))
{
$info->addProperty($this->lng->txt('event_lecturer'),
$fullname);
}
if(strlen($email = $this->object->getEmail()))
{
$info->addProperty($this->lng->txt('tutor_email'),
$email);
}
if(strlen($phone = $this->object->getPhone()))
{
$info->addProperty($this->lng->txt('tutor_phone'),
$phone);
}
}
include_once './Modules/Session/classes/class.ilSessionObjectListGUIFactory.php';
include_once './Modules/Session/classes/class.ilEventItems.php';
include_once './Modules/Course/classes/class.ilCourseItems.php';
$html = '';
$eventItems = new ilEventItems($this->object->getId());
$parent_id = $tree->getParentId($this->object->getRefId());
$items = new ilCourseItems($parent_id);
$eventItems = $items->getItemsByEvent($this->object->getId());
include_once './Services/Container/classes/class.ilContainerSorting.php';
ilObject::_lookupObjId($parent_id))->sortSubItems(
'sess',
$this->object->getId(),
$eventItems
);
foreach($eventItems as $item)
{
$item_id = $item['ref_id'];
$list_gui->setContainerObject($this);
$this->modifyItemGUI($list_gui, ilCourseItems::_getItem($item_id),false);
$html .= $list_gui->getListItemHTML(
$item_id,
);
}
if(strlen($html))
{
$info->addSection($this->lng->txt('event_materials'));
$info->addProperty(
'&nbsp;',
$html);
}
// forward the command
$this->ctrl->forwardCommand($info);
// store read event
require_once 'Services/Tracking/classes/class.ilChangeEvent.php';
ilChangeEvent::_recordReadEvent($this->object->getType(), $this->object->getRefId(),
$this->object->getId(), $ilUser->getId());
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilObjSessionGUI::infoScreenObject ( )

this one is called from the info button in the repository not very nice to set cmdClass/Cmd manually, if everything works through ilCtrl in the future this may be changed

Definition at line 267 of file class.ilObjSessionGUI.php.

References infoScreen().

Referenced by addToDeskObject(), and removeFromDeskObject().

{
$this->ctrl->setCmd("showSummary");
$this->ctrl->setCmdClass("ilinfoscreengui");
$this->infoScreen();
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilObjSessionGUI::initAttendanceForm ( )
protected

show attendance list selection form

protected

Returns

Definition at line 1131 of file class.ilObjSessionGUI.php.

References $comment, and ilCheckboxInputGUI\setOptionTitle().

Referenced by attendanceListObject().

{
include_once('./Services/Form/classes/class.ilPropertyFormGUI.php');
$this->form = new ilPropertyFormGUI();
$this->form->setFormAction($this->ctrl->getFormAction($this));
$this->form->setTarget('_blank');
$this->form->setTitle($this->lng->txt('sess_gen_attendance_list'));
$mark = new ilCheckboxInputGUI($this->lng->txt('trac_mark'),'show_mark');
$mark->setOptionTitle($this->lng->txt('sess_gen_mark_title'));
$mark->setValue(1);
$this->form->addItem($mark);
$comment = new ilCheckboxInputGUI($this->lng->txt('trac_comment'),'show_comment');
$comment->setOptionTitle($this->lng->txt('sess_gen_comment'));
$comment->setValue(1);
$this->form->addItem($comment);
$signature = new ilCheckboxInputGUI($this->lng->txt('sess_signature'),'show_signature');
$signature->setOptionTitle($this->lng->txt('sess_gen_signature'));
$signature->setValue(1);
$this->form->addItem($signature);
$part = new ilFormSectionHeaderGUI();
$part->setTitle($this->lng->txt('event_participant_selection'));
$this->form->addItem($part);
// Admins
$admin = new ilCheckboxInputGUI($this->lng->txt('event_tbl_admins'),'show_admins');
$admin->setOptionTitle($this->lng->txt('event_inc_admins'));
$admin->setValue(1);
$this->form->addItem($admin);
// Tutors
$tutor = new ilCheckboxInputGUI($this->lng->txt('event_tbl_tutors'),'show_tutors');
$tutor->setOptionTitle($this->lng->txt('event_inc_tutors'));
$tutor->setValue(1);
$this->form->addItem($tutor);
// Members
$member = new ilCheckboxInputGUI($this->lng->txt('event_tbl_members'),'show_members');
$member->setOptionTitle($this->lng->txt('event_inc_members'));
$member->setValue(1);
$member->setChecked(true);
$this->form->addItem($member);
$this->form->addCommandButton('printAttendanceList',$this->lng->txt('sess_print_attendance_list'));
#$this->form->addCommandButton('members', $this->lng->txt('cancel'));
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilObjSessionGUI::initCreateForm (   $a_new_type)
protected

Init object creation form.

Parameters
string$a_new_type
Returns
ilPropertyFormGUI

Reimplemented from ilObjectGUI.

Definition at line 440 of file class.ilObjSessionGUI.php.

References initForm().

{
if(!is_object($this->object))
{
$this->object = new ilObjSession();
}
$this->initForm('create');
return $this->form;
}

+ Here is the call graph for this function:

ilObjSessionGUI::initForm (   $a_mode)
protected

Init Form.

protected

Definition at line 1527 of file class.ilObjSessionGUI.php.

References $files, $section, $title, ilRecurrenceInputGUI\allowUnlimitedRecurrences(), ilUtil\getImagePath(), ilYuiUtil\initDomEvent(), ilCheckboxInputGUI\setChecked(), ilDateDurationInputGUI\setStartText(), ilTextInputGUI\setValue(), and ilTextAreaInputGUI\setValue().

Referenced by editObject(), initCreateForm(), saveObject(), and updateObject().

{
global $ilUser;
if(is_object($this->form))
{
return true;
}
$this->lng->loadLanguageModule('dateplaner');
include_once("./Services/Form/classes/class.ilPropertyFormGUI.php");
include_once('./Services/YUI/classes/class.ilYuiUtil.php');
$this->form = new ilPropertyFormGUI();
$this->form->setMultipart(true);
$this->form->setTableWidth('600px');
$this->form->setFormAction($this->ctrl->getFormAction($this));
$this->form->setMultipart(true);
/*
$full = new ilCheckboxInputGUI('','fulltime');
$full->setChecked($this->object->getFirstAppointment()->enabledFulltime() ? true : false);
$full->setOptionTitle($this->lng->txt('event_fulltime_info'));
$full->setAdditionalAttributes('onchange="ilToggleSessionTime(this);"');
#$this->form->addItem($full);
*/
$this->lng->loadLanguageModule('dateplaner');
include_once './Services/Form/classes/class.ilDateDurationInputGUI.php';
#$this->tpl->addJavaScript('./Modules/Session/js/toggle_session_time.js');
$this->tpl->addJavaScript('./Services/Form/js/date_duration.js');
$dur = new ilDateDurationInputGUI($this->lng->txt('cal_fullday'),'event');
$dur->setStartText($this->lng->txt('event_start_date'));
$dur->setEndText($this->lng->txt('event_end_date'));
$dur->enableToggleFullTime(
$this->lng->txt('event_fulltime_info'),
$this->object->getFirstAppointment()->enabledFulltime() ? true : false
);
$dur->setMinuteStepSize(5);
$dur->setShowTime(true);
$dur->setShowDate(true);
$dur->setStart($this->object->getFirstAppointment()->getStart());
$dur->setEnd($this->object->getFirstAppointment()->getEnd());
$this->form->addItem($dur);
/*
// start
$start = new ilDateTimeInputGUI($this->lng->txt('event_start_date'),'start');
$start->setMinuteStepSize(5);
$start->setDate($this->object->getFirstAppointment()->getStart());
$start->setShowTime(true);
#$this->form->addItem($start);
// end
$end = new ilDateTimeInputGUI($this->lng->txt('event_end_date'),'end');
$end->setMinuteStepSize(5);
$end->setDate($this->object->getFirstAppointment()->getEnd());
$end->setShowTime(true);
#$this->form->addItem($end);
*/
// Recurrence
if($a_mode == 'create')
{
if(!is_object($this->rec))
{
include_once('./Modules/Session/classes/class.ilEventRecurrence.php');
$this->rec = new ilEventRecurrence();
}
include_once('./Services/Calendar/classes/Form/class.ilRecurrenceInputGUI.php');
$rec = new ilRecurrenceInputGUI($this->lng->txt('cal_recurrences'),'frequence');
$rec->setRecurrence($this->rec);
$this->form->addItem($rec);
}
$section->setTitle($this->lng->txt('event_section_information'));
$this->form->addItem($section);
// title
$title = new ilTextInputGUI($this->lng->txt('event_title'),'title');
$title->setValue($this->object->getTitle());
$title->setSize(50);
$title->setMaxLength(70);
$this->form->addItem($title);
// desc
$desc = new ilTextAreaInputGUI($this->lng->txt('event_desc'),'desc');
$desc->setValue($this->object->getLongDescription());
$desc->setRows(4);
$desc->setCols(50);
$this->form->addItem($desc);
// location
$desc = new ilTextAreaInputGUI($this->lng->txt('event_location'),'location');
$desc->setValue($this->object->getLocation());
$desc->setRows(4);
$desc->setCols(50);
$this->form->addItem($desc);
// workflow
$details = new ilTextAreaInputGUI($this->lng->txt('event_details_workflow'),'details');
$details->setValue($this->object->getDetails());
$details->setCols(50);
$details->setRows(4);
$this->form->addItem($details);
// section
$section->setTitle($this->lng->txt('event_tutor_data'));
$this->form->addItem($section);
// name
$tutor_name = new ilTextInputGUI($this->lng->txt('tutor_name'),'tutor_name');
$tutor_name->setValue($this->object->getName());
$tutor_name->setSize(20);
$tutor_name->setMaxLength(70);
$this->form->addItem($tutor_name);
// email
$tutor_email = new ilTextInputGUI($this->lng->txt('tutor_email'),'tutor_email');
$tutor_email->setValue($this->object->getEmail());
$tutor_email->setSize(20);
$tutor_email->setMaxLength(70);
$this->form->addItem($tutor_email);
// phone
$tutor_phone = new ilTextInputGUI($this->lng->txt('tutor_phone'),'tutor_phone');
$tutor_phone->setValue($this->object->getPhone());
$tutor_phone->setSize(20);
$tutor_phone->setMaxLength(70);
$this->form->addItem($tutor_phone);
$section->setTitle($this->lng->txt('crs_further_settings'));
$this->form->addItem($section);
// registration
$reg = new ilCheckboxInputGUI($this->lng->txt('event_registration'),'registration');
$reg->setChecked($this->object->enabledRegistration() ? true : false);
$reg->setOptionTitle($this->lng->txt('event_registration_info'));
$this->form->addItem($reg);
$section->setTitle($this->lng->txt('event_assign_files'));
$this->form->addItem($section);
$files = new ilFileWizardInputGUI($this->lng->txt('objs_file'),'files');
$files->setFilenames(array(0 => ''));
$this->form->addItem($files);
switch($a_mode)
{
case 'create':
$this->form->setTitle($this->lng->txt('event_table_create'));
$this->form->setTitleIcon(ilUtil::getImagePath('icon_event.gif'));
$this->form->addCommandButton('save',$this->lng->txt('event_btn_add'));
$this->form->addCommandButton('saveAndAssignMaterials',$this->lng->txt('event_btn_add_edit'));
$this->form->addCommandButton('cancel',$this->lng->txt('cancel'));
return true;
case 'edit':
$this->form->setTitle($this->lng->txt('event_table_update'));
$this->form->setTitleIcon(ilUtil::getImagePath('icon_event.gif'));
$this->form->addCommandButton('update',$this->lng->txt('save'));
$this->form->addCommandButton('cancel',$this->lng->txt('cancel'));
return true;
}
return true;
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilObjSessionGUI::joinObject ( )

Called from info screen.

Returns

Definition at line 179 of file class.ilObjSessionGUI.php.

References $_SESSION, ilEventParticipants\_isRegistered(), ilEventParticipants\_register(), ilEventParticipants\_unregister(), ilObjectGUI\checkPermission(), and ilUtil\sendSuccess().

{
global $ilUser;
$this->checkPermission('read');
include_once './Modules/Session/classes/class.ilEventParticipants.php';
if(ilEventParticipants::_isRegistered($ilUser->getId(),$this->object->getId()))
{
$_SESSION['sess_hide_info'] = true;
ilEventParticipants::_unregister($ilUser->getId(),$this->object->getId());
ilUtil::sendSuccess($this->lng->txt('event_unregistered'),true);
}
else
{
ilEventParticipants::_register($ilUser->getId(),$this->object->getId());
ilUtil::sendSuccess($this->lng->txt('event_registered'),true);
}
$this->ctrl->redirect($this,'infoScreen');
}

+ Here is the call graph for this function:

ilObjSessionGUI::load ( )
protected

load settings

protected

Parameters
@return

Definition at line 1715 of file class.ilObjSessionGUI.php.

References $_POST, __toUnix(), IL_CAL_DATE, IL_CAL_FKT_GETDATE, and ilUtil\stripSlashes().

Referenced by saveObject(), and updateObject().

{
global $ilUser;
$this->object->getFirstAppointment()->setStartingTime($this->__toUnix($_POST['event']['start']['date'],$_POST['event']['start']['time']));
$this->object->getFirstAppointment()->setEndingTime($this->__toUnix($_POST['event']['end']['date'],$_POST['event']['end']['time']));
$this->object->getFirstAppointment()->toggleFullTime((bool) $_POST['event']['fulltime']);
include_once('./Services/Calendar/classes/class.ilDate.php');
if($this->object->getFirstAppointment()->isFullday())
{
$start = new ilDate($_POST['event']['start']['date']['y'].'-'.$_POST['event']['start']['date']['m'].'-'.$_POST['event']['start']['date']['d'],
$this->object->getFirstAppointment()->setStart($start);
$end = new ilDate($_POST['event']['end']['date']['y'].'-'.$_POST['event']['end']['date']['m'].'-'.$_POST['event']['end']['date']['d'],
$this->object->getFirstAppointment()->setEnd($end);
}
else
{
$start_dt['year'] = (int) $_POST['event']['start']['date']['y'];
$start_dt['mon'] = (int) $_POST['event']['start']['date']['m'];
$start_dt['mday'] = (int) $_POST['event']['start']['date']['d'];
$start_dt['hours'] = (int) $_POST['event']['start']['time']['h'];
$start_dt['minutes'] = (int) $_POST['event']['start']['time']['m'];
$start = new ilDateTime($start_dt,IL_CAL_FKT_GETDATE,$ilUser->getTimeZone());
$this->object->getFirstAppointment()->setStart($start);
$end_dt['year'] = (int) $_POST['event']['end']['date']['y'];
$end_dt['mon'] = (int) $_POST['event']['end']['date']['m'];
$end_dt['mday'] = (int) $_POST['event']['end']['date']['d'];
$end_dt['hours'] = (int) $_POST['event']['end']['time']['h'];
$end_dt['minutes'] = (int) $_POST['event']['end']['time']['m'];
$end = new ilDateTime($end_dt,IL_CAL_FKT_GETDATE,$ilUser->getTimeZone());
$this->object->getFirstAppointment()->setEnd($end);
}
$this->object->setTitle(ilUtil::stripSlashes($_POST['title']));
$this->object->setDescription(ilUtil::stripSlashes($_POST['desc']));
$this->object->setLocation(ilUtil::stripSlashes($_POST['location']));
$this->object->setName(ilUtil::stripSlashes($_POST['tutor_name']));
$this->object->setPhone(ilUtil::stripSlashes($_POST['tutor_phone']));
$this->object->setEmail(ilUtil::stripSlashes($_POST['tutor_email']));
$this->object->setDetails(ilUtil::stripSlashes($_POST['details']));
$this->object->enableRegistration((int) $_POST['registration']);
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilObjSessionGUI::loadRecurrenceSettings ( )
protected

load recurrence settings

protected

Returns

Definition at line 1770 of file class.ilObjSessionGUI.php.

References $_POST, IL_CAL_FKT_GETDATE, IL_CAL_FREQ_DAILY, IL_CAL_FREQ_MONTHLY, IL_CAL_FREQ_WEEKLY, IL_CAL_FREQ_YEARLY, and ilUtil\stripSlashes().

Referenced by saveObject().

{
include_once('./Modules/Session/classes/class.ilSessionRecurrence.php');
$this->rec = new ilSessionRecurrence();
switch($_POST['frequence'])
{
$this->rec->setFrequenceType($_POST['frequence']);
$this->rec->setInterval((int) $_POST['count_DAILY']);
break;
$this->rec->setFrequenceType($_POST['frequence']);
$this->rec->setInterval((int) $_POST['count_WEEKLY']);
if(is_array($_POST['byday_WEEKLY']))
{
$this->rec->setBYDAY(ilUtil::stripSlashes(implode(',',$_POST['byday_WEEKLY'])));
}
break;
$this->rec->setFrequenceType($_POST['frequence']);
$this->rec->setInterval((int) $_POST['count_MONTHLY']);
switch((int) $_POST['subtype_MONTHLY'])
{
case 0:
// nothing to do;
break;
case 1:
switch((int) $_POST['monthly_byday_day'])
{
case 8:
// Weekday
$this->rec->setBYSETPOS((int) $_POST['monthly_byday_num']);
$this->rec->setBYDAY('MO,TU,WE,TH,FR');
break;
case 9:
// Day of month
$this->rec->setBYMONTHDAY((int) $_POST['monthly_byday_num']);
break;
default:
$this->rec->setBYDAY((int) $_POST['monthly_byday_num'].$_POST['monthly_byday_day']);
break;
}
break;
case 2:
$this->rec->setBYMONTHDAY((int) $_POST['monthly_bymonthday']);
break;
}
break;
$this->rec->setFrequenceType($_POST['frequence']);
$this->rec->setInterval((int) $_POST['count_YEARLY']);
switch((int) $_POST['subtype_YEARLY'])
{
case 0:
// nothing to do;
break;
case 1:
$this->rec->setBYMONTH((int) $_POST['yearly_bymonth_byday']);
$this->rec->setBYDAY((int) $_POST['yearly_byday_num'].$_POST['yearly_byday']);
break;
case 2:
$this->rec->setBYMONTH((int) $_POST['yearly_bymonth_by_monthday']);
$this->rec->setBYMONTHDAY((int) $_POST['yearly_bymonthday']);
break;
}
break;
}
// UNTIL
switch((int) $_POST['until_type'])
{
case 1:
$this->rec->setFrequenceUntilDate(null);
// nothing to do
break;
case 2:
$this->rec->setFrequenceUntilDate(null);
$this->rec->setFrequenceUntilCount((int) $_POST['count']);
break;
case 3:
$end_dt['year'] = (int) $_POST['until_end']['date']['y'];
$end_dt['mon'] = (int) $_POST['until_end']['date']['m'];
$end_dt['mday'] = (int) $_POST['until_end']['date']['d'];
$this->rec->setFrequenceUntilCount(0);
$this->rec->setFrequenceUntilDate(new ilDate($end_dt,IL_CAL_FKT_GETDATE,$this->timezone));
break;
}
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilObjSessionGUI::materialsObject ( )

show material assignment

protected

Parameters
@return

Definition at line 795 of file class.ilObjSessionGUI.php.

References ilObjectGUI\$objDefinition, ilObjectGUI\$tree, formatPath(), ilUtil\formCheckbox(), ilUtil\getImagePath(), ilEventItems\getItems(), ilUtil\sendFailure(), ilUtil\sortArray(), and ilUtil\switchColor().

Referenced by saveMaterialsObject().

{
$this->tabs_gui->setTabActive('crs_materials');
include_once 'Modules/Session/classes/class.ilEventItems.php';
$this->event_items = new ilEventItems($this->object->getId());
$items = $this->event_items->getItems();
$this->tpl->addBlockFile('ADM_CONTENT','adm_content','tpl.sess_materials.html','Modules/Session');
#$this->tpl->addBlockfile("BUTTONS", "buttons", "tpl.buttons.html");
$this->tpl->setVariable("FORMACTION",$this->ctrl->getFormAction($this,'materials'));
$this->tpl->setVariable("COLL_TITLE_IMG",ilUtil::getImagePath('icon_sess.gif'));
$this->tpl->setVariable("COLL_TITLE_IMG_ALT",$this->lng->txt('events'));
$this->tpl->setVariable("TABLE_TITLE",$this->lng->txt('event_assign_materials_table'));
$this->tpl->setVariable("TABLE_INFO",$this->lng->txt('event_assign_materials_info'));
$this->course_ref_id = $tree->checkForParentType($this->object->getRefId(),'crs');
if(!$this->course_ref_id)
{
ilUtil::sendFailure('No course object found. Aborting');
return true;
}
$materials = array();
$nodes = $tree->getSubTree($tree->getNodeData($this->course_ref_id));
foreach($nodes as $node)
{
// No side blocks here
if ($objDefinition->isSideBlock($node['type']) or $node['type'] == 'sess')
{
continue;
}
if($node['type'] == 'rolf')
{
continue;
}
$node["sorthash"] = (int)(!in_array($node['ref_id'],$items)).$node["title"];
$materials[] = $node;
}
$materials = ilUtil::sortArray($materials, "sorthash", "ASC");
$counter = 1;
foreach($materials as $node)
{
$counter++;
$this->tpl->setCurrentBlock("material_row");
$this->tpl->setVariable('TYPE_IMG',ilUtil::getImagePath('icon_'.$node['type'].'_s.gif'));
$this->tpl->setVariable('IMG_ALT',$this->lng->txt('obj_'.$node['type']));
$this->tpl->setVariable("ROW_CLASS",ilUtil::switchColor($counter,'tblrow1','tblrow2'));
$this->tpl->setVariable("CHECK_COLL",ilUtil::formCheckbox(in_array($node['ref_id'],$items) ? 1 : 0,
'items[]',$node['ref_id']));
$this->tpl->setVariable("COLL_TITLE",$node['title']);
if(strlen($node['description']))
{
$this->tpl->setVariable("COLL_DESC",$node['description']);
}
$this->tpl->setVariable("ASSIGNED_IMG_OK",in_array($node['ref_id'],$items) ?
ilUtil::getImagePath('icon_ok.gif') :
ilUtil::getImagePath('icon_not_ok.gif'));
$this->tpl->setVariable("ASSIGNED_STATUS",$this->lng->txt('event_material_assigned'));
$this->tpl->setVariable("COLL_PATH",$this->formatPath($node['ref_id']));
$this->tpl->parseCurrentBlock();
}
$this->tpl->setVariable("SELECT_ROW",ilUtil::switchColor(++$counter,'tblrow1','tblrow2'));
$this->tpl->setVariable("SELECT_ALL",$this->lng->txt('select_all'));
$this->tpl->setVariable("IMG_ARROW",ilUtil::getImagePath('arrow_downright.gif'));
$this->tpl->setVariable("BTN_SAVE",$this->lng->txt('save'));
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilObjSessionGUI::membersObject ( )
protected

Show participants table.

Returns
void

Definition at line 898 of file class.ilObjSessionGUI.php.

References ilObjectGUI\$tree, ilCourseParticipants\_getInstanceByObjId(), ilObject\_lookupObjId(), ilObjectGUI\checkPermission(), ilUtil\getImagePath(), ilUtil\sendFailure(), setShowHidePrefs(), ilSessionParticipantsTableGUI\TYPE_ADMIN, ilSessionParticipantsTableGUI\TYPE_MEMBER, and ilSessionParticipantsTableGUI\TYPE_TUTOR.

Referenced by updateMembersObject().

{
global $tree,$ilUser;
$this->checkPermission('write');
$this->tabs_gui->setTabActive('event_edit_members');
$this->tpl->addBlockFile('ADM_CONTENT', 'adm_content', 'tpl.sess_members.html', 'Modules/Session');
include_once './Services/UIComponent/Toolbar/classes/class.ilToolbarGUI.php';
$toolbar = new ilToolbarGUI();
$toolbar->addButton(
$this->lng->txt('print'),
$this->ctrl->getLinkTarget($this,'printViewMembers'),
'_blank');
$toolbar->addButton($this->lng->txt('sess_gen_attendance_list'),
$this->ctrl->getLinkTarget($this,'attendanceList'));
$this->tpl->setVariable('ACTION_BUTTONS',$toolbar->getHTML());
$this->course_ref_id = $tree->checkForParentType($this->object->getRefId(),'crs');
$this->course_obj_id = ilObject::_lookupObjId($this->course_ref_id);
if(!$this->course_ref_id)
{
ilUtil::sendFailure('No course object found. Aborting');
return true;
}
include_once './Modules/Course/classes/class.ilCourseParticipants.php';
include_once './Modules/Session/classes/class.ilEventParticipants.php';
$members_obj = ilCourseParticipants::_getInstanceByObjId($this->course_obj_id);
$event_part = new ilEventParticipants($this->object->getId());
// Save hide/show table settings
$this->setShowHidePrefs();
// Admins
if(count($admins = $members_obj->getAdmins()))
{
include_once('./Modules/Session/classes/class.ilSessionParticipantsTableGUI.php');
if($ilUser->getPref('sess_admin_hide'))
{
$this->ctrl->setParameter($this,'admin_hide',0);
$table->addHeaderCommand($this->ctrl->getLinkTarget($this,'members'),
$this->lng->txt('show'),
'',
ilUtil::getImagePath('edit_add.png'));
$this->ctrl->clearParameters($this);
}
else
{
$this->ctrl->setParameter($this,'admin_hide',1);
$table->addHeaderCommand($this->ctrl->getLinkTarget($this,'members'),
$this->lng->txt('hide'),
'',
ilUtil::getImagePath('edit_remove.png'));
$this->ctrl->clearParameters($this);
}
$table->addCommandButton('updateMembers',$this->lng->txt('save'));
$table->setTitle($this->lng->txt('event_tbl_admins'),'icon_usr.gif',$this->lng->txt('event_tbl_admins'));
$table->enableRegistration($this->object->enabledRegistration());
$table->setParticipants($admins);
$table->parse();
$this->tpl->setVariable('ADMINS',$table->getHTML());
}
// Tutors
if(count($tutors = $members_obj->getTutors()))
{
include_once('./Modules/Session/classes/class.ilSessionParticipantsTableGUI.php');
if($ilUser->getPref('sess_tutor_hide'))
{
$this->ctrl->setParameter($this,'tutor_hide',0);
$table->addHeaderCommand($this->ctrl->getLinkTarget($this,'members'),
$this->lng->txt('show'),
'',
ilUtil::getImagePath('edit_add.png'));
$this->ctrl->clearParameters($this);
}
else
{
$this->ctrl->setParameter($this,'tutor_hide',1);
$table->addHeaderCommand($this->ctrl->getLinkTarget($this,'members'),
$this->lng->txt('hide'),
'',
ilUtil::getImagePath('edit_remove.png'));
$this->ctrl->clearParameters($this);
}
$table->addCommandButton('updateMembers',$this->lng->txt('save'));
$table->setTitle($this->lng->txt('event_tbl_tutors'),'icon_usr.gif',$this->lng->txt('event_tbl_admins'));
$table->enableRegistration($this->object->enabledRegistration());
$table->setParticipants($tutors);
$table->parse();
$this->tpl->setVariable('TUTORS',$table->getHTML());
}
// Members
if(count($members = $members_obj->getMembers()))
{
include_once('./Modules/Session/classes/class.ilSessionParticipantsTableGUI.php');
if($ilUser->getPref('sess_member_hide'))
{
$this->ctrl->setParameter($this,'member_hide',0);
$table->addHeaderCommand($this->ctrl->getLinkTarget($this,'members'),
$this->lng->txt('show'),
'',
ilUtil::getImagePath('edit_add.png'));
$this->ctrl->clearParameters($this);
}
else
{
$this->ctrl->setParameter($this,'member_hide',1);
$table->addHeaderCommand($this->ctrl->getLinkTarget($this,'members'),
$this->lng->txt('hide'),
'',
ilUtil::getImagePath('edit_remove.png'));
$this->ctrl->clearParameters($this);
}
$table->addCommandButton('updateMembers',$this->lng->txt('save'));
$table->setTitle($this->lng->txt('event_tbl_members'),'icon_usr.gif',$this->lng->txt('event_tbl_admins'));
$table->enableRegistration($this->object->enabledRegistration());
$table->setParticipants($members);
$table->parse();
$this->tpl->setVariable('MEMBERS',$table->getHTML());
}
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilObjSessionGUI::modifyItemGUI (   $a_item_list_gui,
  $a_item_data,
  $a_show_path 
)

Modify Item ListGUI for presentation in container.

Definition at line 277 of file class.ilObjSessionGUI.php.

References $course_obj_id, $course_ref_id, ilObjectGUI\$tree, ilObjCourse\_lookupAboStatus(), ilObject\_lookupObjId(), and ilObjCourseGUI\_modifyItemGUI().

Referenced by infoScreen().

{
global $tree;
// if folder is in a course, modify item list gui according to course requirements
if ($course_ref_id = $tree->checkForParentType($this->object->getRefId(),'crs'))
{
include_once("./Modules/Course/classes/class.ilObjCourse.php");
include_once("./Modules/Course/classes/class.ilObjCourseGUI.php");
$a_item_list_gui,
get_class($this),
$a_item_data,
$a_show_path,
$this->object->getRefId());
}
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilObjSessionGUI::prepareOutput ( )
protected
See Also
ilObjectGUI::prepareOutput()

Reimplemented from ilObjectGUI.

Definition at line 143 of file class.ilObjSessionGUI.php.

References $title, and ilObjectGUI\getCreationMode().

Referenced by executeCommand().

{
if(!$this->getCreationMode())
{
$title = strlen($this->object->getTitle()) ? (': '.$this->object->getTitle()) : '';
include_once './Modules/Session/classes/class.ilSessionAppointment.php';
$this->tpl->setTitle(
$this->object->getFirstAppointment()->appointmentToString().$title);
}
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilObjSessionGUI::printAttendanceListObject ( )
protected

print attendance list

protected

Definition at line 1188 of file class.ilObjSessionGUI.php.

References $_POST, $ilErr, $tpl, ilObjectGUI\$tree, ilCourseParticipants\_getInstanceByObjId(), ilObjUser\_lookupLogin(), ilObjUser\_lookupName(), ilObject\_lookupObjId(), ilUtil\_sortIds(), ilObjectGUI\checkPermission(), exit, ilDatePresentation\formatPeriod(), ilUtil\getStyleSheetLocation(), ilUtil\sendFailure(), and ilDatePresentation\setUseRelativeDates().

{
global $ilErr,$ilAccess,$tree;
include_once 'Modules/Session/classes/class.ilEventParticipants.php';
include_once('./Modules/Course/classes/class.ilCourseParticipants.php');
$this->checkPermission('write');
$this->course_ref_id = $tree->checkForParentType($this->object->getRefId(),'crs');
$this->course_obj_id = ilObject::_lookupObjId($this->course_ref_id);
if(!$this->course_ref_id)
{
ilUtil::sendFailure('No course object found. Aborting');
return true;
}
$members_obj = ilCourseParticipants::_getInstanceByObjId($this->course_obj_id);
$event_app = $this->object->getFirstAppointment();
$event_part = new ilEventParticipants($this->object->getId());
$this->tpl = new ilTemplate('tpl.main.html',true,true);
// load style sheet depending on user's settings
$location_stylesheet = ilUtil::getStyleSheetLocation();
$this->tpl->setVariable("LOCATION_STYLESHEET",$location_stylesheet);
$tpl = new ilTemplate('tpl.sess_attendance_list_print.html',true,true,'Modules/Session');
$tpl->setVariable("ATTENDANCE_LIST",$this->lng->txt('sess_attendance_list'));
$tpl->setVariable("EVENT_NAME",$this->object->getTitle() ? ': '.$this->object->getTitle() : '');
$tpl->setVariable("DATE",ilDatePresentation::formatPeriod($event_app->getStart(),$event_app->getEnd()));
$tpl->setVariable("TXT_NAME",$this->lng->txt('name'));
if($_POST['show_mark'])
{
$tpl->setVariable("TXT_MARK",$this->lng->txt('trac_mark'));
}
if($_POST['show_comment'])
{
$tpl->setVariable("TXT_COMMENT",$this->lng->txt('trac_comment'));
}
if($_POST['show_signature'])
{
$tpl->setVariable("TXT_SIGNATURE",$this->lng->txt('sess_signature'));
}
if($_POST['show_admins'])
{
$members = array_merge((array) $members,$members_obj->getAdmins());
}
if($_POST['show_tutors'])
{
$members = array_merge((array) $members,$members_obj->getTutors());
}
if($_POST['show_members'])
{
$members = array_merge((array) $members,$members_obj->getMembers());
}
$members = ilUtil::_sortIds((array) $members,'usr_data','lastname','usr_id');
foreach($members as $user_id)
{
$user_data = $event_part->getUser($user_id);
if($_POST['show_mark'])
{
$tpl->setVariable("MARK",$user_data['mark'] ? $user_data['mark'] : ' ');
}
if($_POST['show_comment'])
{
$tpl->setVariable("COMMENT",$user_data['comment'] ? $user_data['comment'] : ' ');
}
if($_POST['show_signature'])
{
$tpl->touchBlock('row_signature');
}
$tpl->setCurrentBlock("member_row");
$name = ilObjUser::_lookupName($user_id);
$tpl->setVariable("LASTNAME",$name['lastname']);
$tpl->setVariable("FIRSTNAME",$name['firstname']);
$tpl->setVariable("LOGIN",ilObjUser::_lookupLogin($user_id));
$tpl->parseCurrentBlock();
}
$this->tpl->setVariable("CONTENT",$tpl->get());
$this->tpl->setVariable("BODY_ATTRIBUTES",'onload="window.print()"');
$this->tpl->show();
}

+ Here is the call graph for this function:

ilObjSessionGUI::printViewMembersObject ( )

print view

public

Parameters
@return

Definition at line 1290 of file class.ilObjSessionGUI.php.

References $ilErr, $tpl, ilObjectGUI\$tree, ilCourseParticipants\_getInstanceByObjId(), ilObjUser\_lookupLogin(), ilObjUser\_lookupName(), ilObject\_lookupObjId(), ilUtil\_sortIds(), exit, ilDatePresentation\formatPeriod(), ilUtil\getStyleSheetLocation(), ilUtil\sendFailure(), and ilDatePresentation\setUseRelativeDates().

{
include_once 'Modules/Session/classes/class.ilEventParticipants.php';
include_once('./Modules/Course/classes/class.ilCourseParticipants.php');
global $ilErr,$ilAccess,$tree,$ilUser;
$this->course_ref_id = $tree->checkForParentType($this->object->getRefId(),'crs');
$this->course_obj_id = ilObject::_lookupObjId($this->course_ref_id);
if(!$this->course_ref_id)
{
ilUtil::sendFailure('No course object found. Aborting');
return true;
}
$members_obj = ilCourseParticipants::_getInstanceByObjId($this->course_obj_id);
$event_app = $this->object->getFirstAppointment();
$event_part = new ilEventParticipants($this->object->getId());
$this->tpl = new ilTemplate('tpl.main.html',true,true);
// load style sheet depending on user's settings
$location_stylesheet = ilUtil::getStyleSheetLocation();
$this->tpl->setVariable("LOCATION_STYLESHEET",$location_stylesheet);
$tpl = new ilTemplate('tpl.sess_members_print.html',true,true,'Modules/Session');
#$tpl->setVariable("EVENT",$this->lng->txt('event'));
$tpl->setVariable("EVENT_NAME",$this->object->getTitle() ? ': '.$this->object->getTitle() : $this->object->getTitle());
$tpl->setVariable("DATE",ilDatePresentation::formatPeriod($event_app->getStart(),$event_app->getEnd()));
if(!$ilUser->getPref('sess_admin_hide') and count($members_obj->getAdmins()))
{
$tmp['txt'] = $this->lng->txt('event_tbl_admins');
$tmp['users'] = $members_obj->getAdmins();
$participants[] = $tmp;
}
if(!$ilUser->getPref('sess_tutor_hide') and count($members_obj->getTutors()))
{
$tmp['txt'] = $this->lng->txt('event_tbl_tutors');
$tmp['users'] = $members_obj->getTutors();
$participants[] = $tmp;
}
if(!$ilUser->getPref('sess_member_hide') and count($members_obj->getMembers()))
{
$tmp['txt'] = $this->lng->txt('event_tbl_members');
$tmp['users'] = $members_obj->getMembers();
$participants[] = $tmp;
}
foreach((array) $participants as $participants_data)
{
$members = ilUtil::_sortIds($participants_data['users'],'usr_data','lastname','usr_id');
foreach($members as $user_id)
{
$user_data = $event_part->getUser($user_id);
if($this->object->enabledRegistration())
{
$tpl->setCurrentBlock("reg_col");
$tpl->setVariable("REGISTERED",$event_part->isRegistered($user_id) ? "X" : "");
$tpl->parseCurrentBlock();
}
$tpl->setVariable("COMMENT",$user_data['comment']);
$tpl->setCurrentBlock("member_row");
$name = ilObjUser::_lookupName($user_id);
$tpl->setVariable("LASTNAME",$name['lastname']);
$tpl->setVariable("FIRSTNAME",$name['firstname']);
$tpl->setVariable("LOGIN",ilObjUser::_lookupLogin($user_id));
$tpl->setVariable("MARK",$user_data['mark']);
$tpl->setVariable("PARTICIPATED",$event_part->hasParticipated($user_id) ? "X" : "");
$tpl->parseCurrentBlock();
}
$tpl->setCurrentBlock('part_group');
$tpl->setVariable('GROUP_NAME',$participants_data['txt']);
$tpl->setVariable("TXT_NAME",$this->lng->txt('name'));
$tpl->setVariable("TXT_MARK",$this->lng->txt('trac_mark'));
$tpl->setVariable("TXT_COMMENT",$this->lng->txt('trac_comment'));
$tpl->setVariable("TXT_PARTICIPATED",$this->lng->txt('event_tbl_participated'));
if($this->object->enabledRegistration())
{
$tpl->setVariable("TXT_REGISTERED",$this->lng->txt('event_tbl_registered'));
}
$tpl->parseCurrentBlock();
}
$this->tpl->setVariable("CONTENT",$tpl->get());
$this->tpl->setVariable("BODY_ATTRIBUTES",'onload="window.print()"');
$this->tpl->show();
}

+ Here is the call graph for this function:

ilObjSessionGUI::registerObject ( )

register to session

public

Parameters
@return

Definition at line 164 of file class.ilObjSessionGUI.php.

References ilEventParticipants\_register(), and ilUtil\sendSuccess().

{
global $ilUser;
include_once 'Modules/Session/classes/class.ilEventParticipants.php';
ilEventParticipants::_register($ilUser->getId(),$this->object->getId());
ilUtil::sendSuccess($this->lng->txt('event_registered'),true);
$this->ctrl->returnToParent($this);
}

+ Here is the call graph for this function:

ilObjSessionGUI::removeFromDeskObject ( )
See Also
ilDesktopItemHandling::removeFromDesk()

Implements ilDesktopItemHandling.

Definition at line 254 of file class.ilObjSessionGUI.php.

References infoScreenObject(), and ilDesktopItemGUI\removeFromDesktop().

{
include_once './Services/PersonalDesktop/classes/class.ilDesktopItemGUI.php';
$this->infoScreenObject();
}

+ Here is the call graph for this function:

ilObjSessionGUI::saveAndAssignMaterialsObject ( )

Save and assign sessoin materials.

protected

Definition at line 455 of file class.ilObjSessionGUI.php.

References $ilLog, and ilObjectGUI\saveObject().

{
global $ilLog;
$this->saveObject(false);
/*
$this->ctrl->setParameter($this,'ref_id',$this->object->getRefId());
$target = $this->ctrl->getLinkTarget($this,'materials');
$target = str_replace('new_type=','nt=',$target);
*/
$this->ctrl->setParameter($this,'ref_id',$this->object->getRefId());
$this->ctrl->redirect($this,'materials');
}

+ Here is the call graph for this function:

ilObjSessionGUI::saveMaterialsObject ( )

save material assignment

public

Parameters
@return

Definition at line 882 of file class.ilObjSessionGUI.php.

References $_POST, materialsObject(), ilUtil\sendSuccess(), and ilEventItems\setItems().

{
include_once './Modules/Session/classes/class.ilEventItems.php';
$this->event_items = new ilEventItems($this->object->getId());
$this->event_items->setItems(is_array($_POST['items']) ? $_POST['items'] : array());
$this->event_items->update();
ilUtil::sendSuccess($this->lng->txt('settings_saved'));
$this->materialsObject();
}

+ Here is the call graph for this function:

ilObjSessionGUI::saveObject (   $a_redirect_on_success = true)

save object

protected

Parameters
bool$a_redirect_on_successRedirect to repository after success.
Returns

Definition at line 477 of file class.ilObjSessionGUI.php.

References $_GET, $ilErr, ilObjectGUI\createObject(), createRecurringSessions(), ilObjectFactory\getInstanceByRefId(), handleFileUpload(), initForm(), load(), loadRecurrenceSettings(), ilUtil\sendFailure(), and ilUtil\sendInfo().

{
global $ilErr,$ilUser;
$this->object = new ilObjSession();
$this->load();
$this->initForm('create');
$ilErr->setMessage('');
if(!$this->form->checkInput()) {
$ilErr->setMessage($this->lng->txt('err_check_input'));
}
$this->object->validate();
$this->object->getFirstAppointment()->validate();
if(strlen($ilErr->getMessage()))
{
ilUtil::sendFailure($ilErr->getMessage().$_GET['ref_id']);
$this->createObject();
return false;
}
// Create session
$this->object->create();
$this->object->createReference();
$this->object->putInTree($_GET["ref_id"]);
$this->object->setPermissions($_GET["ref_id"]);
// create appointment
$this->object->getFirstAppointment()->setSessionId($this->object->getId());
$this->object->getFirstAppointment()->create();
$this->handleFileUpload();
// call crs items for creating a new entry for the new session
// Otherwise the sorting of sessions is wrong.
// TODO find a better solution
include_once './Modules/Course/classes/class.ilCourseItems.php';
$tmp_course = ilObjectFactory::getInstanceByRefId((int) $_GET['ref_id'],false);
$items = new ilCourseItems($tmp_course->getRefId());
if($a_redirect_on_success)
{
ilUtil::sendInfo($this->lng->txt('event_add_new_event'),true);
$this->ctrl->returnToParent($this);
}
return true;
}

+ Here is the call graph for this function:

ilObjSessionGUI::sendFileObject ( )

send file

public

Definition at line 432 of file class.ilObjSessionGUI.php.

References $_GET, $file, and ilUtil\deliverFile().

{
$file = new ilSessionFile((int) $_GET['file_id']);
ilUtil::deliverFile($file->getAbsolutePath(),$file->getFileName(),$file->getFileType());
return true;
}

+ Here is the call graph for this function:

ilObjSessionGUI::setShowHidePrefs ( )

set preferences (show/hide tabel content)

public

Returns

Definition at line 1044 of file class.ilObjSessionGUI.php.

References $_GET.

Referenced by membersObject().

{
global $ilUser;
if(isset($_GET['admin_hide']))
{
$ilUser->writePref('sess_admin_hide',(int) $_GET['admin_hide']);
}
if(isset($_GET['tutor_hide']))
{
$ilUser->writePref('sess_tutor_hide',(int) $_GET['tutor_hide']);
}
if(isset($_GET['member_hide']))
{
$ilUser->writePref('sess_member_hide',(int) $_GET['member_hide']);
}
}

+ Here is the caller graph for this function:

ilObjSessionGUI::unregisterObject ( )

unregister from session

public

Returns

Definition at line 208 of file class.ilObjSessionGUI.php.

References ilEventParticipants\_unregister(), and ilUtil\sendSuccess().

{
global $ilUser;
include_once './Modules/Session/classes/class.ilEventParticipants.php';
ilEventParticipants::_unregister($ilUser->getId(),$this->object->getId());
ilUtil::sendSuccess($this->lng->txt('event_unregistered'),true);
$this->ctrl->returnToParent($this);
}

+ Here is the call graph for this function:

ilObjSessionGUI::updateMembersObject ( )

update participants

public

Parameters
@return

Definition at line 1069 of file class.ilObjSessionGUI.php.

References $_POST, ilObjectGUI\$tree, ilCourseParticipants\_getInstanceByObjId(), ilEventParticipants\_isRegistered(), ilObject\_lookupObjId(), ilObjectGUI\checkPermission(), membersObject(), ilUtil\sendFailure(), ilUtil\sendSuccess(), ilEventParticipants\setUserId(), and ilUtil\stripSlashes().

{
global $tree;
$this->checkPermission('write');
include_once 'Modules/Course/classes/class.ilCourseParticipants.php';
include_once 'Modules/Session/classes/class.ilEventParticipants.php';
$this->course_ref_id = $tree->checkForParentType($this->object->getRefId(),'crs');
$this->course_obj_id = ilObject::_lookupObjId($this->course_ref_id);
if(!$this->course_ref_id)
{
ilUtil::sendFailure('No course object found. Aborting');
return true;
}
$_POST['participants'] = is_array($_POST['participants']) ? $_POST['participants'] : array();
$members_obj = ilCourseParticipants::_getInstanceByObjId($this->course_obj_id);
$event_part = new ilEventParticipants($this->object->getId());
$visible = $_POST['visible_participants'] ? $_POST['visible_participants'] : array();
foreach($visible as $user)
{
$part = new ilEventParticipants($this->object->getId());
$part->setUserId($user);
$part->setMark(ilUtil::stripSlashes($_POST['mark'][$user]));
$part->setComment(ilUtil::stripSlashes($_POST['comment'][$user]));
$part->setParticipated(isset($_POST['participants'][$user]) ? true : false);
$part->setRegistered(ilEventParticipants::_isRegistered($user,$this->object->getId()));
$part->updateUser();
}
ilUtil::sendSuccess($this->lng->txt('settings_saved'));
$this->membersObject();
}

+ Here is the call graph for this function:

ilObjSessionGUI::updateObject ( )

update object

protected

Parameters
@return

Reimplemented from ilObjectGUI.

Definition at line 685 of file class.ilObjSessionGUI.php.

References $ilErr, editObject(), handleFileUpload(), initForm(), load(), ilUtil\sendFailure(), and ilUtil\sendSuccess().

{
global $ilErr;
$this->load();
$this->initForm('edit');
$ilErr->setMessage('');
if(!$this->form->checkInput())
{
$ilErr->setMessage($this->lng->txt('err_check_input'));
}
$this->object->validate();
$this->object->getFirstAppointment()->validate();
if(strlen($ilErr->getMessage()))
{
ilUtil::sendFailure($ilErr->getMessage());
$this->editObject();
return false;
}
// Update event
$this->object->update();
$this->object->getFirstAppointment()->update();
$this->handleFileUpload();
ilUtil::sendSuccess($this->lng->txt('event_updated'),true);
$this->ctrl->redirect($this,'edit');
#$this->object->initFiles();
#$this->editObject();
return true;
}

+ Here is the call graph for this function:

Field Documentation

ilObjSessionGUI::$course_obj_id = 0
protected

Definition at line 28 of file class.ilObjSessionGUI.php.

Referenced by modifyItemGUI().

ilObjSessionGUI::$course_ref_id = 0
protected

Definition at line 27 of file class.ilObjSessionGUI.php.

Referenced by eventsListObject(), and modifyItemGUI().

ilObjSessionGUI::$ctrl

Definition at line 24 of file class.ilObjSessionGUI.php.

ilObjSessionGUI::$files = array()
protected

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

Referenced by initForm().

ilObjSessionGUI::$lng

Definition at line 23 of file class.ilObjSessionGUI.php.

Referenced by __construct(), and _goto().

ilObjSessionGUI::$tpl

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