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

TableGUI class for recent changes in wiki. More...

+ Inheritance diagram for ilMediaPoolTableGUI:
+ Collaboration diagram for ilMediaPoolTableGUI:

Public Member Functions

 __construct ($a_parent_obj, $a_parent_cmd, $a_media_pool, $a_folder_par="obj_id", $a_mode=ilMediaPoolTableGUI::IL_MEP_EDIT, $a_all_objects=false)
 Constructor.
 setInsertCommand ($a_val)
 Set inser command.
 getInsertCommand ()
 Get inser command.
 initFilter ()
 Init filter.
 setMode ($a_mode)
 Set Mode.
 getMode ()
 Get Mode.
 getItems ()
 Get items of current folder.
 prepareOutput ()
 Prepare output.
- Public Member Functions inherited from ilTable2GUI
 __construct ($a_parent_obj, $a_parent_cmd="")
 Constructor.
executeCommand ()
 Execute command.
 resetOffset ($a_in_determination=false)
 Reset offset.
 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)

Data Fields

const IL_MEP_SELECT = "select"
const IL_MEP_EDIT = "edit"
const IL_MEP_SELECT_CONTENT = "selectc"
 $insert_command = "create_mob"
const IL_MEP_SELECT_SINGLE = "selectsingle"

Protected Member Functions

 fillRow ($a_set)
 Standard Version of Fill Row.

Additional Inherited Members

- 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 recent changes in wiki.

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

Definition at line 14 of file class.ilMediaPoolTableGUI.php.

Constructor & Destructor Documentation

ilMediaPoolTableGUI::__construct (   $a_parent_obj,
  $a_parent_cmd,
  $a_media_pool,
  $a_folder_par = "obj_id",
  $a_mode = ilMediaPoolTableGUI::IL_MEP_EDIT,
  $a_all_objects = false 
)

Constructor.

Definition at line 25 of file class.ilMediaPoolTableGUI.php.

References $_GET, $_SESSION, $ilCtrl, $lng, ilObject\_lookupTitle(), ilTable2GUI\addColumn(), ilTable2GUI\addCommandButton(), ilTable2GUI\addHeaderCommand(), ilTable2GUI\addMultiCommand(), getItems(), getMode(), ilObjMediaPool\getPoolTree(), IL_MEP_EDIT, IL_MEP_SELECT_SINGLE, initFilter(), ilTable2GUI\setEnableHeader(), ilTable2GUI\setExternalSorting(), ilTable2GUI\setFormAction(), ilTable2GUI\setId(), setMode(), ilTable2GUI\setRowTemplate(), ilTable2GUI\setSelectAllCheckbox(), and ilTable2GUI\setTitle().

{
global $ilCtrl, $lng, $ilAccess, $lng;
if ($a_all_objects)
{
$this->setId("mepall".$a_parent_obj->object->getId());
}
else
{
if (is_object($a_parent_obj->object))
{
$this->setId("mepfold".$a_parent_obj->object->getId());
}
}
parent::__construct($a_parent_obj, $a_parent_cmd);
$this->setMode($a_mode);
$this->all_objects = $a_all_objects;
$lng->loadLanguageModule("mep");
$this->media_pool = $a_media_pool;
$this->tree = ilObjMediaPool::getPoolTree($this->media_pool->getId());
$this->folder_par = $a_folder_par;
if ($this->all_objects)
{
$this->setExternalSorting(true);
$this->initFilter();
}
// folder determination
if ($_GET[$this->folder_par] > 0)
{
$this->current_folder = $_GET[$this->folder_par];
}
else if ($_SESSION["mep_pool_folder"] > 0 && $this->tree->isInTree($_SESSION["mep_pool_folder"]))
{
$this->current_folder = $_SESSION["mep_pool_folder"];
}
else
{
$this->current_folder = $this->tree->getRootId();
}
$_SESSION["mep_pool_folder"] = $this->current_folder;
$this->addColumn("", "", "1"); // checkbox
$this->addColumn($lng->txt("mep_thumbnail"), "", "1");
$this->addColumn($lng->txt("mep_title_and_description"), "", "100%");
$this->setEnableHeader(true);
$this->setFormAction($ilCtrl->getFormAction($a_parent_obj));
$this->setRowTemplate("tpl.mep_list_row.html", "Modules/MediaPool");
$this->getItems();
// title
if ($this->current_folder != $this->tree->getRootId() && !$this->all_objects)
{
$node = $this->tree->getNodeData($this->current_folder);
$this->setTitle($node["title"], "icon_fold.gif",
$node["title"]);
}
else
{
$this->setTitle(ilObject::_lookupTitle($this->media_pool->getId()),
"icon_mep.gif",
ilObject::_lookupTitle($this->media_pool->getId()));
}
// action commands
if ($ilAccess->checkAccess("write", "", $this->media_pool->getRefId()) &&
{
$this->addMultiCommand("copyToClipboard", $lng->txt("cont_copy_to_clipboard"));
$this->addMultiCommand("confirmRemove", $lng->txt("remove"));
if (!$this->all_objects)
{
$this->addCommandButton("createFolderForm", $lng->txt("mep_create_folder"));
$this->addCommandButton("createMediaObject", $lng->txt("mep_create_mob"));
$mset = new ilSetting("mobs");
if ($mset->get("mep_activate_pages"))
{
$this->addCommandButton("createMediaPoolPage", $lng->txt("mep_create_content_snippet"));
}
}
}
{
// ... even more coupling with ilpcmediaobjectgui
$this->addMultiCommand("selectObjectReference", $lng->txt("cont_select"));
}
{
$this->setSelectAllCheckbox("id");
}
if ($this->current_folder != $this->tree->getRootId() && !$this->all_objects)
{
$ilCtrl->setParameter($this->parent_obj, $this->folder_par,
$this->tree->getParentId($this->current_folder));
$this->addHeaderCommand($ilCtrl->getLinkTarget($this->parent_obj, $this->parent_cmd),
$lng->txt("mep_parent_folder"));
$ilCtrl->setParameter($this->parent_obj, $this->folder_par,
$this->current_folder);
}
}

+ Here is the call graph for this function:

Member Function Documentation

ilMediaPoolTableGUI::fillRow (   $a_set)
protected

Standard Version of Fill Row.

Most likely to be overwritten by derived class.

Reimplemented from ilTable2GUI.

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

References $_GET, $ilCtrl, $lng, $size, ilObjMediaObjectGUI\_getMediaInfoHTML(), ilObject\_lookupType(), ilUtil\deducibleSize(), ilUtil\getImagePath(), getMode(), IL_MEP_EDIT, IL_MEP_SELECT, IL_MEP_SELECT_CONTENT, IL_MEP_SELECT_SINGLE, and ilUtil\img().

{
global $lng, $ilCtrl, $ilAccess;
$this->tpl->setCurrentBlock("link");
switch($a_set["type"])
{
case "fold":
$this->tpl->setVariable("TXT_TITLE", $a_set["title"]);
$ilCtrl->setParameter($this->parent_obj, $this->folder_par, $a_set["obj_id"]);
$this->tpl->setVariable("LINK_VIEW",
$ilCtrl->getLinkTarget($this->parent_obj, $this->parent_cmd));
$this->tpl->parseCurrentBlock();
if ($ilAccess->checkAccess("write", "", $this->media_pool->getRefId()) &&
{
$this->tpl->setCurrentBlock("edit");
$this->tpl->setVariable("TXT_EDIT", $lng->txt("edit"));
$ilCtrl->setParameter($this->parent_obj, $this->folder_par, $a_set["obj_id"]);
$this->tpl->setVariable("EDIT_LINK",
$ilCtrl->getLinkTarget($this->parent_obj, "editFolder"));
$ilCtrl->setParameter($this->parent_obj, $this->folder_par, $_GET[$this->folder_par]);
$this->tpl->parseCurrentBlock();
}
$this->tpl->setCurrentBlock("tbl_content");
$this->tpl->setVariable("IMG", ilUtil::img(ilUtil::getImagePath("icon_".$a_set["type"].".gif")));
$ilCtrl->setParameter($this->parent_obj, $this->folder_par, $this->current_folder);
break;
case "pg":
$this->tpl->setVariable("TXT_NO_LINK_TITLE", $a_set["title"]);
if ($ilAccess->checkAccess("write", "", $this->media_pool->getRefId()) &&
{
$this->tpl->setCurrentBlock("edit");
$this->tpl->setVariable("TXT_EDIT", $lng->txt("edit"));
$ilCtrl->setParameterByClass("ilmediapoolpagegui", "mepitem_id", $a_set["child"]);
$this->tpl->setVariable("EDIT_LINK",
$ilCtrl->getLinkTargetByClass("ilmediapoolpagegui", "edit"));
$this->tpl->parseCurrentBlock();
}
$this->tpl->setCurrentBlock("tbl_content");
$this->tpl->setVariable("IMG", ilUtil::img(ilUtil::getImagePath("icon_pg.gif")));
$ilCtrl->setParameter($this->parent_obj, $this->folder_par, $this->current_folder);
break;
case "mob":
{
$this->tpl->setVariable("TXT_NO_LINK_TITLE", $a_set["title"]);
}
else
{
$this->tpl->setVariable("TXT_TITLE", $a_set["title"]);
$this->tpl->touchBlock("nf");
$ilCtrl->setParameterByClass("ilobjmediaobjectgui", "mepitem_id", $a_set["child"]);
$ilCtrl->setParameter($this->parent_obj, "mob_id", $a_set["foreign_id"]);
$this->tpl->setVariable("LINK_VIEW",
$ilCtrl->getLinkTarget($this->parent_obj, "showMedia"));
}
// edit link
if ($ilAccess->checkAccess("write", "", $this->media_pool->getRefId()) &&
{
$this->tpl->setCurrentBlock("edit");
$this->tpl->setVariable("TXT_EDIT", $lng->txt("edit"));
$this->tpl->setVariable("EDIT_LINK",
$ilCtrl->getLinkTargetByClass("ilobjmediaobjectgui", "edit"));
$this->tpl->parseCurrentBlock();
}
$this->tpl->setCurrentBlock("link");
$this->tpl->setCurrentBlock("tbl_content");
// output thumbnail (or mob icon)
if (ilObject::_lookupType($a_set["foreign_id"]) == "mob")
{
$mob = new ilObjMediaObject($a_set["foreign_id"]);
$med = $mob->getMediaItem("Standard");
$target = $med->getThumbnailTarget();
if ($target != "")
{
$this->tpl->setVariable("IMG", ilUtil::img($target));
}
else
{
$this->tpl->setVariable("IMG",
ilUtil::img(ilUtil::getImagePath("icon_".$a_set["type"].".gif")));
}
if (ilUtil::deducibleSize($med->getFormat()) &&
$med->getLocationType() == "Reference")
{
$size = @getimagesize($med->getLocation());
if ($size[0] > 0 && $size[1] > 0)
{
$wr = $size[0] / 80;
$hr = $size[1] / 80;
$r = max($wr, hr);
$w = (int) ($size[0]/$r);
$h = (int) ($size[1]/$r);
$this->tpl->setVariable("IMG",
ilUtil::img($med->getLocation(), "", $w, $h));
}
}
// output media info
include_once("./Services/MediaObjects/classes/class.ilObjMediaObjectGUI.php");
$this->tpl->setVariable("MEDIA_INFO",
$ilCtrl->setParameter($this->parent_obj, $this->folder_par, $this->current_folder);
}
break;
}
if ($ilAccess->checkAccess("write", "", $this->media_pool->getRefId()))
{
($this->getMode() == ilMediaPoolTableGUI::IL_MEP_SELECT && $a_set["type"] == "mob") ||
($this->getMode() == ilMediaPoolTableGUI::IL_MEP_SELECT_CONTENT && $a_set["type"] == "pg")
))
{
$this->tpl->setCurrentBlock("chbox");
$this->tpl->setVariable("CHECKBOX_ID", $a_set["child"]);
$this->tpl->parseCurrentBlock();
$this->tpl->setCurrentBlock("tbl_content");
}
else if ($this->getMode() == ilMediaPoolTableGUI::IL_MEP_SELECT_SINGLE && $a_set["type"] == "mob")
{
$this->tpl->setCurrentBlock("radio");
$this->tpl->setVariable("RADIO_ID", $a_set["child"]);
$this->tpl->parseCurrentBlock();
$this->tpl->setCurrentBlock("tbl_content");
}
}
}

+ Here is the call graph for this function:

ilMediaPoolTableGUI::getInsertCommand ( )

Get inser command.

Returns
string inser command

Definition at line 152 of file class.ilMediaPoolTableGUI.php.

References $insert_command.

Referenced by prepareOutput().

{
}

+ Here is the caller graph for this function:

ilMediaPoolTableGUI::getItems ( )

Get items of current folder.

Definition at line 211 of file class.ilMediaPoolTableGUI.php.

References getMode(), IL_MEP_SELECT, IL_MEP_SELECT_CONTENT, and ilTable2GUI\setData().

Referenced by __construct().

{
if (!$this->all_objects)
{
$fobjs = $this->media_pool->getChilds($this->current_folder, "fold");
$f2objs = array();
foreach ($fobjs as $obj)
{
$f2objs[$obj["title"].":".$obj["child"]] = $obj;
}
ksort($f2objs);
// get current media objects / pages
{
$mobjs = $this->media_pool->getChilds($this->current_folder, "mob");
}
{
$mobjs = $this->media_pool->getChilds($this->current_folder, "pg");
}
else
{
$mobjs = $this->media_pool->getChildsExceptFolders($this->current_folder);
}
$m2objs = array();
foreach ($mobjs as $obj)
{
$m2objs[$obj["title"].":".$obj["child"]] = $obj;
}
ksort($m2objs);
// merge everything together
$objs = array_merge($f2objs, $m2objs);
}
else
{
$objs = $this->media_pool->getMediaObjects($this->filter["title"],
$this->filter["format"]);
}
//var_dump($objs);
$this->setData($objs);
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilMediaPoolTableGUI::getMode ( )

Get Mode.

Returns
string Mode

Definition at line 203 of file class.ilMediaPoolTableGUI.php.

Referenced by __construct(), fillRow(), getItems(), and prepareOutput().

{
return $this->mode;
}

+ Here is the caller graph for this function:

ilMediaPoolTableGUI::initFilter ( )

Init filter.

Reimplemented from ilTable2GUI.

Definition at line 160 of file class.ilMediaPoolTableGUI.php.

References $lng, ilTable2GUI\addFilterItem(), ilTextInputGUI\setMaxLength(), and ilSelectInputGUI\setOptions().

Referenced by __construct().

{
global $lng, $rbacreview, $ilUser;
// title/description
include_once("./Services/Form/classes/class.ilTextInputGUI.php");
$ti = new ilTextInputGUI($lng->txt("title"), "title");
$ti->setMaxLength(64);
$ti->setSize(20);
$this->addFilterItem($ti);
$ti->readFromSession();
$this->filter["title"] = $ti->getValue();
// format
include_once("./Services/Form/classes/class.ilSelectInputGUI.php");
$options = array(
"" => $lng->txt("mep_all"),
);
$formats = $this->media_pool->getUsedFormats();
$options = array_merge($options, $formats);
$si = new ilSelectInputGUI($this->lng->txt("mep_format"), "format");
$si->setOptions($options);
$this->addFilterItem($si);
$si->readFromSession();
$this->filter["format"] = $si->getValue();
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilMediaPoolTableGUI::prepareOutput ( )

Prepare output.

Parameters
@return

Reimplemented from ilTable2GUI.

Definition at line 261 of file class.ilMediaPoolTableGUI.php.

References $lng, ilTable2GUI\addCommandButton(), ilTable2GUI\addMultiCommand(), getInsertCommand(), getMode(), IL_MEP_SELECT, and IL_MEP_SELECT_CONTENT.

{
global $lng;
{
$this->addMultiCommand($this->getInsertCommand(), $lng->txt("insert"));
$this->addCommandButton("cancelCreate", $lng->txt("cancel"));
}
}

+ Here is the call graph for this function:

ilMediaPoolTableGUI::setInsertCommand (   $a_val)

Set inser command.

Parameters
stringinser command

Definition at line 142 of file class.ilMediaPoolTableGUI.php.

{
$this->insert_command = $a_val;
}
ilMediaPoolTableGUI::setMode (   $a_mode)

Set Mode.

Parameters
string$a_modeMode

Definition at line 193 of file class.ilMediaPoolTableGUI.php.

Referenced by __construct().

{
$this->mode = $a_mode;
}

+ Here is the caller graph for this function:

Field Documentation

ilMediaPoolTableGUI::$insert_command = "create_mob"

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

Referenced by getInsertCommand().

const ilMediaPoolTableGUI::IL_MEP_EDIT = "edit"
const ilMediaPoolTableGUI::IL_MEP_SELECT = "select"
const ilMediaPoolTableGUI::IL_MEP_SELECT_CONTENT = "selectc"
const ilMediaPoolTableGUI::IL_MEP_SELECT_SINGLE = "selectsingle"

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