ILIAS  Release_4_0_x_branch Revision 61816
 All Data Structures Namespaces Files Functions Variables Groups Pages
ilCalendarAppointmentsTableGUI Class Reference
+ Inheritance diagram for ilCalendarAppointmentsTableGUI:
+ Collaboration diagram for ilCalendarAppointmentsTableGUI:

Public Member Functions

 __construct ($a_parent_obj, $a_category_id)
 Constructor.
 setAppointments ($a_apps)
 set appointments
- Public Member Functions inherited from ilTable2GUI
executeCommand ()
 Execute command.
 resetOffset ($a_in_determination=false)
 Reset offset.
 initFilter ()
 Init filter.
 getParentObject ()
 Get parent object.
 getParentCmd ()
 Get parent command.
 setTopAnchor ($a_val)
 Set top anchor.
 getTopAnchor ()
 Get top anchor.
 setNoEntriesText ($a_text)
 Set text for an empty table.
 getNoEntriesText ()
 Get text for an empty table.
 setIsDataTable ($a_val)
 Set is data table.
 getIsDataTable ()
 Get is data table.
 setEnableTitle ($a_enabletitle)
 Set Enable Title.
 getEnableTitle ()
 Get Enable Title.
 setEnableHeader ($a_enableheader)
 Set Enable Header.
 getEnableHeader ()
 Get Enable Header.
 setEnableNumInfo ($a_val)
 Set enable num info.
 getEnableNumInfo ()
 Get enable num info.
 setTitle ($a_title, $a_icon=0, $a_icon_alt=0)
 Set title and title icon.
 setDescription ($a_val)
 Set description.
 getDescription ()
 Get description.
 setOrderField ($a_order_field)
 set order column
 getOrderField ()
 setData ($a_data)
 set table data public
 getData ()
 dataExists ()
 setPrefix ($a_prefix)
 set prefix for sort and offset fields (if you have two or more tables on a page that you want to sort separately) public
 getPrefix ()
 addFilterItem ($a_input_item, $a_optional=false)
 Add filter item.
 getFilterItems ($a_optionals=false)
 Get filter items.
 getFilterItemByPostVar ($a_post_var)
 setFilterCols ($a_val)
 Set filter columns.
 getFilterCols ()
 Get filter columns.
 setDisableFilterHiding ($a_val=true)
 Set disable filter hiding.
 getDisableFilterHiding ()
 Get disable filter hiding disable filter hiding.
 setCustomPreviousNext ($a_prev_link, $a_next_link)
 Set custom previous/next links.
 setFormAction ($a_form_action)
 Set Form action parameter.
 getFormAction ()
 Get Form action parameter.
 setFormName ($a_formname)
 Set Form name.
 getFormName ()
 Get Form name.
 setId ($a_val)
 Set id.
 getId ()
 Get element id.
 setDisplayAsBlock ($a_val)
 Set display as block.
 getDisplayAsBlock ()
 Get display as block.
 getSelectAllCheckbox ()
 Get the name of the checkbox that should be toggled with a select all button.
 setSelectAllCheckbox ($a_select_all_checkbox)
 Set the name of the checkbox that should be toggled with a select all button.
 setExternalSorting ($a_val)
 Set external sorting.
 getExternalSorting ()
 Get external sorting.
 setFilterCommand ($a_val)
 Set filter command.
 getFilterCommand ()
 Get filter command.
 setResetCommand ($a_val)
 Set reset filter command.
 getResetCommand ()
 Get reset filter command.
 setExternalSegmentation ($a_val)
 Set external segmentation.
 getExternalSegmentation ()
 Get external segmentation.
 setRowTemplate ($a_template, $a_template_dir="")
 Set row template.
 setDefaultOrderField ($a_defaultorderfield)
 Set Default order field.
 getDefaultOrderField ()
 Get Default order field.
 setDefaultOrderDirection ($a_defaultorderdirection)
 Set Default order direction.
 getDefaultOrderDirection ()
 Get Default order direction.
 clearCommandButtons ()
 addCommandButton ($a_cmd, $a_text, $a_onclick= '')
 Add Command button.
 addSelectionButton ($a_sel_var, $a_options, $a_cmd, $a_text, $a_default_selection= '')
 Add Selection List + Command button.
 addMultiItemSelectionButton ($a_sel_var, $a_options, $a_cmd, $a_text, $a_default_selection= '')
 Add Selection List + Command button for selected items.
 setCloseCommand ($a_link)
 Add command for closing table.
 addMultiCommand ($a_cmd, $a_text)
 Add Command button.
 addHiddenInput ($a_name, $a_value)
 Add Hidden Input field.
 addHeaderCommand ($a_href, $a_text, $a_target="", $a_img="")
 Add Header Command (Link) (Image needed for now)
 setTopCommands ($a_val)
 Set top commands (display command buttons on top of table, too)
 getTopCommands ()
 Get top commands (display command buttons on top of table, too)
 addColumn ($a_text, $a_sort_field="", $a_width="", $a_is_checkbox_action_column=false, $a_class="")
 Add a column to the header.
 getNavParameter ()
 setOrderLink ($sort_field, $order_dir)
 fillHeader ()
 determineOffsetAndOrder ($a_omit_offset=false)
 Determine offset and order.
 storeNavParameter ()
 getHTML ()
 Get HTML.
 numericOrdering ($a_field)
 Should this field be sorted numeric?
 render ()
 render table public
 writeFilterToSession ()
 Write filter values to session.
 resetFilter ()
 Reset filter.
 fillFooter ()
 Fill footer row.
 getLinkbar ($a_num)
 Get previous/next linkbar.
 fillHiddenRow ()
 fillActionRow ()
 Fill Action Row.
 setHeaderHTML ($html)
 set header html
- Public Member Functions inherited from ilTableGUI
 ilTableGUI ($a_data=0, $a_global_tpl=true)
 Constructor.
 setTemplate (&$a_tpl)
 set template public
getTemplateObject ()
 setHelp ($a_help_page, $a_help_icon, $a_help_icon_alt=0)
 set table help page public
 setHeaderNames ($a_header_names)
 set table header names public
 getColumnCount ()
 Returns the column count based on the number of the header row columns public.
 setHeaderVars ($a_header_vars, $a_header_params=0)
 set table header vars public
 setColumnWidth ($a_column_width)
 set table column widths public
 setOneColumnWidth ($a_column_width, $a_column_number)
 set one table column width public
 setMaxCount ($a_max_count)
 set max.
 setLimit ($a_limit=0, $a_default_limit=0)
 set max.
 getLimit ()
 Get limit.
 setOffset ($a_offset)
 set dataset offset public
 getOffset ()
 Get offset.
 setOrderColumn ($a_order_column=0, $a_default_column=0)
 set order column public
 getOrderColumn ()
 Get order column.
 setOrderDirection ($a_order_direction)
 set order direction public
 getOrderDirection ()
 Get order direction.
 setFooter ($a_style, $a_previous=0, $a_next=0)
 set order direction public
 enable ($a_module_name)
 enables particular modules of table
 disable ($a_module_name)
 diesables particular modules of table
 sortData ()
 renderHeader ()
 setStyle ($a_element, $a_style)
 getStyle ($a_element)
 setBase ($a_base)
 Set Base script name (deprecated, only use this for workarounds).
 getBase ()
 Get Base script name (deprecated, only use this for workarounds).
 clearActionButtons ()
 addActionButton ($btn_name, $btn_value)

Protected Member Functions

 fillRow ($a_set)
 fill row
- Protected Member Functions inherited from ilTable2GUI
 prepareOutput ()
 Anything that must be done before HTML is generated.

Private Attributes

 $cat_id = 0
 $categories = null
 $is_editable = false

Additional Inherited Members

- Data Fields inherited from ilTableGUI
 $title
 $icon
 $icon_alt
 $help_page
 $help_icon
 $help_icon_alt
 $header_names
 $header_vars
 $linkbar_vars
 $data
 $column_count
 $column_width
 $max_count
 $limit
 $max_limit = false
 $offset
 $order_column
 $order_direction
 $footer_style
 $footer_previous
 $footer_next
 $lang_support = true
 $global_tpl
 $form_name
 $select_all_checkbox
 $action_buttons
 $prefix
 $base = ""
 $enabled
 $styles
- Protected Attributes inherited from ilTable2GUI
 $close_command = ""
 $top_anchor = "il_table_top"
 $filters = array()
 $optional_filters = array()
 $filter_cmd = 'applyFilter'
 $reset_cmd = 'resetFilter'
 $filter_cols = 4
 $ext_sort = false
 $ext_seg = false
 $mi_sel_buttons = null
 $disable_filter_hiding = false
 $top_commands = false

Detailed Description

Author
Stefan Meyer smeye.nosp@m.r.il.nosp@m.ias@g.nosp@m.mx.d.nosp@m.e
Version
$Id$

Definition at line 32 of file class.ilCalendarAppointmentsTableGUI.php.

Constructor & Destructor Documentation

ilCalendarAppointmentsTableGUI::__construct (   $a_parent_obj,
  $a_category_id 
)

Constructor.

public

Parameters
@return

Reimplemented from ilTable2GUI.

Definition at line 45 of file class.ilCalendarAppointmentsTableGUI.php.

References $ilCtrl, $lng, ilCalendarCategories\_getInstance(), ilTable2GUI\addColumn(), ilTable2GUI\addMultiCommand(), ilTableGUI\disable(), ilTableGUI\enable(), ilTable2GUI\setDefaultOrderField(), ilTable2GUI\setFormAction(), ilTable2GUI\setFormName(), ilTable2GUI\setPrefix(), ilTable2GUI\setRowTemplate(), and ilTable2GUI\setSelectAllCheckbox().

{
global $lng,$ilCtrl;
$this->categories = ilCalendarCategories::_getInstance();
$this->cat_id = $a_category_id;
$this->is_editable = $this->categories->isEditable($this->cat_id);
$this->lng = $lng;
$this->lng->loadLanguageModule('dateplaner');
$this->ctrl = $ilCtrl;
parent::__construct($a_parent_obj,'edit');
$this->setFormName('appointments');
$this->addColumn('','f',"1");
$this->addColumn($this->lng->txt('title'),'title',"50%");
$this->addColumn($this->lng->txt('cal_start'),'begin',"20%");
$this->addColumn($this->lng->txt('cal_duration'),'duration',"20%");
$this->addColumn($this->lng->txt('cal_recurrences'),'frequence',"10%");
if($this->is_editable)
{
$this->addMultiCommand('askDeleteAppointments',$this->lng->txt('delete'));
$this->enable('select_all');
}
else
{
$this->disable('select_all');
}
$this->setFormAction($this->ctrl->getFormAction($a_parent_obj));
$this->setRowTemplate("tpl.show_appointment_row.html","Services/Calendar");
$this->enable('sort');
$this->enable('header');
$this->enable('numinfo');
$this->setDefaultOrderField('begin');
$this->setSelectAllCheckbox('appointments');
$this->setPrefix('apps');
}

+ Here is the call graph for this function:

Member Function Documentation

ilCalendarAppointmentsTableGUI::fillRow (   $a_set)
protected

fill row

protected

Parameters
arrayset of data
Returns

Reimplemented from ilTable2GUI.

Definition at line 96 of file class.ilCalendarAppointmentsTableGUI.php.

References $start, ilFormat\_secondsToString(), ilTable2GUI\addColumn(), ilDatePresentation\formatDate(), IL_CAL_FREQ_DAILY, IL_CAL_FREQ_MONTHLY, IL_CAL_FREQ_WEEKLY, IL_CAL_FREQ_YEARLY, and IL_CAL_UNIX.

{
global $ilUser;
if($a_set['deletable'])
{
$this->tpl->setVariable('VAL_ID',$a_set['id']);
}
$this->tpl->setVariable('VAL_DESCRIPTION',$a_set['description']);
$this->tpl->setVariable('VAL_TITLE_LINK',$a_set['title']);
$this->ctrl->setParameterByClass('ilcalendarappointmentgui','app_id',$a_set['id']);
$this->tpl->setVariable('VAL_LINK',$this->ctrl->getLinkTargetByClass('ilcalendarappointmentgui','edit'));
switch($a_set['frequence'])
{
$this->tpl->setVariable('VAL_FREQUENCE',$this->lng->txt('cal_daily'));
break;
$this->tpl->setVariable('VAL_FREQUENCE',$this->lng->txt('cal_weekly'));
break;
$this->tpl->setVariable('VAL_FREQUENCE',$this->lng->txt('cal_monthly'));
break;
$this->tpl->setVariable('VAL_FREQUENCE',$this->lng->txt('cal_yearly'));
break;
default:
$this->tpl->setVariable('VAL_FREQUENCE',$this->lng->txt('cal_no_recurrence'));
break; $this->addColumn($this->lng->txt('cal_duration'),'duration',"20%");
}
// TOD: Localization
if($a_set['fullday'])
{
$start = new ilDate($a_set['begin'],IL_CAL_UNIX);
$this->tpl->setVariable('VAL_BEGIN',ilDatePresentation::formatDate($start));
}
else
{
$start = new ilDateTime($a_set['begin'],IL_CAL_UNIX,'UTC');
$this->tpl->setVariable('VAL_BEGIN',ilDatePresentation::formatDate($start));
}
if($a_set['duration'])
{
$this->tpl->setVariable('VAL_DURATION',ilFormat::_secondsToString($a_set['duration']));
}
else
{
$this->tpl->setVariable('VAL_DURATION','');
}
}

+ Here is the call graph for this function:

ilCalendarAppointmentsTableGUI::setAppointments (   $a_apps)

set appointments

public

Returns

Definition at line 163 of file class.ilCalendarAppointmentsTableGUI.php.

References $is_editable, ilCalendarRecurrences\_getFirstRecurrence(), IL_CAL_UNIX, and ilTable2GUI\setData().

{
include_once('./Services/Calendar/classes/class.ilCalendarEntry.php');
include_once('./Services/Calendar/classes/class.ilCalendarRecurrences.php');
foreach($a_apps as $cal_entry_id)
{
$entry = new ilCalendarEntry($cal_entry_id);
$rec = ilCalendarRecurrences::_getFirstRecurrence($entry->getEntryId());
$tmp_arr['id'] = $entry->getEntryId();
$tmp_arr['title'] = $entry->getPresentationTitle();
$tmp_arr['description'] = $entry->getDescription();
$tmp_arr['fullday'] = $entry->isFullday();
$tmp_arr['begin'] = $entry->getStart()->get(IL_CAL_UNIX);
$tmp_arr['end'] = $entry->getEnd()->get(IL_CAL_UNIX);
#$tmp_arr['duration'] = ($dur = $tmp_arr['end'] - $tmp_arr['begin']) ? $dur : 60 * 60 * 24;
$tmp_arr['duration'] = $tmp_arr['end'] - $tmp_arr['begin'];
if($tmp_arr['fullday'])
{
$tmp_arr['duration'] += (60 * 60 * 24);
}
if(!$tmp_arr['fullday'] and $tmp_arr['end'] == $tmp_arr['begin'])
{
$tmp_arr['duration'] = '';
}
$tmp_arr['frequence'] = $rec->getFrequenceType();
$tmp_arr['deletable'] = (!$entry->isAutoGenerated() and $this->is_editable);
$appointments[] = $tmp_arr;
}
$this->setData($appointments ? $appointments : array());
}

+ Here is the call graph for this function:

Field Documentation

ilCalendarAppointmentsTableGUI::$cat_id = 0
private

Definition at line 34 of file class.ilCalendarAppointmentsTableGUI.php.

ilCalendarAppointmentsTableGUI::$categories = null
private

Definition at line 35 of file class.ilCalendarAppointmentsTableGUI.php.

ilCalendarAppointmentsTableGUI::$is_editable = false
private

Definition at line 36 of file class.ilCalendarAppointmentsTableGUI.php.

Referenced by setAppointments().


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