5include_once(
"Services/Table/classes/class.ilTable2GUI.php");
 
   26    public function __construct($a_parent_obj, $a_parent_cmd, $a_page, $a_incl_hist)
 
   30        $this->ctrl = 
$DIC->ctrl();
 
   31        $this->lng = 
$DIC->language();
 
   32        $this->access = 
$DIC->access();
 
   35        $ilAccess = 
$DIC->access();
 
   37        $this->repo_tree = 
$DIC->repositoryTree();
 
   39        parent::__construct($a_parent_obj, $a_parent_cmd);
 
   40        $this->page = $a_page;
 
   41        $this->incl_hist = $a_incl_hist;
 
   45        $this->
setRowTemplate(
"tpl.mep_page_usage_row.html", 
"Modules/MediaPool");
 
   55        $usages = $this->page->getUsages($this->incl_hist);
 
   59        $agg_usages = array();
 
   60        foreach ($usages as $k => $usage) {
 
   61            $usage[
"trash"] = 
false;
 
   62            if (is_int(strpos($usage[
"type"], 
":"))) {
 
   63                $us_arr = explode(
":", $usage[
"type"]);
 
   66                if ($us_arr[1] == 
"pg") {
 
   68                    $usage[
"page"] = $page_obj;
 
   69                    $repo_tree = $this->repo_tree;
 
   71                        return $repo_tree->isInTree($ref_id);
 
   73                    $usage[
"ref_ids"] = $ref_ids;
 
   74                    if (count($ref_ids) == 0) {
 
   75                        $usage[
"trash"] = 
true;
 
   80            if ($usage[
"type"] == 
"clip") {
 
   83                if ($this->incl_hist || !$usage[
"trash"]) {
 
   84                    if (empty($agg_usages[$usage[
"type"] . 
":" . $usage[
"id"]])) {
 
   85                        $agg_usages[$usage[
"type"] . 
":" . $usage[
"id"]] = $usage;
 
   87                    $agg_usages[$usage[
"type"] . 
":" . $usage[
"id"]][
"versions"][] =
 
   88                        [
"hist_nr" => $usage[
"hist_nr"],
 
   89                         "lang" => $usage[
"lang"]];
 
   96            $agg_usages[] = array(
"type" => 
"clip", 
"cnt" => $clip_cnt);
 
  115        if (is_int(strpos($usage[
"type"], 
":"))) {
 
  116            $us_arr = explode(
":", $usage[
"type"]);
 
  117            $usage[
"type"] = $us_arr[1];
 
  118            $cont_type = $us_arr[0];
 
  122        include_once(
'./Services/Link/classes/class.ilLink.php');
 
  124        switch ($usage[
"type"]) {
 
  126                include_once(
"./Services/COPage/classes/class.ilPageObjectFactory.php");
 
  127                $page_obj = $usage[
"page"];
 
  131                switch ($cont_type) {
 
  133                        require_once(
"./Modules/LearningModule/classes/class.ilObjContentObject.php");
 
  134                        require_once(
"./Modules/LearningModule/classes/class.ilObjLearningModule.php");
 
  135                        require_once(
"./Modules/LearningModule/classes/class.ilLMObject.php");
 
  137                        $item[
"obj_type_txt"] = $this->lng->txt(
"obj_" . $cont_type);
 
  138                        $item[
"obj_title"] = $lm_obj->getTitle();
 
  139                        $item[
"sub_txt"] = $this->lng->txt(
"pg");
 
  148                        require_once(
"./Modules/Wiki/classes/class.ilWikiPage.php");
 
  149                        $item[
"obj_type_txt"] = $this->lng->txt(
"obj_wiki");
 
  151                        $item[
"sub_txt"] = $this->lng->txt(
"pg");
 
  160                        require_once(
"./Modules/Glossary/classes/class.ilGlossaryTerm.php");
 
  161                        require_once(
"./Modules/Glossary/classes/class.ilGlossaryDefinition.php");
 
  163                        $glo_id = ilGlossaryTerm::_lookGlossaryId($term_id);
 
  164                        $item[
"obj_type_txt"] = $this->lng->txt(
"obj_glo");
 
  166                        $item[
"sub_txt"] = $this->lng->txt(
"cont_term");
 
  175                        $item[
"obj_type_txt"] = $this->lng->txt(
"obj_" . $cont_type);
 
  184                if ($usage[
"trash"]) {
 
  185                    $item[
"obj_title"] .= 
" (" . 
$lng->txt(
"trash") . 
")";
 
  191                $item[
"obj_type_txt"] = $this->lng->txt(
"obj_mep");
 
  200                $item[
"obj_type_txt"] = $this->lng->txt(
"obj_mob");
 
  202                $item[
"sub_txt"] = $this->lng->txt(
"cont_link_area");
 
  207        if (is_array($usage[
"versions"]) && is_object($usage[
"page"])) {
 
  210            if (count($usage[
"versions"]) > 5) {
 
  212                $cnt = count($usage[
"versions"]) - 5;
 
  213                for (
$i = 0; 
$i < $cnt; 
$i++) {
 
  214                    unset($usage[
"versions"][
$i]);
 
  217            foreach ($usage[
"versions"] as 
$version) {
 
  219                    $version[
"hist_nr"] = $this->lng->txt(
"cont_current_version");
 
  228            $this->tpl->setCurrentBlock(
"versions");
 
  229            $this->tpl->setVariable(
"TXT_VERSIONS", $this->lng->txt(
"cont_versions"));
 
  230            $this->tpl->setVariable(
"VAL_VERSIONS", $ver);
 
  231            $this->tpl->parseCurrentBlock();
 
  235        if ($item[
"obj_type_txt"] != 
"") {
 
  236            $this->tpl->setCurrentBlock(
"type");
 
  237            $this->tpl->setVariable(
"TXT_TYPE", $this->lng->txt(
"type"));
 
  238            $this->tpl->setVariable(
"VAL_TYPE", $item[
"obj_type_txt"]);
 
  239            $this->tpl->parseCurrentBlock();
 
  242        if ($usage[
"type"] != 
"clip") {
 
  243            if ($item[
"obj_link"]) {
 
  244                $this->tpl->setCurrentBlock(
"linked_item");
 
  245                $this->tpl->setVariable(
"TXT_OBJECT", $item[
"obj_title"]);
 
  246                $this->tpl->setVariable(
"HREF_LINK", $item[
"obj_link"]);
 
  247                $this->tpl->parseCurrentBlock();
 
  249                $this->tpl->setVariable(
"TXT_OBJECT_NO_LINK", $item[
"obj_title"]);
 
  252            if ($item[
"sub_txt"] != 
"") {
 
  253                $this->tpl->setVariable(
"SEP", 
", ");
 
  254                $this->tpl->setVariable(
"SUB_TXT", $item[
"sub_txt"]);
 
  255                if ($item[
"sub_title"] != 
"") {
 
  256                    $this->tpl->setVariable(
"SEP2", 
": ");
 
  257                    $this->tpl->setVariable(
"SUB_TITLE", $item[
"sub_title"]);
 
  261            $this->tpl->setVariable(
"TXT_OBJECT_NO_LINK", $this->lng->txt(
"cont_users_have_mob_in_clip1") .
 
  262                " " . $usage[
"cnt"] . 
" " . $this->lng->txt(
"cont_users_have_mob_in_clip2"));
 
  271        foreach ($ref_ids as $ref_id) {
 
  272            if ($ilAccess->checkAccess(
"write", 
"", $ref_id)) {
 
An exception for terminatinating execution or to throw for unit testing.
static _lookupTermId($a_def_id)
Looks up term id for a definition id.
static _lookGlossaryTerm($term_id)
get glossary term
static _lookupTitle($a_obj_id)
Lookup title.
static _getStaticLink( $a_ref_id, $a_type='', $a_fallback_goto=true, $append="")
Get static link.
TableGUI class for media pool page usages listing.
getFirstWritableRefId($a_obj_id)
fillRow($a_set)
Standard Version of Fill Row.
__construct($a_parent_obj, $a_parent_cmd, $a_page, $a_incl_hist)
Constructor.
Class ilObjLearningModule.
static _lookupTitle($a_id)
lookup object title
static _getAllReferences($a_id)
get all reference ids of object
static getInstance($a_parent_type, $a_id=0, $a_old_nr=0, $a_lang="-")
Get page object instance.
setEnableHeader($a_enableheader)
Set Enable Header.
setTitle($a_title, $a_icon=0, $a_icon_alt=0)
Set title and title icon.
setData($a_data)
set table data @access public
setRowTemplate($a_template, $a_template_dir="")
Set row template.
addColumn( $a_text, $a_sort_field="", $a_width="", $a_is_checkbox_action_column=false, $a_class="", $a_tooltip="", $a_tooltip_with_html=false)
Add a column to the header.
setFormAction($a_form_action, $a_multipart=false)
Set Form action parameter.
static lookupTitle($a_page_id)
Checks whether a page with given title exists.