ILIAS  Release_4_0_x_branch Revision 61816
 All Data Structures Namespaces Files Functions Variables Groups Pages
ilMediaObjectUsagesTableGUI Class Reference

TableGUI class for media object usages listing. More...

+ Inheritance diagram for ilMediaObjectUsagesTableGUI:
+ Collaboration diagram for ilMediaObjectUsagesTableGUI:

Public Member Functions

 __construct ($a_parent_obj, $a_parent_cmd, $a_media_object)
 Constructor.
 getItems ()
 Get items of current folder.
 getFirstWritableRefId ($a_obj_id)
- Public Member Functions inherited from ilTable2GUI
 __construct ($a_parent_obj, $a_parent_cmd="")
 Constructor.
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)
 Standard Version of Fill Row.
- Protected Member Functions inherited from ilTable2GUI
 prepareOutput ()
 Anything that must be done before HTML is generated.

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

TableGUI class for media object usages listing.

Author
Alex Killing alex..nosp@m.kill.nosp@m.ing@g.nosp@m.mx.d.nosp@m.e
Version
$Id$

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

Constructor & Destructor Documentation

ilMediaObjectUsagesTableGUI::__construct (   $a_parent_obj,
  $a_parent_cmd,
  $a_media_object 
)

Constructor.

Definition at line 40 of file class.ilMediaObjectUsagesTableGUI.php.

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

{
global $ilCtrl, $lng, $ilAccess, $lng;
parent::__construct($a_parent_obj, $a_parent_cmd);
$this->media_object = $a_media_object;
$this->addColumn("", "", "1"); // checkbox
$this->setEnableHeader(false);
$this->setFormAction($ilCtrl->getFormAction($a_parent_obj));
$this->setRowTemplate("tpl.mob_usage_row.html", "Services/MediaObjects");
$this->getItems();
$this->setTitle($lng->txt("cont_mob_usages"));
}

+ Here is the call graph for this function:

Member Function Documentation

ilMediaObjectUsagesTableGUI::fillRow (   $a_set)
protected

Standard Version of Fill Row.

Most likely to be overwritten by derived class.

Reimplemented from ilTable2GUI.

Definition at line 99 of file class.ilMediaObjectUsagesTableGUI.php.

References $ilCtrl, $lng, $ref_id, ilLink\_getStaticLink(), ilGlossaryTerm\_lookGlossaryTerm(), ilGlossaryDefinition\_lookupTermId(), ilLMObject\_lookupTitle(), ilObject\_lookupTitle(), ilObject\_lookupType(), getFirstWritableRefId(), ilObjContentObject\getTitle(), and ilWikiPage\lookupTitle().

{
global $lng, $ilCtrl, $ilAccess;
$usage = $a_set;
//var_dump($usage);
if(is_int(strpos($usage["type"], ":")))
{
$us_arr = explode(":", $usage["type"]);
$usage["type"] = $us_arr[1];
$cont_type = $us_arr[0];
}
//var_dump($usage);
include_once('classes/class.ilLink.php');
switch($usage["type"])
{
case "pg":
require_once("./Services/COPage/classes/class.ilPageObject.php");
$page_obj = new ilPageObject($cont_type, $usage["id"]);
$item = array();
//$this->tpl->setVariable("TXT_OBJECT", $usage["type"].":".$usage["id"]);
switch ($cont_type)
{
case "lm":
require_once("./Modules/LearningModule/classes/class.ilObjContentObject.php");
require_once("./Modules/LearningModule/classes/class.ilObjLearningModule.php");
require_once("./Modules/LearningModule/classes/class.ilLMObject.php");
if (ilObject::_lookupType($page_obj->getParentId()) == "lm")
{
$lm_obj =& new ilObjLearningModule($page_obj->getParentId(), false);
$item["obj_type_txt"] = $this->lng->txt("obj_".$cont_type);
$item["obj_title"] = $lm_obj->getTitle();
$item["sub_txt"] = $this->lng->txt("pg");
$item["sub_title"] = ilLMObject::_lookupTitle($page_obj->getId());
$ref_id = $this->getFirstWritableRefId($lm_obj->getId());
if ($ref_id > 0)
{
$item["obj_link"] = ilLink::_getStaticLink($page_obj->getId()."_".$ref_id, "pg");
}
}
break;
case "dbk":
require_once("./Modules/LearningModule/classes/class.ilObjContentObject.php");
require_once("./Modules/LearningModule/classes/class.ilLMObject.php");
require_once("./Modules/LearningModule/classes/class.ilObjDlBook.php");
if (ilObject::_lookupType($page_obj->getParentId()) == "dbk")
{
$lm_obj =& new ilObjDlBook($page_obj->getParentId(), false);
$item["obj_type_txt"] = $this->lng->txt("obj_".$cont_type);
$item["obj_title"] = $lm_obj->getTitle();
$item["sub_txt"] = $this->lng->txt("pg");
$item["sub_title"] = ilLMObject::_lookupTitle($page_obj->getId());
$ref_id = $this->getFirstWritableRefId($lm_obj->getId());
if ($ref_id > 0)
{
$item["obj_link"] = ilLink::_getStaticLink($page_obj->getId()."_".$ref_id, "pg");
}
}
break;
case "wpg":
require_once("./Modules/Wiki/classes/class.ilWikiPage.php");
$item["obj_type_txt"] = $this->lng->txt("obj_wiki");
$item["obj_title"] = ilObject::_lookupTitle($page_obj->getParentId());
$item["sub_txt"] = $this->lng->txt("pg");
$item["sub_title"] = ilWikiPage::lookupTitle($page_obj->getId());
$ref_id = $this->getFirstWritableRefId($page_obj->getParentId());
if ($ref_id > 0)
{
$item["obj_link"] = ilLink::_getStaticLink($ref_id, "wiki");
}
break;
case "gdf":
require_once("./Modules/Glossary/classes/class.ilGlossaryTerm.php");
require_once("./Modules/Glossary/classes/class.ilGlossaryDefinition.php");
$term_id = ilGlossaryDefinition::_lookupTermId($page_obj->getId());
$glo_id = ilGlossaryTerm::_lookGlossaryId($term_id);
$item["obj_type_txt"] = $this->lng->txt("obj_glo");
$item["obj_title"] = ilObject::_lookupTitle($glo_id);
$item["sub_txt"] = $this->lng->txt("cont_term");
$item["sub_title"] = ilGlossaryTerm::_lookGlossaryTerm($term_id);
$ref_id = $this->getFirstWritableRefId($page_obj->getParentId());
if ($ref_id > 0)
{
$item["obj_link"] = ilLink::_getStaticLink($ref_id, "glo");
}
break;
case "fold":
case "root":
case "crs":
case "grp":
case "cat":
$item["obj_type_txt"] = $this->lng->txt("obj_".$cont_type);
$item["obj_title"] = ilObject::_lookupTitle($page_obj->getId());
$ref_id = $this->getFirstWritableRefId($page_obj->getId());
if ($ref_id > 0)
{
$item["obj_link"] = ilLink::_getStaticLink($ref_id, $cont_type);
}
break;
}
break;
case "mep":
$item["obj_type_txt"] = $this->lng->txt("obj_mep");
$item["obj_title"] = ilObject::_lookupTitle($usage["id"]);
$ref_id = $this->getFirstWritableRefId($usage["id"]);
if ($ref_id > 0)
{
$item["obj_link"] = ilLink::_getStaticLink($ref_id, "mep");
}
break;
case "map":
$item["obj_type_txt"] = $this->lng->txt("obj_mob");
$item["obj_title"] = ilObject::_lookupTitle($usage["id"]);
$item["sub_txt"] = $this->lng->txt("cont_link_area");
break;
}
// show versions
if (is_array($usage["hist_nr"]) &&
(count($usage["hist_nr"]) > 1 || $usage["hist_nr"][0] > 0))
{
asort($usage["hist_nr"]);
$ver = $sep = "";
if ($usage["hist_nr"][0] == 0)
{
array_shift($usage["hist_nr"]);
$usage["hist_nr"][] = 0;
}
if (count($usage["hist_nr"]) > 5)
{
$ver.= "..., ";
$cnt = count($usage["hist_nr"]) - 5;
for ($i = 0; $i < $cnt; $i++)
{
unset($usage["hist_nr"][$i]);
}
}
foreach ($usage["hist_nr"] as $nr)
{
if ($nr > 0)
{
$ver.= $sep.$nr;
}
else
{
$ver.= $sep.$this->lng->txt("cont_current_version");
}
$sep = ", ";
}
$this->tpl->setCurrentBlock("versions");
$this->tpl->setVariable("TXT_VERSIONS", $this->lng->txt("cont_versions"));
$this->tpl->setVariable("VAL_VERSIONS", $ver);
$this->tpl->parseCurrentBlock();
}
if ($item["obj_type_txt"] != "")
{
$this->tpl->setCurrentBlock("type");
$this->tpl->setVariable("TXT_TYPE", $this->lng->txt("type"));
$this->tpl->setVariable("VAL_TYPE", $item["obj_type_txt"]);
$this->tpl->parseCurrentBlock();
}
if ($usage["type"] != "clip")
{
if ($item["obj_link"])
{
$this->tpl->setCurrentBlock("linked_item");
$this->tpl->setVariable("TXT_OBJECT", $item["obj_title"]);
$this->tpl->setVariable("HREF_LINK", $item["obj_link"]);
$this->tpl->parseCurrentBlock();
}
else
{
$this->tpl->setVariable("TXT_OBJECT_NO_LINK", $item["obj_title"]);
}
if ($item["sub_txt"] != "")
{
$this->tpl->setVariable("SEP", ", ");
$this->tpl->setVariable("SUB_TXT", $item["sub_txt"]);
if ($item["sub_title"] != "")
{
$this->tpl->setVariable("SEP2", ": ");
$this->tpl->setVariable("SUB_TITLE", $item["sub_title"]);
}
}
}
else
{
$this->tpl->setVariable("TXT_OBJECT_NO_LINK", $this->lng->txt("cont_users_have_mob_in_clip1").
" ".$usage["cnt"]." ".$this->lng->txt("cont_users_have_mob_in_clip2"));
}
}

+ Here is the call graph for this function:

ilMediaObjectUsagesTableGUI::getFirstWritableRefId (   $a_obj_id)

Definition at line 311 of file class.ilMediaObjectUsagesTableGUI.php.

References $ref_id, and ilObject\_getAllReferences().

Referenced by fillRow().

{
global $ilAccess;
$ref_ids = ilObject::_getAllReferences($a_obj_id);
foreach ($ref_ids as $ref_id)
{
if ($ilAccess->checkAccess("write", "", $ref_id))
{
return $ref_id;
}
}
return 0;
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilMediaObjectUsagesTableGUI::getItems ( )

Get items of current folder.

Definition at line 58 of file class.ilMediaObjectUsagesTableGUI.php.

References ilTable2GUI\setData().

Referenced by __construct().

{
$usages = $this->media_object->getUsages();
$clip_cnt = 0;
$to_del = array();
$agg_usages = array();
foreach($usages as $k => $usage)
{
if ($usage["type"] == "clip")
{
$clip_cnt++;
}
else
{
if (empty($agg_usages[$usage["type"].":".$usage["id"]]))
{
$usage["hist_nr"] = array($usage["hist_nr"]);
$agg_usages[$usage["type"].":".$usage["id"]] = $usage;
}
else
{
$agg_usages[$usage["type"].":".$usage["id"]]["hist_nr"][] =
$usage["hist_nr"];
}
}
}
// usages in clipboards
if ($clip_cnt > 0)
{
$agg_usages[] = array("type" => "clip", "cnt" => $clip_cnt);
}
$this->setData($agg_usages);
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:


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