ILIAS  Release_5_0_x_branch Revision 61816
 All Data Structures Namespaces Files Functions Variables Groups Pages
ilBookingReservationsTableGUI Class Reference

List booking objects. More...

+ Inheritance diagram for ilBookingReservationsTableGUI:
+ Collaboration diagram for ilBookingReservationsTableGUI:

Public Member Functions

 __construct ($a_parent_obj, $a_parent_cmd, $a_ref_id, $a_pool_id, $a_show_all, $a_has_schedule, array $a_filter_pre=null, $a_group_id=null)
 Constructor.
 initFilter (array $a_filter_pre=null)
 Init filter.
 getCurrentFilter ()
 Get current filter settings.
 getItems (array $filter)
 Gather data and build rows.
- Public Member Functions inherited from ilTable2GUI
 __construct ($a_parent_obj, $a_parent_cmd="", $a_template_context="")
 Constructor.
 setOpenFormTag ($a_val)
 Set open form tag.
 getOpenFormTag ()
 Get open form tag.
 setCloseFormTag ($a_val)
 Set close form tag.
 getCloseFormTag ()
 Get close form tag.
 determineLimit ()
 Determine the limit.
 getSelectableColumns ()
 Get selectable columns.
 determineSelectedColumns ()
 Determine selected columns.
 isColumnSelected ($a_col)
 Is given column selected?
 getSelectedColumns ()
 Get selected columns.
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.
 addFilterItemByMetaType ($id, $type=self::FILTER_TEXT, $a_optional=false, $caption=NULL)
 Add filter by standard type.
 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.
 isFilterSelected ($a_col)
 Is given filter selected?
 getSelectedFilters ()
 Get selected filters.
 determineSelectedFilters ()
 Determine selected filters.
 setCustomPreviousNext ($a_prev_link, $a_next_link)
 Set custom previous/next links.
 setFormAction ($a_form_action, $a_multipart=false)
 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, $a_caption=null)
 Set filter command.
 getFilterCommand ()
 Get filter command.
 setResetCommand ($a_val, $a_caption=null)
 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= '', $a_id="", $a_class=null)
 Add Command button.
 addCommandButtonInstance (ilButton $a_button)
 Add Command button instance.
 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="", $a_tooltip="")
 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
 storeProperty ($type, $value)
 Store table property.
 loadProperty ($type)
 Load table property.
 getCurrentState ()
 get current settings for order, limit, columns and filter
 setContext ($id)
 Set context.
 getContext ()
 Get context.
 setShowRowsSelector ($a_value)
 Toggle rows-per-page selector.
 getShowRowsSelector ()
 Get rows-per-page selector state.
 setShowTemplates ($a_value)
 Toggle templates.
 getShowTemplates ()
 Get template state.
 restoreTemplate ($a_name)
 Restore state from template.
 saveTemplate ($a_name)
 Save current state as template.
 deleteTemplate ($a_name)
 Delete template.
 getLimit ()
 Get limit.
 getOffset ()
 Get offset.
 setExportFormats (array $formats)
 Set available export formats.
 setPrintMode ($a_value=false)
 Toogle print mode.
 getPrintMode ()
 Get print mode.
 getExportMode ()
 Was export activated?
 exportData ($format, $send=false)
 Export and optionally send current table data.
 setEnableAllCommand ($a_value)
 Enable actions for all entries in current result.
 setRowSelectorLabel ($row_selector_label)
 getRowSelectorLabel ()
 setPreventDoubleSubmission ($a_val)
 Set prevent double submission.
 getPreventDoubleSubmission ()
 Get prevent double submission.
- 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.
 setOffset ($a_offset)
 set dataset offset public
 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 table row.
 fillHeaderExcel ($a_worksheet, &$a_row)
 Excel Version of Fill Header.
 fillRowExcel ($a_worksheet, &$a_row, $a_set)
 Excel Version of Fill Row.
 fillHeaderCSV ($a_csv)
 CSV Version of Fill Header.
 fillRowCSV ($a_csv, $a_set)
 CSV Version of Fill Row.
- Protected Member Functions inherited from ilTable2GUI
 prepareOutput ()
 Anything that must be done before HTML is generated.
 getFilterValue (ilFormPropertyGUI $a_item)
 Get current filter value.
 SetFilterValue (ilFormPropertyGUI $a_item, $a_value)
 Set current filter value.
 fillMetaExcel ($worksheet, &$a_row)
 Add meta information to excel export.
 fillMetaCSV ($a_csv)
 Add meta information to csv export.

Protected Attributes

 $ref_id
 $filter
 $pool_id
 $show_all
 $has_schedule
 $objects
 $group_id
- 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 = 5
 $ext_sort = false
 $ext_seg = false
 $context = ""
 $mi_sel_buttons = null
 $disable_filter_hiding = false
 $selected_filter = false
 $top_commands = true
 $selectable_columns = array()
 $selected_column = array()
 $show_templates = false
 $show_rows_selector = true
 $nav_determined = false
 $limit_determined = false
 $filters_determined = false
 $columns_determined = false
 $open_form_tag = true
 $close_form_tag = true
 $export_formats
 $export_mode
 $print_mode
 $enable_command_for_all
 $restore_filter
 $restore_filter_values
 $sortable_fields = array()
 $prevent_double_submission = true
 $row_selector_label

Additional Inherited Members

- Static Public Member Functions inherited from ilTable2GUI
static getAllCommandLimit ()
 Get maximum number of entries to enable actions for all.
- Data Fields inherited from ilTable2GUI
const FILTER_TEXT = 1
const FILTER_SELECT = 2
const FILTER_DATE = 3
const FILTER_LANGUAGE = 4
const FILTER_NUMBER_RANGE = 5
const FILTER_DATE_RANGE = 6
const FILTER_DURATION_RANGE = 7
const FILTER_DATETIME_RANGE = 8
const EXPORT_EXCEL = 1
const EXPORT_CSV = 2
const ACTION_ALL_LIMIT = 1000

Detailed Description

List booking objects.

Author
Jörg Lützenkirchen luetz.nosp@m.enki.nosp@m.rchen.nosp@m.@lei.nosp@m.fos.c.nosp@m.om
Version
$Id$

Definition at line 16 of file class.ilBookingReservationsTableGUI.php.

Constructor & Destructor Documentation

ilBookingReservationsTableGUI::__construct (   $a_parent_obj,
  $a_parent_cmd,
  $a_ref_id,
  $a_pool_id,
  $a_show_all,
  $a_has_schedule,
array  $a_filter_pre = null,
  $a_group_id = null 
)

Constructor.

Parameters
object$a_parent_obj
string$a_parent_cmd
int$a_ref_id
int$a_pool_id
bool$a_show_all
bool$a_has_schedule
array$a_filter_pre
array$a_group_id

Definition at line 37 of file class.ilBookingReservationsTableGUI.php.

References $ilCtrl, $ilUser, $lng, ilTable2GUI\addColumn(), ilTable2GUI\addMultiCommand(), ilTableGUI\disable(), getCurrentFilter(), getItems(), ilTable2GUI\initFilter(), ilTable2GUI\setDefaultOrderDirection(), ilTable2GUI\setDefaultOrderField(), ilTable2GUI\setDisableFilterHiding(), ilTable2GUI\setEnableHeader(), ilTable2GUI\setExportFormats(), ilTable2GUI\setExternalSegmentation(), ilTable2GUI\setExternalSorting(), ilTable2GUI\setFilterCommand(), ilTable2GUI\setFormAction(), ilTable2GUI\setId(), ilTableGUI\setLimit(), ilTable2GUI\setResetCommand(), ilTable2GUI\setRowTemplate(), ilTable2GUI\setSelectAllCheckbox(), ilTable2GUI\setTitle(), and ilDatePresentation\setUseRelativeDates().

{
global $ilCtrl, $lng, $ilUser, $ilAccess;
$this->pool_id = $a_pool_id;
$this->ref_id = $a_ref_id;
$this->show_all = $a_show_all;
$this->has_schedule = (bool)$a_has_schedule;
$this->group_id = $a_group_id;
$this->setId("bkrsv".$a_ref_id);
parent::__construct($a_parent_obj, $a_parent_cmd);
$this->setTitle($lng->txt("book_reservations_list"));
$this->addColumn("", "", 1);
$this->addColumn($this->lng->txt("title"), "title");
if($this->has_schedule)
{
$this->lng->loadLanguageModule("dateplaner");
$this->addColumn($this->lng->txt("date"), "date");
$this->addColumn($this->lng->txt("wk_short"), "week");
$this->addColumn($this->lng->txt("cal_weekday"), "weekday");
$this->addColumn($this->lng->txt("book_schedule_slot"), "slot");
$this->addColumn($this->lng->txt("book_no_of_objects"), "counter");
$this->setDefaultOrderField("date");
$this->setDefaultOrderDirection("asc");
}
else
{
$this->addColumn($this->lng->txt("status"), "status");
$this->setDefaultOrderField("title");
$this->setDefaultOrderDirection("asc");
}
$this->addColumn($this->lng->txt("user"), "user_name");
$this->addColumn($this->lng->txt("actions"));
$this->setExternalSorting(true);
$this->setEnableHeader(true);
$this->setFormAction($ilCtrl->getFormAction($a_parent_obj, $a_parent_cmd));
$this->setRowTemplate("tpl.booking_reservation_row.html", "Modules/BookingManager");
$this->setResetCommand("resetLogFilter");
$this->setFilterCommand("applyLogFilter");
$this->setDisableFilterHiding(true);
$this->initFilter($a_filter_pre);
if($this->group_id)
{
$this->setLimit(9999);
$this->disable("numinfo");
$this->filters = array();
}
else
{
$this->setExportFormats(array(self::EXPORT_CSV, self::EXPORT_EXCEL));
}
if($ilUser->getId() != ANONYMOUS_USER_ID)
{
/*
if($ilAccess->checkAccess('write', '', $this->ref_id))
{
$this->addMultiCommand('rsvInUse', $lng->txt('book_set_in_use'));
$this->addMultiCommand('rsvNotInUse', $lng->txt('book_set_not_in_use'));
}
*/
$this->addMultiCommand('rsvConfirmCancel', $lng->txt('book_set_cancel'));
// $this->addMultiCommand('rsvUncancel', $lng->txt('book_set_not_cancel'));
$this->setSelectAllCheckbox('mrsv');
}
$this->getItems($this->getCurrentFilter());
}

+ Here is the call graph for this function:

Member Function Documentation

ilBookingReservationsTableGUI::fillHeaderCSV (   $a_csv)
protected

CSV Version of Fill Header.

Likely to be overwritten by derived class.

Parameters
object$a_csvcurrent file

Reimplemented from ilTable2GUI.

Definition at line 474 of file class.ilBookingReservationsTableGUI.php.

{
$a_csv->addColumn($this->lng->txt("title"));
if($this->has_schedule)
{
$a_csv->addColumn($this->lng->txt("date"));
$a_csv->addColumn($this->lng->txt("book_schedule_weekday"));
$a_csv->addColumn($this->lng->txt("book_schedule_slot"));
$a_csv->addColumn($this->lng->txt("book_no_of_objects"));
}
else
{
$a_csv->addColumn($this->lng->txt("status"));
}
$a_csv->addColumn($this->lng->txt("user"));
$a_csv->addRow();
}
ilBookingReservationsTableGUI::fillHeaderExcel (   $worksheet,
$a_row 
)
protected

Excel Version of Fill Header.

Likely to be overwritten by derived class.

Parameters
object$a_worksheetcurrent sheet
int$a_rowrow counter

Reimplemented from ilTable2GUI.

Definition at line 433 of file class.ilBookingReservationsTableGUI.php.

{
$a_worksheet->write($a_row, 0, $this->lng->txt("title"));
$col = 0;
if($this->has_schedule)
{
$a_worksheet->write($a_row, ++$col, $this->lng->txt("date"));
$a_worksheet->write($a_row, ++$col, $this->lng->txt("book_schedule_weekday"));
$a_worksheet->write($a_row, ++$col, $this->lng->txt("book_schedule_slot"));
$a_worksheet->write($a_row, ++$col, $this->lng->txt("book_no_of_objects"));
}
else
{
$a_worksheet->write($a_row, ++$col, $this->lng->txt("status"));
}
$a_worksheet->write($a_row, ++$col, $this->lng->txt("user"));
}
ilBookingReservationsTableGUI::fillRow (   $a_set)
protected

Fill table row.

Parameters
array$a_set

Reimplemented from ilTable2GUI.

Definition at line 319 of file class.ilBookingReservationsTableGUI.php.

References $ilCtrl, $ilUser, $lng, ilCalendarUtil\_numericDayToString(), ilDatePresentation\formatDate(), IL_CAL_DATE, ilBookingReservation\STATUS_CANCELLED, and ilBookingReservation\STATUS_IN_USE.

{
global $lng, $ilAccess, $ilCtrl, $ilUser;
$this->tpl->setVariable("TXT_TITLE", $a_set["title"]);
$can_be_cancelled = (($ilAccess->checkAccess('write', '', $this->ref_id) ||
$a_set['user_id'] == $ilUser->getId()) &&
$a_set["can_be_cancelled"]);
if($can_be_cancelled)
{
$this->tpl->setVariable("MULTI_ID", $a_set["booking_reservation_id"]);
}
// #11995
$uname = $a_set["user_name"];
if(!trim($uname))
{
$uname = "[".$lng->txt("user_deleted")."]";
}
else
{
$ilCtrl->setParameter($this->parent_obj, 'user_id', $a_set['user_id']);
$this->tpl->setVariable("HREF_PROFILE", $ilCtrl->getLinkTarget($this->parent_obj, 'showprofile'));
$ilCtrl->setParameter($this->parent_obj, 'user_id', '');
}
$this->tpl->setVariable("TXT_CURRENT_USER", $uname);
if($this->has_schedule)
{
$this->tpl->setVariable("VALUE_DATE", ilDatePresentation::formatDate(new ilDate($a_set["date"], IL_CAL_DATE)));
$this->tpl->setVariable("VALUE_WEEK", $a_set["week"]);
$this->tpl->setVariable("VALUE_WEEKDAY", ilCalendarUtil::_numericDayToString($a_set["weekday"], false));
$this->tpl->setVariable("VALUE_SLOT", $a_set["slot"]);
$this->tpl->setVariable("VALUE_COUNTER", $a_set["counter"]);
}
else
{
{
$this->tpl->setVariable("TXT_STATUS", $lng->txt('book_reservation_status_'.$a_set['status']));
}
else
{
$this->tpl->setVariable("TXT_STATUS", " ");
}
}
if($can_be_cancelled)
{
$ilCtrl->setParameter($this->parent_obj, 'reservation_id', $a_set['booking_reservation_id']);
$this->tpl->setVariable("URL_ACTION", $ilCtrl->getLinkTarget($this->parent_obj, 'rsvConfirmCancel'));
$ilCtrl->setParameter($this->parent_obj, 'reservation_id', "");
$this->tpl->setVariable("TXT_ACTION", $lng->txt('book_set_cancel'));
}
/* advsellist version
if (!$this->has_schedule || $date_to->get(IL_CAL_UNIX) > time())
{
include_once("./Services/UIComponent/AdvancedSelectionList/classes/class.ilAdvancedSelectionListGUI.php");
$alist = new ilAdvancedSelectionListGUI();
$alist->setId($a_set['booking_reservation_id']);
$alist->setListTitle($lng->txt("actions"));
$ilCtrl->setParameter($this->parent_obj, 'reservation_id', $a_set['booking_reservation_id']);
if(!$a_set['group_id'])
{
if($ilAccess->checkAccess('write', '', $this->ref_id))
{
if($a_set['status'] == ilBookingReservation::STATUS_CANCELLED)
{
// can be uncancelled?
// if(ilBookingReservation::getAvailableObject(array($a_set['object_id']), $date_from->get(IL_CAL_UNIX), $date_to->get(IL_CAL_UNIX)))
// {
// $alist->addItem($lng->txt('book_set_not_cancel'), 'not_cancel', $ilCtrl->getLinkTarget($this->parent_obj, 'rsvUncancel'));
// }
}
else if($a_set['status'] != ilBookingReservation::STATUS_IN_USE)
{
if($this->has_schedule)
{
$alist->addItem($lng->txt('book_set_in_use'), 'in_use', $ilCtrl->getLinkTarget($this->parent_obj, 'rsvInUse'));
}
$alist->addItem($lng->txt('book_set_cancel'), 'cancel', $ilCtrl->getLinkTarget($this->parent_obj, 'rsvConfirmCancel'));
}
else if($this->has_schedule)
{
$alist->addItem($lng->txt('book_set_not_in_use'), 'not_in_use', $ilCtrl->getLinkTarget($this->parent_obj, 'rsvNotInUse'));
}
}
else if($a_set['user_id'] == $ilUser->getId() && $a_set['status'] != ilBookingReservation::STATUS_CANCELLED)
{
$alist->addItem($lng->txt('book_set_cancel'), 'cancel', $ilCtrl->getLinkTarget($this->parent_obj, 'rsvConfirmCancel'));
}
}
else if($ilAccess->checkAccess('write', '', $this->ref_id) || $a_set['user_id'] == $ilUser->getId())
{
$alist->addItem($lng->txt('details'), 'details', $ilCtrl->getLinkTarget($this->parent_obj, 'logDetails'));
}
if(sizeof($alist->getItems()))
{
if(!$a_set['group_id'])
{
$this->tpl->setVariable('MULTI_ID', $a_set['booking_reservation_id']);
}
$this->tpl->setVariable('LAYER', $alist->getHTML());
}
}
*/
}

+ Here is the call graph for this function:

ilBookingReservationsTableGUI::fillRowCSV (   $a_csv,
  $a_set 
)
protected

CSV Version of Fill Row.

Most likely to be overwritten by derived class.

Parameters
object$a_csvcurrent file
array$a_setdata array

Reimplemented from ilTable2GUI.

Definition at line 492 of file class.ilBookingReservationsTableGUI.php.

References ilCalendarUtil\_numericDayToString(), ilDatePresentation\formatDate(), IL_CAL_DATE, ilBookingReservation\STATUS_CANCELLED, and ilBookingReservation\STATUS_IN_USE.

{
$a_csv->addColumn($a_set["title"]);
if($this->has_schedule)
{
$a_csv->addColumn(ilDatePresentation::formatDate(new ilDate($a_set["date"], IL_CAL_DATE)));
$a_csv->addColumn(ilCalendarUtil::_numericDayToString($a_set["weekday"], false));
$a_csv->addColumn($a_set["slot"]);
$a_csv->addColumn($a_set["counter"]);
}
else
{
$status = "";
{
$status = $this->lng->txt('book_reservation_status_'.$a_set['status']);
}
$a_csv->addColumn($status);
}
$a_csv->addColumn($a_set['user_name']);
$a_csv->addRow();
}

+ Here is the call graph for this function:

ilBookingReservationsTableGUI::fillRowExcel (   $a_worksheet,
$a_row,
  $a_set 
)
protected

Excel Version of Fill Row.

Most likely to be overwritten by derived class.

Parameters
object$a_worksheetcurrent sheet
int$a_rowrow counter
array$a_setdata array

Reimplemented from ilTable2GUI.

Definition at line 451 of file class.ilBookingReservationsTableGUI.php.

References ilCalendarUtil\_numericDayToString(), ilDatePresentation\formatDate(), IL_CAL_DATE, ilBookingReservation\STATUS_CANCELLED, and ilBookingReservation\STATUS_IN_USE.

{
$a_worksheet->write($a_row, 0, $a_set["title"]);
$col = 0;
if($this->has_schedule)
{
$a_worksheet->write($a_row, ++$col, ilDatePresentation::formatDate(new ilDate($a_set["date"], IL_CAL_DATE)));
$a_worksheet->write($a_row, ++$col, ilCalendarUtil::_numericDayToString($a_set["weekday"], false));
$a_worksheet->write($a_row, ++$col, $a_set["slot"]);
$a_worksheet->write($a_row, ++$col, $a_set["counter"]);
}
else
{
$status = "";
{
$status = $this->lng->txt('book_reservation_status_'.$a_set['status']);
}
$a_worksheet->write($a_row, ++$col, $status);
}
$a_worksheet->write($a_row, ++$col, $a_set['user_name']);
}

+ Here is the call graph for this function:

ilBookingReservationsTableGUI::getCurrentFilter ( )

Get current filter settings.

Returns
array

Definition at line 239 of file class.ilBookingReservationsTableGUI.php.

References $filter, IL_CAL_DATE, IL_CAL_DATETIME, IL_CAL_UNIX, and ilBookingReservation\STATUS_CANCELLED.

Referenced by __construct().

{
$filter = array();
if($this->filter["object"])
{
$filter["object"] = $this->filter["object"];
}
if($this->filter["status"])
{
$filter["status"] = $this->filter["status"];
}
if($this->filter["user_id"])
{
$filter["user_id"] = $this->filter["user_id"];
}
if($this->has_schedule)
{
if(!$filter["status"])
{
// needs distinct status because of aggregation
}
if($this->filter["slot"])
{
$filter["slot"] = $this->filter["slot"];
}
if($this->filter["fromto"]["from"] || $this->filter["fromto"]["to"])
{
if($this->filter["fromto"]["from"])
{
$filter["from"] = $this->filter["fromto"]["from"]->get(IL_CAL_UNIX);
}
if($this->filter["fromto"]["to"])
{
$day_end = new ilDateTime($this->filter["fromto"]["to"]->get(IL_CAL_DATE)." 23:59:59", IL_CAL_DATETIME);
$filter["to"] = $day_end->get(IL_CAL_UNIX);
}
}
}
return $filter;
}

+ Here is the caller graph for this function:

ilBookingReservationsTableGUI::getItems ( array  $filter)

Gather data and build rows.

Parameters
array$filter

Definition at line 288 of file class.ilBookingReservationsTableGUI.php.

References ilTableGUI\$data, $ilUser, ilTable2GUI\determineOffsetAndOrder(), ilTable2GUI\getLimit(), ilBookingReservation\getListByDate(), ilTable2GUI\getOffset(), ilTableGUI\getOrderDirection(), ilTable2GUI\getOrderField(), ilTable2GUI\setData(), and ilTableGUI\setMaxCount().

Referenced by __construct().

{
global $ilUser;
if(!$filter["object"])
{
$ids = array_keys($this->objects);
}
else
{
$ids = array($filter["object"]);
}
if(!$this->show_all)
{
$filter["user_id"] = $ilUser->getId();
}
include_once "Modules/BookingManager/classes/class.ilBookingReservation.php";
$data = ilBookingReservation::getListByDate($this->has_schedule, $ids, $this->getOrderField(), $this->getOrderDirection(), $this->getOffset(), $this->getLimit(), $filter);
$this->setData($data['data']);
$this->setMaxCount($data['counter']);
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilBookingReservationsTableGUI::initFilter ( array  $a_filter_pre = null)

Init filter.

Definition at line 126 of file class.ilBookingReservationsTableGUI.php.

References $_SESSION, $options, ilCalendarUtil\_numericDayToString(), ilTable2GUI\addFilterItemByMetaType(), ilTable2GUI\FILTER_DATE_RANGE, ilTable2GUI\FILTER_SELECT, ilTable2GUI\getId(), ilBookingSchedule\getList(), ilBookingObject\getList(), ilBookingReservation\getUserFilter(), IL_CAL_DATE, and ilBookingReservation\STATUS_CANCELLED.

{
if(is_array($a_filter_pre) &&
isset($a_filter_pre["object"]))
{
$_SESSION["form_".$this->getId()]["object"] = serialize($a_filter_pre["object"]);
if($this->has_schedule)
{
$_SESSION["form_".$this->getId()]["fromto"] = serialize(array(
"from" => serialize(new ilDateTime(date("Y-m-d"), IL_CAL_DATE)),
"to" => ""
));
}
}
$this->objects = array();
include_once "Modules/BookingManager/classes/class.ilBookingObject.php";
foreach(ilBookingObject::getList($this->pool_id) as $item)
{
$this->objects[$item["booking_object_id"]] = $item["title"];
}
$item->setOptions(array(""=>$this->lng->txt('book_all'))+$this->objects);
$this->filter["object"] = $item->getValue();
if($this->has_schedule)
{
if(!$_SESSION["form_".$this->getId()]["fromto"])
{
// default: from today
$_SESSION["form_".$this->getId()]["fromto"] = serialize(array(
"from" => serialize(new ilDateTime(date("Y-m-d"), IL_CAL_DATE)),
"to" => null
));
}
$item = $this->addFilterItemByMetaType("fromto", ilTable2GUI::FILTER_DATE_RANGE, false, $this->lng->txt('book_fromto'));
$this->filter["fromto"] = $item->getDate();
// only needed for full log
if($this->show_all)
{
// see ilObjBookingPoolGUI::buildDatesBySchedule()
$map = array_flip(array('su', 'mo', 'tu', 'we', 'th', 'fr', 'sa'));
$options = array(""=>$this->lng->txt('book_all'));
// schedule to slot
require_once "Modules/BookingManager/classes/class.ilBookingSchedule.php";
foreach(ilBookingSchedule::getList($this->pool_id) as $def)
{
$schedule = new ilBookingSchedule($def["booking_schedule_id"]);
foreach($schedule->getDefinition() as $day => $slots)
{
$day_caption = ilCalendarUtil::_numericDayToString($map[$day], false);
foreach($slots as $slot)
{
$idx = $map[$day]."_".$slot;
$options[$idx] = $day_caption.", ".$slot;
}
}
}
ksort($options);
$item = $this->addFilterItemByMetaType("book_schedule_slot", ilTable2GUI::FILTER_SELECT);
$item->setOptions($options);
$this->filter["slot"] = $item->getValue();
}
}
// status
if(!$this->has_schedule)
{
$options = array(""=>$this->lng->txt('book_all'));
}
else
{
$options = array();
}
foreach($valid_status as $loop)
{
if($loop > 0)
{
$options[$loop] = $this->lng->txt('book_reservation_status_'.$loop);
}
else
{
$options[$loop] = $this->lng->txt('book_not').' '.$this->lng->txt('book_reservation_status_'.-$loop);
}
}
$item->setOptions($options);
$this->filter["status"] = $item->getValue();
// only needed for full log
if($this->show_all)
{
$options = array(""=>$this->lng->txt('book_all'))+
ilBookingReservation::getUserFilter(array_keys($this->objects));
$item->setOptions($options);
$this->filter["user_id"] = $item->getValue();
}
}

+ Here is the call graph for this function:

Field Documentation

ilBookingReservationsTableGUI::$filter
protected

Definition at line 19 of file class.ilBookingReservationsTableGUI.php.

Referenced by getCurrentFilter().

ilBookingReservationsTableGUI::$group_id
protected

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

ilBookingReservationsTableGUI::$has_schedule
protected

Definition at line 22 of file class.ilBookingReservationsTableGUI.php.

ilBookingReservationsTableGUI::$objects
protected

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

ilBookingReservationsTableGUI::$pool_id
protected

Definition at line 20 of file class.ilBookingReservationsTableGUI.php.

ilBookingReservationsTableGUI::$ref_id
protected

Definition at line 18 of file class.ilBookingReservationsTableGUI.php.

ilBookingReservationsTableGUI::$show_all
protected

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


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