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

ilContainerStartObjectsContentTableGUI More...

+ Inheritance diagram for ilContainerStartObjectsContentTableGUI:
+ Collaboration diagram for ilContainerStartObjectsContentTableGUI:

Public Member Functions

 __construct ($a_parent_obj, $a_parent_cmd, ilContainerStartObjects $a_start_objects, $a_enable_desktop=true)
 fillRow ($a_set)
 Standard Version of Fill Row.
- 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

 getItems ()
 getItemListGUI ($a_type)
 Get list gui for object type.
 getListItem ($a_item)
 Get list gui for object instance.
- 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.
 fillHeaderExcel ($worksheet, &$a_row)
 Excel Version of Fill Header.
 fillRowExcel ($a_worksheet, &$a_row, $a_set)
 Excel Version of Fill Row.
 fillMetaCSV ($a_csv)
 Add meta information to csv export.
 fillHeaderCSV ($a_csv)
 CSV Version of Fill Header.
 fillRowCSV ($a_csv, $a_set)
 CSV Version of Fill Row.

Protected Attributes

 $start_object
 $item_list_guis
 $enable_desktop
- 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

Constructor & Destructor Documentation

ilContainerStartObjectsContentTableGUI::__construct (   $a_parent_obj,
  $a_parent_cmd,
ilContainerStartObjects  $a_start_objects,
  $a_enable_desktop = true 
)

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

References $ilCtrl, $lng, ilTable2GUI\addColumn(), getItems(), ilTable2GUI\setDefaultOrderDirection(), ilTable2GUI\setDefaultOrderField(), ilTable2GUI\setDescription(), ilTable2GUI\setFormAction(), ilTable2GUI\setRowTemplate(), and ilTable2GUI\setTitle().

{
global $lng, $ilCtrl;
$this->lng = $lng;
$this->ctrl = $ilCtrl;
$this->start_object = $a_start_objects;
$this->enable_desktop = (bool)$a_enable_desktop;
parent::__construct($a_parent_obj, $a_parent_cmd);
$this->addColumn($this->lng->txt('crs_nr'),'nr');
$this->addColumn($this->lng->txt('title'),'title');
$this->addColumn($this->lng->txt('crs_objective_accomplished'), 'status');
$this->addColumn($this->lng->txt('actions'), '');
$this->setTitle($this->lng->txt('crs_table_start_objects'));
$this->setDescription($this->lng->txt('crs_info_start'));
$this->setRowTemplate("tpl.start_objects_content_row.html", "Services/Container");
$this->setFormAction($this->ctrl->getFormAction($a_parent_obj));
$this->setDefaultOrderField('nr');
$this->setDefaultOrderDirection('asc');
$this->getItems();
}

+ Here is the call graph for this function:

Member Function Documentation

ilContainerStartObjectsContentTableGUI::fillRow (   $a_set)

Standard Version of Fill Row.

Most likely to be overwritten by derived class.

Parameters
array$a_setdata array

Reimplemented from ilTable2GUI.

Definition at line 249 of file class.ilContainerStartObjectsContentTableGUI.php.

References getListItem().

{
$this->tpl->setVariable("VAL_NR", $a_set["nr"]);
// begin-patch lok
$this->tpl->setVariable("TXT_TITLE", $this->getListItem($a_set));
/*
include_once './Modules/Course/classes/Objectives/class.ilLOSettings.php';
if(ilLOSettings::getInstanceByObjId($this->getParentObject()->object->getId())->isObjectiveTest($a_set['ref_id']))
{
$this->ctrl->setParameter($this->getParentObject(),'tid',$a_set['ref_id']);
$this->tpl->setVariable('TYPE_IMG',ilUtil::getTypeIconPath($a_set['type'], $a_set['obj_id'], 'small'));
$this->tpl->setVariable('TITLE_MANUAL_LINK',$this->ctrl->getLinkTargetByClass(get_class($this->getParentObject()),'redirectLocToTest'));
$this->tpl->setVariable('VAL_TITLE_MANUAL',$a_set['title']);
}
else
{
$this->tpl->setVariable('TYPE_IMG',ilUtil::getTypeIconPath($a_set['type'], $a_set['obj_id'], 'small'));
include_once './Services/Link/classes/class.ilLink.php';
$this->tpl->setVariable('TITLE_MANUAL_LINK',ilLink::_getLink($a_set['ref_id']));
$this->tpl->setVariable('VAL_TITLE_MANUAL',$a_set['title']);
}
// end-patch lok
*/
$this->tpl->setVariable("TXT_STATUS", $a_set["status"]);
$this->tpl->setVariable("IMG_STATUS", $a_set["status_img"]);
if($a_set["actions"])
{
$this->tpl->setCurrentBlock("link");
foreach($a_set["actions"] as $url => $caption)
{
$this->tpl->setVariable("LINK_HREF", $url);
$this->tpl->setVariable("LINK_NAME", $caption);
}
$this->tpl->parseCurrentBlock();
}
}

+ Here is the call graph for this function:

ilContainerStartObjectsContentTableGUI::getItemListGUI (   $a_type)
protected

Get list gui for object type.

See Also
ilPDSelectedItemsBlockGUI
Parameters
string$a_type
Returns
ilObjectListGUI

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

References $location.

Referenced by getListItem().

{
global $objDefinition;
if (!isset($this->item_list_guis[$a_type]))
{
$class = $objDefinition->getClassName($a_type);
// Fixed problem with deactivated plugins and existing repo. object plugin objects on the user's desktop
if(!$class)
{
return NULL;
}
// Fixed problem with deactivated plugins and existing repo. object plugin objects on the user's desktop
$location = $objDefinition->getLocation($a_type);
if(!$location)
{
return NULL;
}
$full_class = "ilObj".$class."ListGUI";
include_once($location."/class.".$full_class.".php");
$item_list_gui = new $full_class();
$this->item_list_guis[$a_type] = $item_list_gui;
}
else
{
$item_list_gui = $this->item_list_guis[$a_type];
}
$item_list_gui->setDefaultCommandParameters(array());
return $item_list_gui;
}

+ Here is the caller graph for this function:

ilContainerStartObjectsContentTableGUI::getItems ( )
protected

Definition at line 48 of file class.ilContainerStartObjectsContentTableGUI.php.

References ilTableGUI\$icon, $ilUser, $ref_id, ilObjectListGUI\CONTEXT_REPOSITORY, ilUtil\getImagePath(), ilCourseLMHistory\getLMHistory(), ilTable2GUI\getParentObject(), and ilTable2GUI\setData().

Referenced by __construct().

{
global $ilUser, $ilObjDataCache, $ilAccess;
include_once './Modules/Course/classes/class.ilCourseLMHistory.php';
include_once './Services/Link/classes/class.ilLink.php';
$lm_continue = new ilCourseLMHistory($this->start_object->getRefId(),$ilUser->getId());
$continue_data = $lm_continue->getLMHistory();
$items = array();
$counter = 0;
foreach($this->start_object->getStartObjects() as $start)
{
$obj_id = $ilObjDataCache->lookupObjId($start['item_ref_id']);
$ref_id = $start['item_ref_id'];
$type = $ilObjDataCache->lookupType($obj_id);
if(!$ilAccess->checkAccess("visible", "", $ref_id))
{
continue;
}
// start object status
if($this->start_object->isFullfilled($ilUser->getId(), $ref_id))
{
$accomplished = 'accomplished';
}
else
{
$accomplished = 'not_accomplished';
}
// add/remove desktop
$actions = array();
if((bool)$this->enable_desktop)
{
// add to desktop link
if(!$ilUser->isDesktopItem($ref_id,$type))
{
if ($ilAccess->checkAccess('read','',$ref_id))
{
$this->ctrl->setParameter($this->getParentObject(),'item_ref_id',$ref_id);
$this->ctrl->setParameter($this->getParentObject(),'item_id',$ref_id);
$this->ctrl->setParameter($this->getParentObject(),'type',$type);
$url = $this->ctrl->getLinkTarget($this->getParentObject(),'addToDesk');
$actions[$url] = $this->lng->txt("to_desktop");
}
}
else
{
$this->ctrl->setParameter($this->getParentObject(),'item_ref_id',$ref_id);
$this->ctrl->setParameter($this->getParentObject(),'item_id',$ref_id);
$this->ctrl->setParameter($this->getParentObject(),'type',$type);
$url = $this->ctrl->getLinkTarget($this->getParentObject(),'removeFromDesk');
$actions[$url] = $this->lng->txt("unsubscribe");
}
}
$default_params = null;
if($type == "tst")
{
$default_params["crs_show_result"] = $ref_id;
}
/* continue is currently inactive
if(isset($continue_data[$ref_id]))
{
// :TODO: should "continue" be default or 2nd link/action?
// $this->lng->txt('continue_work')
$default_params["obj_id"] = $continue_data[$ref_id]['lm_page_id'];
}
*/
if ($accomplished == 'accomplished')
{
$icon = ilUtil::getImagePath("icon_ok.svg");
}
else
{
$icon = ilUtil::getImagePath("icon_not_ok.svg");
}
$items[] = array("nr" => ++$counter,
"obj_id" => $obj_id,
"ref_id" => $ref_id,
"type" => $type,
"append_default" => $default_params,
"title" => $ilObjDataCache->lookupTitle($obj_id),
"description" => $ilObjDataCache->lookupDescription($obj_id),
"status" => $this->lng->txt('crs_objective_'.$accomplished),
"status_img" => $icon,
"actions" => $actions);
}
include_once("./Services/Object/classes/class.ilObjectListGUIPreloader.php");
foreach($items as $item)
{
$preloader->addItem($item["obj_id"], $item["type"], $item["ref_id"]);
}
$preloader->preload();
unset($preloader);
reset($items);
$this->setData($items);
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilContainerStartObjectsContentTableGUI::getListItem (   $a_item)
protected

Get list gui for object instance.

Parameters
array$a_item
Returns
string

Definition at line 202 of file class.ilContainerStartObjectsContentTableGUI.php.

References getItemListGUI().

Referenced by fillRow().

{
$item_list_gui = $this->getItemListGUI($a_item["type"]);
if(!$item_list_gui)
{
return;
}
$item_list_gui->setContainerObject($this);
$item_list_gui->enableCommands(true, true);
// ilObjectActivation::addListGUIActivationProperty($item_list_gui, $a_item);
// notes, comment currently do not work properly
$item_list_gui->enableNotes(false);
$item_list_gui->enableComments(false);
$item_list_gui->enableTags(false);
$item_list_gui->enableIcon(true);
$item_list_gui->enableDelete(false);
$item_list_gui->enableCut(false);
$item_list_gui->enableCopy(false);
$item_list_gui->enablePayment(false);
$item_list_gui->enableLink(false);
$item_list_gui->enableInfoScreen(true);
$item_list_gui->enableSubscribe(false);
$level = 3;
if ($level < 3)
{
$item_list_gui->enableDescription(false);
$item_list_gui->enableProperties(false);
$item_list_gui->enablePreconditions(false);
}
if($a_item["append_default"])
{
$item_list_gui->setDefaultCommandParameters($a_item["append_default"]);
}
if (is_object($item_list_gui))
{
return $item_list_gui->getListItemHTML($a_item["ref_id"],
$a_item["obj_id"], $a_item["title"], $a_item["description"]);
}
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Field Documentation

ilContainerStartObjectsContentTableGUI::$enable_desktop
protected
ilContainerStartObjectsContentTableGUI::$item_list_guis
protected
ilContainerStartObjectsContentTableGUI::$start_object
protected

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