ILIAS  Release_3_10_x_branch Revision 61812
 All Data Structures Namespaces Files Functions Variables Groups Pages
ilObjContentObjectGUI Class Reference

Class ilObjContentObjectGUI. More...

+ Inheritance diagram for ilObjContentObjectGUI:
+ Collaboration diagram for ilObjContentObjectGUI:

Public Member Functions

 ilObjContentObjectGUI ($a_data, $a_id=0, $a_call_by_reference=true, $a_prepare_output=false)
 Constructor.
executeCommand ()
 execute command
 _forwards ()
 properties ()
 edit properties form
 explorer ()
 output explorer tree
 popup ()
 popup window for wysiwyg editor
 proceedDragDrop ()
 proceed drag and drop operations on pages/chapters
 saveProperties ()
 save properties
 createObject ()
 form for new content object creation
 saveObject ()
 save new content object to db
 addBibItemObject ($a_target="")
 add bib item (admin call)
 addBibItem ()
 add bib item (module call)
 deleteBibItemObject ($a_target="")
 delete bib item (admin call)
 deleteBibItem ()
 delete bib item (module call)
 editBibItemObject ($a_target="")
 edit bib items (admin call)
 editBibItem ()
 edit bib items (module call)
 saveBibItemObject ($a_target="")
 save bib item (admin call)
 saveBibItem ()
 save bib item (module call)
 exportObject ()
 export object
 importObject ()
 display dialogue for importing XML-LeaningObjects
 importFileObject ()
 display status information or report errors messages in case of error
 chapters ()
 show chapters
 pages ()
 listLinks ()
 List all broken links.
 activatePages ()
 activates or deactivates pages
 deactivateJSChapterEditing ()
 Deactivate Javascript Chapter Editing.
 activateJSChapterEditing ()
 Deactivate Javascript Chapter Editing.
 pastePage ()
 paste page
 copyPage ()
 copy page
 delete ($a_parent_subobj_id=0)
 confirm deletion screen for page object and structure object deletion
 cancelDelete ()
 cancel delete
 confirmedDelete ($a_parent_subobj_id=0)
 delete page object or structure objects
 getContextPath ($a_endnode_id, $a_startnode_id=1)
 get context path in content object tree
 showActions ()
 show possible action (form buttons)
 perm ()
 edit permissions
 permSave ()
 save permissions
 info ()
 info permissions
 addRole ()
 add local role
 owner ()
 show owner of content object
 view ()
 view content object
 moveChapter ($a_parent_subobj_id=0)
 move a single chapter (selection)
 copyChapter ($a_parent_subobj_id=0)
 copy a single chapter (selection)
 pasteChapter ($a_parent_subobj_id=0)
 paste chapter
 movePage ()
 move page
 cancel ()
 cancel action
 export ()
 export content object
 exportMenu ()
 show list of export files
 exportList ()
 viewExportLog ()
 downloadExportFile ()
 download export file
 publishExportFile ()
 download export file
 downloadPDFFile ()
 download export file
 confirmDeleteExportFile ()
 confirmation screen for export file deletion
 cancelDeleteExportFile ()
 cancel deletion of export files
 deleteExportFile ()
 delete export files
 fixTreeConfirm ()
 confirm screen for tree fixing
 cancelObject ($in_rep=false)
 cancel action and go back to previous page public
 cancelFixTree ()
 cancel tree fixing
 fixTree ()
 fix tree
 setilLMMenu ($a_offline=false, $a_export_format="", $a_active="content", $a_use_global_tabs=false)
 get lm menu html
 createPDF ()
 export content object
 exportHTML ()
 create html package
 exportSCORM ()
 create scorm package
 addLocations ($a_omit_obj_id=false)
 display locator
 setTabs ()
 output tabs
 getTabs (&$tabs_gui)
 adds tabs to tab gui object
 editPublicSection ()
 savePublicSection ()
 history ()
 history
 linkChecker ()
 saveLinkCheck ()
 refreshLinkCheck ()
 __initLinkChecker ()
 __initLMMenuEditor ()
 addMenuEntry ()
 display add menu entry form
 saveMenuEntry ()
 save new menu entry
 deleteMenuEntry ()
 drop a menu entry
 editMenuEntry ()
 edit menu entry form
 updateMenuEntry ()
 update a menu entry
 showEntrySelector ()
 selectHeader ()
 select page as header
 selectFooter ()
 select page as footer
 saveAllTitles ()
 Save all titles of chapters/pages.
 insertChapter ()
 Insert (multiple) chapters at node.
 insertChapterClip ()
 Insert Chapter from clipboard.
 _goto ($a_target)
 redirect script
 cutItems ($a_return="chapters")
 Copy items to clipboard, then cut them from the current tree.
 copyItems ()
 Copy items to clipboard.
 cutChapter ()
 Cut chapter(s)
- Public Member Functions inherited from ilObjectGUI
 ilObjectGUI ($a_data, $a_id=0, $a_call_by_reference=true, $a_prepare_output=true)
 Constructor public.
 withReferences ()
 determines wether objects are referenced or not (got ref ids or not)
 setCreationMode ($a_mode=true)
 if true, a creation screen is displayed the current $_GET[ref_id] don't belong to the current class! the mode is determined in ilrepositorygui
 getCreationMode ()
 get creation mode
 assignObject ()
 prepareOutput ()
 prepare output
 setTitleAndDescription ()
 called by prepare output
 showUpperIcon ()
 showMountWebfolderIcon ()
 setAdminTabs ()
 set admin tabs public
 getAdminTabs (&$tabs_gui)
 administration tabs show only permissions and trash folder
 getHTML ()
 setActions ($a_actions="")
 set possible actions for objects in list.
 setSubObjects ($a_sub_objects="")
 set possible subobjects for this object.
 setLocator ()
 set Locator
 addLocatorItems ()
 should be overwritten to add object specific items (repository items are preloaded)
 omitLocator ($a_omit=true)
 addAdminLocatorItems ()
 should be overwritten to add object specific items (repository items are preloaded)
 undeleteObject ()
 get object back from trash
 insertSavedNodes ($a_source_id, $a_dest_id, $a_tree_id, &$a_affected_ids)
 recursive method to insert all saved nodes of the clipboard (maybe this function could be moved to a rbac class ?)
 confirmedDeleteObject ()
 confirmed deletion if object -> objects are moved to trash
 cancelDeleteObject ()
 cancel deletion of object
 removeFromSystemObject ()
 remove objects from trash bin and all entries therefore every object needs a specific deleteObject() method
 removeDeletedNodes ($a_node_id, $a_checked, $a_delete_objects, &$a_affected_ids)
 remove already deleted objects within the objects in trash recursive function
 editObject ()
 edit object
 displayEditForm ($fields)
 display edit form (usually called by editObject)
 updateObject ()
 updates object entry in object_data
 afterUpdate ()
 permObject ()
 show permissions of current node
 getFormAction ($a_cmd, $a_formaction="")
 get form action for command (command is method name without "Object", e.g.
 setFormAction ($a_cmd, $a_formaction)
 set specific form action for command
 getReturnLocation ($a_cmd, $a_location="")
 get return location for command (command is method name without "Object", e.g.
 setReturnLocation ($a_cmd, $a_location)
 set specific return location for command
 getTargetFrame ($a_cmd, $a_target_frame="")
 get target frame for command (command is method name without "Object", e.g.
 setTargetFrame ($a_cmd, $a_target_frame)
 set specific target frame for command
 permSaveObject ()
 save permissions
 isVisible ($a_ref_id, $a_type)
 displayList ()
 display object list
 viewObject ()
 list childs of current object
 deleteObject ($a_error=false)
 display deletion confirmation screen only for referenced objects.
 trashObject ()
 show trash content of object
 addRoleObject ()
 adds a local role This method is only called when choose the option 'you may add local roles'.
 showActions ($with_subobjects=false)
 show possible action (form buttons)
 getActions ()
 Get Actions.
 showPossibleSubObjects ()
 show possible subobjects (pulldown menu)
 getTemplateFile ($a_cmd, $a_type="")
 get a template blockfile format: tpl.
 getTitlesByRefId ($a_ref_ids)
 get Titles of objects this method is used for error messages in methods cut/copy/paste
 __showButton ($a_cmd, $a_text, $a_target= '')
 hitsperpageObject ()
__initTableGUI ()
 __setTableGUIBasicData (&$tbl, &$result_set, $a_from="")
 standard implementation for tables use 'from' variable use different initial setting of table
 __showClipboardTable ($a_result_set, $a_from="")
 infoObject ()
 __buildRoleFilterSelect ()
 __filterRoles ($a_roles, $a_filter)
 ownerObject ()
 changeOwnerObject ()
 redirectToRefId ($a_ref_id, $a_cmd="")
 redirects to (repository) view per ref id usually to a container and usually used at the end of a save/import method where the object gui type (of the new object) doesn't match with the type of the current $_GET["ref_id"] value
 fillCloneTemplate ($a_tpl_varname, $a_type)
 Fill object clone template This method can be called from any object GUI class that wants to offer object cloning.
 fillCloneSearchTemplate ($a_tpl_varname, $a_type)
 Add an object search in case the number of existing objects is too big to offer a selection list.
 cloneAllObject ()
 Clone single (not container object) Method is overwritten in ilContainerGUI.
 copyWizardHasOptions ($a_mode)
 Check if there is any modules specific option.
 getCenterColumnHTML ()
 Get center column.
 getRightColumnHTML ()
 Display right column.
 setColumnSettings ($column_gui)
 May be overwritten in subclasses.
 checkPermission ($a_perm, $a_cmd="")

Data Fields

 $ctrl
- Data Fields inherited from ilObjectGUI
const COPY_WIZARD_NEEDS_PAGE = 1
 $ilias
 $objDefinition
 $tpl
 $tree
 $lng
 $data
 $object
 $ref_id
 $obj_id
 $maxcount
 $formaction
 $return_location
 $target_frame
 $tab_target_script
 $actions
 $sub_objects
 $omit_locator = false

Additional Inherited Members

- Protected Member Functions inherited from ilObjectGUI
 searchCloneSourceObject ()
 Search clone source by title.
 buildCloneSelect ($existing_objs)
 Build a select box for clonable objects (permission write)

Detailed Description

Member Function Documentation

ilObjContentObjectGUI::__initLinkChecker ( )

Definition at line 3093 of file class.ilObjContentObjectGUI.php.

Referenced by linkChecker(), and refreshLinkCheck().

{
global $ilDB;
include_once './classes/class.ilLinkChecker.php';
$this->link_checker_obj =& new ilLinkChecker($ilDB,false);
$this->link_checker_obj->setObjId($this->object->getId());
return true;
}

+ Here is the caller graph for this function:

ilObjContentObjectGUI::__initLMMenuEditor ( )

Definition at line 3105 of file class.ilObjContentObjectGUI.php.

Referenced by deleteMenuEntry(), editMenuEntry(), properties(), saveMenuEntry(), saveProperties(), setilLMMenu(), and updateMenuEntry().

{
include_once './Modules/LearningModule/classes/class.ilLMMenuEditor.php';
$this->lmme_obj =& new ilLMMenuEditor();
$this->lmme_obj->setObjId($this->object->getId());
return true;
}

+ Here is the caller graph for this function:

ilObjContentObjectGUI::_forwards ( )

Definition at line 262 of file class.ilObjContentObjectGUI.php.

{
return array("ilLMPageObjectGUI", "ilStructureObjectGUI","ilObjStyleSheetGUI");
}
ilObjContentObjectGUI::_goto (   $a_target)

redirect script

Parameters
string$a_target

Definition at line 3489 of file class.ilObjContentObjectGUI.php.

References $_GET, $ilErr, ilObjectGUI\$lng, ilObject\_lookupObjId(), ilObject\_lookupTitle(), exit, and ilUtil\sendInfo().

{
global $ilAccess, $ilErr, $lng;
if ($ilAccess->checkAccess("read", "", $a_target))
{
$_GET["baseClass"] = "ilLMPresentationGUI";
$_GET["ref_id"] = $a_target;
include("ilias.php");
} else if ($ilAccess->checkAccess("visible", "", $a_target))
{
$_GET["baseClass"] = "ilLMPresentationGUI";
$_GET["ref_id"] = $a_target;
$_GET["cmd"] = "infoScreen";
include("ilias.php");
}
else if ($ilAccess->checkAccess("read", "", ROOT_FOLDER_ID))
{
$_GET["cmd"] = "frameset";
$_GET["target"] = "";
$_GET["ref_id"] = ROOT_FOLDER_ID;
ilUtil::sendInfo(sprintf($lng->txt("msg_no_perm_read_item"),
include("repository.php");
}
$ilErr->raiseError($lng->txt("msg_no_perm_read_lm"), $ilErr->FATAL);
}

+ Here is the call graph for this function:

ilObjContentObjectGUI::activateJSChapterEditing ( )

Deactivate Javascript Chapter Editing.

Definition at line 1488 of file class.ilObjContentObjectGUI.php.

References $ilCtrl.

{
global $ilCtrl, $ilUser;
$ilUser->writePref("lm_js_chapter_editing", "enable");
$ilCtrl->redirect($this, "chapters");
}
ilObjContentObjectGUI::activatePages ( )

activates or deactivates pages

Definition at line 1459 of file class.ilObjContentObjectGUI.php.

References ilLMObject\_lookupActive(), and ilLMObject\_writeActive().

{
if (is_array($_POST["id"]))
{
foreach($_POST["id"] as $id)
{
//echo "-".$a_id."-".!$act."-";
}
}
$this->ctrl->redirect($this, "pages");
}

+ Here is the call graph for this function:

ilObjContentObjectGUI::addBibItem ( )

add bib item (module call)

Definition at line 911 of file class.ilObjContentObjectGUI.php.

References addBibItemObject(), ilCtrl\IL_RTOKEN_NAME, and setTabs().

{
$this->setTabs();
// questionable workaround to make this old stuff work
$this->ctrl->setParameter($this, ilCtrl::IL_RTOKEN_NAME, $this->ctrl->getRequestToken());
$this->addBibItemObject($this->ctrl->getLinkTarget($this));
}

+ Here is the call graph for this function:

ilObjContentObjectGUI::addBibItemObject (   $a_target = "")

add bib item (admin call)

Definition at line 880 of file class.ilObjContentObjectGUI.php.

References $_GET, ilObjectGUI\$data, and ilUtil\sendInfo().

Referenced by addBibItem().

{
include_once "./Modules/LearningModule/classes/class.ilBibItemGUI.php";
$bib_gui =& new ilBibItemGUI();
$bib_gui->setObject($this->object);
$bibItemName = $_POST["bibItemName"] ? $_POST["bibItemName"] : $_GET["bibItemName"];
$bibItemIndex = $_POST["bibItemIndex"] ? $_POST["bibItemIndex"] : $_GET["bibItemIndex"];
if ($bibItemIndex == "")
$bibItemIndex = 0;
$bibItemPath = $_POST["bibItemPath"] ? $_POST["bibItemPath"] : $_GET["bibItemPath"];
if ($bibItemName != "")
{
$bib_gui->bib_obj->add($bibItemName, $bibItemPath, $bibItemIndex);
$data = $bib_gui->bib_obj->getElement("BibItem");
$bibItemIndex = (count($data) - 1);
}
else
{
ilUtil::sendInfo($this->lng->txt("bibitem_choose_element"), true);
}
if ($a_target == "")
{
$a_target = "adm_object.php?ref_id=" . $this->object->getRefId();
}
$bib_gui->edit("ADM_CONTENT", "adm_content", $a_target, $bibItemIndex);
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilObjContentObjectGUI::addLocations (   $a_omit_obj_id = false)

display locator

Parameters
boolean$a_omit_obj_idset to true, if obj id is not page id (e.g. permission gui)

Definition at line 2691 of file class.ilObjContentObjectGUI.php.

References $_GET, ilObjectGUI\$lng, ilObjectGUI\$obj_id, $title, ilObjectGUI\$tree, ilFrameTargetInfo\_getFrame(), ilLMPageObject\_getPresentationTitle(), ilObject\_lookupObjId(), and ilObject\_lookupTitle().

Referenced by executeCommand().

{
global $lng, $tree, $ilLocator;
//$ilLocator->clearItems();
$this->ctrl->addLocation(
"...",
"");
$par_id = $tree->getParentId($_GET["ref_id"]);
$this->ctrl->addLocation(
"repository.php?cmd=frameset&ref_id=".$par_id,
ilFrameTargetInfo::_getFrame("MainContent"), $par_id);
if (!$a_omit_obj_id)
{
$obj_id = $_GET["obj_id"];
}
$lmtree =& $this->object->getTree();
if (($obj_id != 0) && $lmtree->isInTree($obj_id))
{
$path = $lmtree->getPathFull($obj_id);
}
else
{
$path = $lmtree->getPathFull($lmtree->getRootId());
if ($obj_id != 0)
{
$path[] = array("type" => "pg", "child" => $this->obj_id,
"title" => ilLMPageObject::_getPresentationTitle($this->obj_id));
}
}
$modifier = 1;
foreach ($path as $key => $row)
{
if ($row["child"] == 1)
{
$this->ctrl->setParameter($this, "obj_id", "");
$this->ctrl->addLocation(
$this->object->getTitle(),
$this->ctrl->getLinkTarget($this, "chapters"), "", $_GET["ref_id"]);
}
else
{
$title = $row["title"];
switch($row["type"])
{
case "st":
$this->ctrl->setParameterByClass("ilstructureobjectgui", "obj_id", $row["child"]);
$this->ctrl->addLocation(
$this->ctrl->getLinkTargetByClass("ilstructureobjectgui", "view"));
break;
case "pg":
$this->ctrl->setParameterByClass("illmpageobjectgui", "obj_id", $row["child"]);
$this->ctrl->addLocation(
$this->ctrl->getLinkTargetByClass("illmpageobjectgui", "edit"));
break;
}
}
}
if (!$a_omit_obj_id)
{
$this->ctrl->setParameter($this, "obj_id", $_GET["obj_id"]);
}
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilObjContentObjectGUI::addMenuEntry ( )

display add menu entry form

Definition at line 3118 of file class.ilObjContentObjectGUI.php.

References $_GET, ilObjectGUI\$obj_id, $title, ilObject\_lookupObjectId(), ilObject\_lookupTitle(), ilObject\_lookupType(), and setTabs().

{
$this->setTabs();
$this->tpl->addBlockFile("ADM_CONTENT", "adm_content", "tpl.lm_menu_entry_form.html","Modules/LearningModule");
if (isset($_GET["link_ref_id"]))
{
$obj_type = ilObject::_lookupType($_GET["link_ref_id"],true);
$target_link = $obj_type."_".$_GET["link_ref_id"];
$this->tpl->setVariable("TITLE", $title);
$this->tpl->setVariable("TARGET", $target_link);
$this->tpl->setVariable("LINK_REF_ID", $_GET["link_ref_id"]);
}
$this->tpl->setVariable("FORMACTION", $this->ctrl->getFormAction($this, "saveMenuEntry"));
$this->tpl->setVariable("TXT_NEW_ENTRY", $this->lng->txt("lm_menu_new_entry"));
$this->tpl->setVariable("TXT_TARGET", $this->lng->txt("lm_menu_entry_target"));
$this->tpl->setVariable("TXT_TITLE", $this->lng->txt("lm_menu_entry_title"));
$this->tpl->setVariable("BTN_NAME", "saveMenuEntry");
$this->tpl->setVariable("BTN_TEXT", $this->lng->txt("save"));
$this->tpl->setVariable("BTN_NAME2", "showEntrySelector");
$this->tpl->setVariable("BTN_TEXT2", $this->lng->txt("lm_menu_select_internal_object"));
//$this->tpl->parseCurrentBlock();
}

+ Here is the call graph for this function:

ilObjContentObjectGUI::addRole ( )

add local role

Definition at line 1835 of file class.ilObjContentObjectGUI.php.

References ilObjectGUI\addRoleObject(), and ilObjectGUI\setReturnLocation().

{
$this->setReturnLocation("addRole", $this->ctrl->getLinkTarget($this, "perm"));
$this->addRoleObject();
}

+ Here is the call graph for this function:

ilObjContentObjectGUI::cancel ( )

cancel action

Definition at line 2096 of file class.ilObjContentObjectGUI.php.

References $_GET.

{
if ($_GET["new_type"] == "pg")
{
$this->ctrl->redirect($this, "pages");
}
else
{
$this->ctrl->redirect($this, "chapters");
}
}
ilObjContentObjectGUI::cancelDelete ( )

cancel delete

Definition at line 1666 of file class.ilObjContentObjectGUI.php.

References $_GET.

{
session_unregister("saved_post");
$this->ctrl->redirect($this, $_GET["backcmd"]);
}
ilObjContentObjectGUI::cancelDeleteExportFile ( )

cancel deletion of export files

Definition at line 2413 of file class.ilObjContentObjectGUI.php.

{
session_unregister("ilExportFiles");
$this->ctrl->redirect($this, "exportList");
}
ilObjContentObjectGUI::cancelFixTree ( )

cancel tree fixing

Definition at line 2480 of file class.ilObjContentObjectGUI.php.

{
$this->ctrl->redirect($this, "properties");
}
ilObjContentObjectGUI::cancelObject (   $in_rep = false)

cancel action and go back to previous page public

Reimplemented from ilObjectGUI.

Definition at line 2470 of file class.ilObjContentObjectGUI.php.

References $_GET, ilUtil\redirect(), and ilUtil\sendInfo().

{
ilUtil::sendInfo($this->lng->txt("msg_cancel"),true);
ilUtil::redirect("repository.php?cmd=frameset&ref_id=".$_GET["ref_id"]);
//$this->ctrl->redirectByClass("ilrepositorygui", "frameset");
}

+ Here is the call graph for this function:

ilObjContentObjectGUI::chapters ( )

show chapters

Definition at line 1162 of file class.ilObjContentObjectGUI.php.

References $ilCtrl, ilObjectGUI\$lng, ilObjectGUI\$tree, ilStructureObject\_getPresentationTitle(), formSelect(), ilUtil\getImagePath(), IL_FIRST_NODE, ilObjectGUI\setActions(), ilFormGUI\setFormAction(), setTabs(), showActions(), and ilUtil\switchColor().

{
global $tree, $lng, $ilCtrl, $ilUser;
$this->setTabs();
if ($ilUser->getPref("lm_js_chapter_editing") != "disable")
{
$ilCtrl->setParameter($this, "backcmd", "chapters");
include_once("./Modules/LearningModule/classes/class.ilChapterHierarchyFormGUI.php");
$form_gui = new ilChapterHierarchyFormGUI($this->object->getType());
$form_gui->setFormAction($ilCtrl->getFormAction($this));
$form_gui->setTitle($this->object->getTitle());
$form_gui->setIcon(ilUtil::getImagePath("icon_lm.gif"));
$form_gui->setTree($this->lm_tree);
$form_gui->setMaxDepth(0);
$form_gui->setCurrentTopNodeId($this->tree->getRootId());
$form_gui->addMultiCommand($lng->txt("delete"), "delete");
$form_gui->addMultiCommand($lng->txt("cut"), "cutItems");
$form_gui->addMultiCommand($lng->txt("copy"), "copyItems");
$form_gui->setDragIcon(ilUtil::getImagePath("icon_st_s.gif"));
$form_gui->addCommand($lng->txt("cont_save_all_titles"), "saveAllTitles");
$up_gui = ($this->object->getType() == "dbk")
? "ilobjdlbookgui"
: "ilobjlearningmodulegui";
$form_gui->setExplorerUpdater("tree", "tree_div",
$ilCtrl->getLinkTargetByClass($up_gui, "explorer", "", true));
$ctpl = new ilTemplate("tpl.chap_and_pages.html", true, true, "Modules/LearningModule");
$ctpl->setVariable("HIERARCHY_FORM", $form_gui->getHTML());
$ilCtrl->setParameter($this, "obj_id", "");
$ctpl->setVariable("HREF_NO_JS_EDIT",
$ilCtrl->getLinkTarget($this, "deactivateJSChapterEditing"));
$ctpl->setVariable("TXT_NO_JS_EDIT",
$lng->txt("cont_not_js_chap_editing"));
$this->tpl->setContent($ctpl->get());
}
else
{
$this->tpl->addBlockFile("ADM_CONTENT", "adm_content", "tpl.structure_edit.html", "Modules/LearningModule");
$num = 0;
$this->ctrl->setParameter($this, "backcmd", "chapters");
$this->tpl->setVariable("FORMACTION", $this->ctrl->getFormAction($this));
$this->tpl->setVariable("HEADER_TEXT", $this->lng->txt("cont_chapters"));
$this->tpl->setVariable("CHECKBOX_TOP", IL_FIRST_NODE);
$cnt = 0;
$childs = $this->lm_tree->getChilds($this->lm_tree->getRootId());
foreach ($childs as $child)
{
if($child["type"] != "st")
{
continue;
}
$this->tpl->setCurrentBlock("table_row");
// color changing
$css_row = ilUtil::switchColor($cnt++,"tblrow1","tblrow2");
// checkbox
$this->tpl->setVariable("CHECKBOX_ID", $child["obj_id"]);
$this->tpl->setVariable("CSS_ROW", $css_row);
$this->tpl->setVariable("IMG_OBJ", ilUtil::getImagePath("icon_st.gif"));
// link
$this->ctrl->setParameter($this, "backcmd", "");
$this->ctrl->setParameterByClass("ilStructureObjectGUI", "obj_id", $child["obj_id"]);
$this->tpl->setVariable("LINK_TARGET",
$this->ctrl->getLinkTargetByClass("ilStructureObjectGUI", "view"));
// title
$this->tpl->setVariable("TEXT_CONTENT",
$this->object->isActiveNumbering()));
$this->tpl->parseCurrentBlock();
}
$paste_active = false;
if ($ilUser->clipboardHasObjectsOfType("st"))
{
$paste_active = true;
}
if($cnt == 0 && !$paste_active)
{
$this->tpl->setCurrentBlock("notfound");
$this->tpl->setVariable("NUM_COLS", 3);
$this->tpl->setVariable("TXT_OBJECT_NOT_FOUND", $this->lng->txt("obj_not_found"));
$this->tpl->parseCurrentBlock();
}
else
{
// SHOW VALID ACTIONS
$this->tpl->setVariable("NUM_COLS", 3);
if ($cnt > 0)
{
$acts = array("delete" => "delete", "cutChapter" => "cut",
"copyChapter" => "copyChapter");
}
if ($paste_active)
{
$acts["pasteChapter"] = "pasteChapter";
}
$this->setActions($acts);
$this->showActions();
}
// SHOW POSSIBLE SUB OBJECTS
$this->tpl->setVariable("NUM_COLS", 3);
$subobj = array("st");
$opts = ilUtil::formSelect(12,"new_type",$subobj);
$this->tpl->setCurrentBlock("add_object");
$this->tpl->setVariable("SELECT_OBJTYPE", $opts);
$this->tpl->setVariable("BTN_NAME", "create");
$this->tpl->setVariable("TXT_ADD", $this->lng->txt("insert"));
$this->tpl->parseCurrentBlock();
$this->tpl->setCurrentBlock("form");
$this->tpl->parseCurrentBlock();
$this->tpl->setVariable("HREF_JS_EDIT",
$ilCtrl->getLinkTarget($this, "activateJSChapterEditing"));
$this->tpl->setVariable("TXT_JS_EDIT",
$lng->txt("cont_js_chap_editing"));
}
}

+ Here is the call graph for this function:

ilObjContentObjectGUI::confirmDeleteExportFile ( )

confirmation screen for export file deletion

Definition at line 2362 of file class.ilObjContentObjectGUI.php.

References $_SESSION, $file, ilUtil\getImagePath(), ilUtil\sendInfo(), setTabs(), and ilUtil\switchColor().

{
if(!isset($_POST["file"]))
{
$this->ilias->raiseError($this->lng->txt("no_checkbox"),$this->ilias->error_obj->MESSAGE);
}
$this->setTabs();
// SAVE POST VALUES
$_SESSION["ilExportFiles"] = $_POST["file"];
$this->tpl->addBlockFile("ADM_CONTENT", "adm_content", "tpl.confirm_deletion.html", "Modules/LearningModule");
ilUtil::sendInfo($this->lng->txt("info_delete_sure"));
$this->tpl->setVariable("FORMACTION", $this->ctrl->getFormAction($this));
// BEGIN TABLE HEADER
$this->tpl->setCurrentBlock("table_header");
$this->tpl->setVariable("TEXT",$this->lng->txt("objects"));
$this->tpl->parseCurrentBlock();
// BEGIN TABLE DATA
$counter = 0;
foreach($_POST["file"] as $file)
{
$file = explode(":", $file);
$this->tpl->setCurrentBlock("table_row");
$this->tpl->setVariable("CSS_ROW",ilUtil::switchColor(++$counter,"tblrow1","tblrow2"));
$this->tpl->setVariable("TEXT_CONTENT", $file[1]." (".$file[0].")");
$this->tpl->parseCurrentBlock();
}
// cancel/confirm button
$this->tpl->setVariable("IMG_ARROW",ilUtil::getImagePath("arrow_downright.gif"));
$buttons = array( "cancelDeleteExportFile" => $this->lng->txt("cancel"),
"deleteExportFile" => $this->lng->txt("confirm"));
foreach ($buttons as $name => $value)
{
$this->tpl->setCurrentBlock("operation_btn");
$this->tpl->setVariable("BTN_NAME",$name);
$this->tpl->setVariable("BTN_VALUE",$value);
$this->tpl->parseCurrentBlock();
}
}

+ Here is the call graph for this function:

ilObjContentObjectGUI::confirmedDelete (   $a_parent_subobj_id = 0)

delete page object or structure objects

Parameters
int$a_parent_subobj_idid of parent object (structure object) of the objects, that should be deleted (or no parent object id for top level)

Definition at line 1681 of file class.ilObjContentObjectGUI.php.

References $_GET, $_SESSION, ilObjectGUI\$tree, ilHistory\_createEntry(), ilLMObject\_lookupTitle(), ilLMObjectFactory\getInstance(), IL_FIRST_NODE, and ilUtil\sendInfo().

Referenced by ilLMObjectGUI\confirmedDelete().

{
$tree = new ilTree($this->object->getId());
$tree->setTableNames('lm_tree','lm_data');
$tree->setTreeTablePK("lm_id");
// check number of objects
if (!isset($_SESSION["saved_post"]))
{
$this->ilias->raiseError($this->lng->txt("no_checkbox"),$this->ilias->error_obj->MESSAGE);
}
// delete all selected objects
foreach ($_SESSION["saved_post"] as $id)
{
if ($id != IL_FIRST_NODE)
{
$obj =& ilLMObjectFactory::getInstance($this->object, $id, false);
$node_data = $tree->getNodeData($id);
if (is_object($obj))
{
$obj->setLMId($this->object->getId());
include_once("classes/class.ilHistory.php");
ilHistory::_createEntry($this->object->getId(), "delete_".$obj->getType(),
array(ilLMObject::_lookupTitle($id), $id),
$this->object->getType());
$obj->delete();
}
if($tree->isInTree($id))
{
$tree->deleteTree($node_data);
}
}
}
// check the tree
$this->object->checkTree();
// feedback
ilUtil::sendInfo($this->lng->txt("info_deleted"),true);
if ($a_parent_subobj_id == 0)
{
$this->ctrl->redirect($this, $_GET["backcmd"]);
}
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilObjContentObjectGUI::copyChapter (   $a_parent_subobj_id = 0)

copy a single chapter (selection)

Definition at line 1904 of file class.ilObjContentObjectGUI.php.

References copyItems(), IL_FIRST_NODE, ilUtil\sendInfo(), and ilEditClipboard\storeContentObject().

Referenced by ilStructureObjectGUI\copyChapter().

{
$this->copyItems();
return;
if(!isset($_POST["id"]))
{
$this->ilias->raiseError($this->lng->txt("no_checkbox"),$this->ilias->error_obj->MESSAGE);
}
if(count($_POST["id"]) > 1)
{
$this->ilias->raiseError($this->lng->txt("cont_select_max_one_item"),$this->ilias->error_obj->MESSAGE);
}
if(count($_POST["id"]) == 1 && $_POST["id"][0] == IL_FIRST_NODE)
{
$this->ilias->raiseError($this->lng->txt("cont_select_item"), $this->ilias->error_obj->MESSAGE);
}
// SAVE POST VALUES
ilEditClipboard::storeContentObject("st", $_POST["id"][0], "copy");
ilUtil::sendInfo($this->lng->txt("cont_chap_copy_select_target_now"), true);
if ($a_parent_subobj_id == 0)
{
$this->ctrl->redirect($this, "chapters");
}
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilObjContentObjectGUI::copyItems ( )

Copy items to clipboard.

Definition at line 3558 of file class.ilObjContentObjectGUI.php.

References $ilCtrl, ilObjectGUI\$lng, ilLMObject\clipboardCopy(), ilUtil\sendInfo(), ilEditClipboard\setAction(), and ilUtil\stripSlashesArray().

Referenced by copyChapter().

{
global $ilCtrl, $lng;
$items = ilUtil::stripSlashesArray($_POST["id"]);
if (!is_array($items))
{
ilUtil::sendInfo($lng->txt("no_checkbox"), true);
$ilCtrl->redirect($this, "chapters");
}
$todel = array(); // delete IDs < 0 (needed for non-js editing)
foreach($items as $k => $item)
{
if ($item < 0)
{
$todel[] = $k;
}
}
foreach($todel as $k)
{
unset($items[$k]);
}
ilLMObject::clipboardCopy($this->object->getId(), $items);
ilUtil::sendInfo($lng->txt("cont_selected_items_have_been_copied"), true);
$ilCtrl->redirect($this, "chapters");
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilObjContentObjectGUI::copyPage ( )

copy page

Definition at line 1560 of file class.ilObjContentObjectGUI.php.

References ilLMObject\clipboardCopy(), ilUtil\sendInfo(), ilEditClipboard\setAction(), and ilUtil\stripSlashesArray().

{
if(!isset($_POST["id"]))
{
$this->ilias->raiseError($this->lng->txt("no_checkbox"),$this->ilias->error_obj->MESSAGE);
}
$items = ilUtil::stripSlashesArray($_POST["id"]);
ilLMObject::clipboardCopy($this->object->getId(), $items);
ilUtil::sendInfo($this->lng->txt("msg_copy_clipboard"), true);
$this->ctrl->redirect($this, "pages");
}

+ Here is the call graph for this function:

ilObjContentObjectGUI::createObject ( )

form for new content object creation

Reimplemented from ilObjectGUI.

Definition at line 752 of file class.ilObjContentObjectGUI.php.

References $_GET, $_SESSION, ilObjectGUI\$data, ilFrameTargetInfo\_getFrame(), ilUtil\getImagePath(), ilObjectGUI\getTemplateFile(), ilUtil\prepareFormOutput(), and ilUtil\stripSlashes().

Referenced by importObject().

{
global $rbacsystem;
$new_type = $_POST["new_type"] ? $_POST["new_type"] : $_GET["new_type"];
if (!$rbacsystem->checkAccess("create", $_GET["ref_id"], $new_type))
{
$this->ilias->raiseError($this->lng->txt("permission_denied"),$this->ilias->error_obj->MESSAGE);
}
else
{
// fill in saved values in case of error
$data = array();
$data["fields"] = array();
$data["fields"]["title"] = ilUtil::prepareFormOutput($_SESSION["error_post_vars"]["Fobject"]["title"],true);
$data["fields"]["desc"] = ilUtil::stripSlashes($_SESSION["error_post_vars"]["Fobject"]["desc"]);
$this->getTemplateFile("create", $new_type);
$this->tpl->setVariable("TYPE_IMG",
ilUtil::getImagePath("icon_".$new_type.".gif"));
$this->tpl->setVariable("ALT_IMG",
$this->lng->txt("obj_".$new_type));
foreach ($data["fields"] as $key => $val)
{
$this->tpl->setVariable("TXT_".strtoupper($key), $this->lng->txt($key));
$this->tpl->setVariable(strtoupper($key), $val);
if ($this->prepare_output)
{
$this->tpl->parseCurrentBlock();
}
}
//$this->tpl->setVariable("FORMACTION", $this->getFormAction("save",
// "adm_object.php?cmd=gateway&ref_id=".
// $_GET["ref_id"]."&new_type=".$new_type));
$this->ctrl->setParameter($this, "new_type", $new_type);
$this->tpl->setVariable("FORMACTION", $this->ctrl->getFormAction($this, "save"));
$this->tpl->setVariable("TXT_HEADER", $this->lng->txt($new_type."_new"));
$this->tpl->setVariable("TXT_CANCEL", $this->lng->txt("cancel"));
$this->tpl->setVariable("TXT_SUBMIT", $this->lng->txt($new_type."_add"));
$this->tpl->setVariable("CMD_SUBMIT", "save");
$this->tpl->setVariable("TARGET", ' target="'.
ilFrameTargetInfo::_getFrame("MainContent").'" ');
$this->tpl->setVariable("TXT_REQUIRED_FLD", $this->lng->txt("required_field"));
$this->tpl->setVariable("TXT_IMPORT_LM", $this->lng->txt("import_".$new_type));
$this->tpl->setVariable("TXT_LM_FILE", $this->lng->txt("file"));
$this->tpl->setVariable("TXT_IMPORT", $this->lng->txt("import"));
// get the value for the maximal uploadable filesize from the php.ini (if available)
$umf=get_cfg_var("upload_max_filesize");
// get the value for the maximal post data from the php.ini (if available)
$pms=get_cfg_var("post_max_size");
// use the smaller one as limit
$max_filesize = ((int) $umf < (int) $pms)
? $umf
: $pms;
if ((int) $pms == 0) $max_filesize = $umf;
if (!$max_filesize) $max_filesize=max($umf, $pms);
// gives out the limit as a littel notice :)
$this->tpl->setVariable("TXT_FILE_INFO", $this->lng->txt("file_notice")." $max_filesize.");
}
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilObjContentObjectGUI::createPDF ( )

export content object

Definition at line 2654 of file class.ilObjContentObjectGUI.php.

{
require_once("./Modules/LearningModule/classes/class.ilContObjectExport.php");
$cont_exp = new ilContObjectExport($this->object, "pdf");
$cont_exp->buildExportFile();
$this->offlineList();
}
ilObjContentObjectGUI::cutChapter ( )

Cut chapter(s)

Definition at line 3590 of file class.ilObjContentObjectGUI.php.

References cutItems().

{
$this->cutItems("chapters");
}

+ Here is the call graph for this function:

ilObjContentObjectGUI::cutItems (   $a_return = "chapters")

Copy items to clipboard, then cut them from the current tree.

Definition at line 3525 of file class.ilObjContentObjectGUI.php.

References $ilCtrl, ilObjectGUI\$lng, ilLMObject\clipboardCut(), ilUtil\sendInfo(), ilEditClipboard\setAction(), and ilUtil\stripSlashesArray().

Referenced by cutChapter().

{
global $ilCtrl, $lng;
$items = ilUtil::stripSlashesArray($_POST["id"]);
if (!is_array($items))
{
ilUtil::sendInfo($lng->txt("no_checkbox"), true);
$ilCtrl->redirect($this, $a_return);
}
$todel = array(); // delete IDs < 0 (needed for non-js editing)
foreach($items as $k => $item)
{
if ($item < 0)
{
$todel[] = $k;
}
}
foreach($todel as $k)
{
unset($items[$k]);
}
ilLMObject::clipboardCut($this->object->getId(), $items);
ilUtil::sendInfo($lng->txt("cont_selected_items_have_been_cut"), true);
$ilCtrl->redirect($this, $a_return);
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilObjContentObjectGUI::deactivateJSChapterEditing ( )

Deactivate Javascript Chapter Editing.

Definition at line 1477 of file class.ilObjContentObjectGUI.php.

References $ilCtrl.

{
global $ilCtrl, $ilUser;
$ilUser->writePref("lm_js_chapter_editing", "disable");
$ilCtrl->redirect($this, "chapters");
}
ilObjContentObjectGUI::delete (   $a_parent_subobj_id = 0)

confirm deletion screen for page object and structure object deletion

Parameters
int$a_parent_subobj_idid of parent object (structure object) of the objects, that should be deleted (or no parent object id for top level)

Definition at line 1583 of file class.ilObjContentObjectGUI.php.

References $_GET, $_SESSION, ilUtil\getImagePath(), IL_FIRST_NODE, ilUtil\sendInfo(), setTabs(), and ilUtil\switchColor().

Referenced by ilLMObjectGUI\delete().

{
if(!isset($_POST["id"]))
{
$this->ilias->raiseError($this->lng->txt("no_checkbox"),$this->ilias->error_obj->MESSAGE);
}
if(count($_POST["id"]) == 1 && $_POST["id"][0] == IL_FIRST_NODE)
{
$this->ilias->raiseError($this->lng->txt("cont_select_item"), $this->ilias->error_obj->MESSAGE);
}
if ($a_parent_subobj_id == 0)
{
$this->setTabs();
}
// SAVE POST VALUES
$_SESSION["saved_post"] = $_POST["id"];
$this->tpl->addBlockFile("ADM_CONTENT", "adm_content", "tpl.confirm_deletion.html", "Modules/LearningModule");
ilUtil::sendInfo($this->lng->txt("info_delete_sure"));
if ($a_parent_subobj_id != 0)
{
$this->ctrl->setParameterByClass("ilStructureObjectGUI", "backcmd", $_GET["backcmd"]);
$this->ctrl->setParameterByClass("ilStructureObjectGUI", "obj_id", $a_parent_subobj_id);
$this->tpl->setVariable("FORMACTION",
$this->ctrl->getFormActionByClass("ilStructureObjectGUI"));
}
else
{
$this->ctrl->setParameter($this, "backcmd", $_GET["backcmd"]);
$this->tpl->setVariable("FORMACTION", $this->ctrl->getFormAction($this));
}
// BEGIN TABLE HEADER
$this->tpl->setCurrentBlock("table_header");
$this->tpl->setVariable("TEXT",$this->lng->txt("objects"));
$this->tpl->parseCurrentBlock();
// END TABLE HEADER
// BEGIN TABLE DATA
$counter = 0;
//var_dump($_POST);
foreach($_POST["id"] as $id)
{
if ($id != IL_FIRST_NODE)
{
$obj =& new ilLMObject($this->object, $id);
switch($obj->getType()) // ok that's not so nice, could be done better
{
case "pg":
$this->tpl->setVariable("IMG_OBJ", ilUtil::getImagePath("icon_pg.gif"));
break;
case "st":
$this->tpl->setVariable("IMG_OBJ", ilUtil::getImagePath("icon_st.gif"));
break;
}
$this->tpl->setCurrentBlock("table_row");
$this->tpl->setVariable("CSS_ROW",ilUtil::switchColor(++$counter,"tblrow2","tblrow1"));
$this->tpl->setVariable("TEXT_CONTENT", $obj->getTitle());
$this->tpl->parseCurrentBlock();
}
}
// cancel/confirm button
$this->tpl->setVariable("IMG_ARROW",ilUtil::getImagePath("arrow_downright.gif"));
$buttons = array( "cancelDelete" => $this->lng->txt("cancel"),
"confirmedDelete" => $this->lng->txt("confirm"));
foreach ($buttons as $name => $value)
{
$this->tpl->setCurrentBlock("operation_btn");
$this->tpl->setVariable("BTN_NAME",$name);
$this->tpl->setVariable("BTN_VALUE",$value);
$this->tpl->parseCurrentBlock();
}
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilObjContentObjectGUI::deleteBibItem ( )

delete bib item (module call)

Definition at line 946 of file class.ilObjContentObjectGUI.php.

References deleteBibItemObject(), ilCtrl\IL_RTOKEN_NAME, and setTabs().

{
$this->setTabs();
// questionable workaround to make this old stuff work
$this->ctrl->setParameter($this, ilCtrl::IL_RTOKEN_NAME, $this->ctrl->getRequestToken());
$this->deleteBibItemObject($this->ctrl->getLinkTarget($this));
}

+ Here is the call graph for this function:

ilObjContentObjectGUI::deleteBibItemObject (   $a_target = "")

delete bib item (admin call)

Definition at line 924 of file class.ilObjContentObjectGUI.php.

References $_GET.

Referenced by deleteBibItem().

{
include_once "./Modules/LearningModule/classes/class.ilBibItemGUI.php";
$bib_gui =& new ilBibItemGUI();
$bib_gui->setObject($this->object);
$bibItemIndex = $_POST["bibItemIndex"] ? $_POST["bibItemIndex"] : $_GET["bibItemIndex"];
$bib_gui->bib_obj->delete($_GET["bibItemName"], $_GET["bibItemPath"], $bibItemIndex);
if (strpos($bibItemIndex, ",") > 0)
{
$bibItemIndex = substr($bibItemIndex, 0, strpos($bibItemIndex, ","));
}
if ($a_target == "")
{
$a_target = "adm_object.php?ref_id=" . $this->object->getRefId();
}
$bib_gui->edit("ADM_CONTENT", "adm_content", $a_target, $bibItemIndex);
}

+ Here is the caller graph for this function:

ilObjContentObjectGUI::deleteExportFile ( )

delete export files

Definition at line 2423 of file class.ilObjContentObjectGUI.php.

References $_SESSION, $file, and ilUtil\delDir().

{
foreach($_SESSION["ilExportFiles"] as $file)
{
$file = explode(":", $file);
$export_dir = $this->object->getExportDirectory($file[0]);
$exp_file = $export_dir."/".$file[1];
$exp_dir = $export_dir."/".substr($file[1], 0, strlen($file[1]) - 4);
if (@is_file($exp_file))
{
unlink($exp_file);
}
if (@is_dir($exp_dir))
{
ilUtil::delDir($exp_dir);
}
}
$this->ctrl->redirect($this, "exportList");
}

+ Here is the call graph for this function:

ilObjContentObjectGUI::deleteMenuEntry ( )

drop a menu entry

Definition at line 3189 of file class.ilObjContentObjectGUI.php.

References $_GET, __initLMMenuEditor(), and ilUtil\sendInfo().

{
if (empty($_GET["menu_entry"]))
{
$this->ilias->raiseError($this->lng->txt("no_menu_entry_id"),$this->ilias->error_obj->MESSAGE);
}
$this->lmme_obj->delete($_GET["menu_entry"]);
ilUtil::sendInfo($this->lng->txt("msg_entry_removed"), true);
$this->ctrl->redirect($this, "properties");
}

+ Here is the call graph for this function:

ilObjContentObjectGUI::downloadExportFile ( )

download export file

Definition at line 2290 of file class.ilObjContentObjectGUI.php.

References $file, and ilUtil\deliverFile().

{
if(!isset($_POST["file"]))
{
$this->ilias->raiseError($this->lng->txt("no_checkbox"),$this->ilias->error_obj->MESSAGE);
}
if (count($_POST["file"]) > 1)
{
$this->ilias->raiseError($this->lng->txt("cont_select_max_one_item"),$this->ilias->error_obj->MESSAGE);
}
$file = explode(":", $_POST["file"][0]);
$export_dir = $this->object->getExportDirectory($file[0]);
ilUtil::deliverFile($export_dir."/".$file[1],
$file[1]);
}

+ Here is the call graph for this function:

ilObjContentObjectGUI::downloadPDFFile ( )

download export file

Definition at line 2341 of file class.ilObjContentObjectGUI.php.

References ilUtil\deliverFile().

{
if(!isset($_POST["file"]))
{
$this->ilias->raiseError($this->lng->txt("no_checkbox"),$this->ilias->error_obj->MESSAGE);
}
if (count($_POST["file"]) > 1)
{
$this->ilias->raiseError($this->lng->txt("cont_select_max_one_item"),$this->ilias->error_obj->MESSAGE);
}
$export_dir = $this->object->getOfflineDirectory();
ilUtil::deliverFile($export_dir."/".$_POST["file"][0],
$_POST["file"][0]);
}

+ Here is the call graph for this function:

ilObjContentObjectGUI::editBibItem ( )

edit bib items (module call)

Definition at line 982 of file class.ilObjContentObjectGUI.php.

References editBibItemObject(), ilCtrl\IL_RTOKEN_NAME, and setTabs().

{
$this->setTabs();
// questionable workaround to make this old stuff work
$this->ctrl->setParameter($this, ilCtrl::IL_RTOKEN_NAME, $this->ctrl->getRequestToken());
$this->editBibItemObject($this->ctrl->getLinkTarget($this));
}

+ Here is the call graph for this function:

ilObjContentObjectGUI::editBibItemObject (   $a_target = "")

edit bib items (admin call)

Definition at line 960 of file class.ilObjContentObjectGUI.php.

References $_GET.

Referenced by editBibItem().

{
include_once "./Modules/LearningModule/classes/class.ilBibItemGUI.php";
$bib_gui =& new ilBibItemGUI();
$bib_gui->setObject($this->object);
$bibItemIndex = $_POST["bibItemIndex"] ? $_POST["bibItemIndex"] : $_GET["bibItemIndex"];
$bibItemIndex *= 1;
if ($bibItemIndex < 0)
{
$bibItemIndex = 0;
}
if ($a_target == "")
{
$a_target = "adm_object.php?ref_id=" . $this->object->getRefId();
}
$bib_gui->edit("ADM_CONTENT", "adm_content", $a_target, $bibItemIndex);
}

+ Here is the caller graph for this function:

ilObjContentObjectGUI::editMenuEntry ( )

edit menu entry form

Definition at line 3206 of file class.ilObjContentObjectGUI.php.

References $_GET, __initLMMenuEditor(), and setTabs().

{
if (empty($_GET["menu_entry"]))
{
$this->ilias->raiseError($this->lng->txt("no_menu_entry_id"),$this->ilias->error_obj->MESSAGE);
}
$this->lmme_obj->readEntry($_GET["menu_entry"]);
$this->setTabs();
$this->tpl->addBlockFile("ADM_CONTENT", "adm_content", "tpl.lm_menu_entry_form.html","Modules/LearningModule");
$this->tpl->setVariable("FORMACTION", $this->ctrl->getFormAction($this));
$this->tpl->setVariable("TXT_NEW_ENTRY", $this->lng->txt("lm_menu_edit_entry"));
$this->tpl->setVariable("TXT_TARGET", $this->lng->txt("lm_menu_entry_target"));
$this->tpl->setVariable("TXT_TITLE", $this->lng->txt("lm_menu_entry_title"));
$this->tpl->setVariable("TITLE", $this->lmme_obj->getTitle());
$this->tpl->setVariable("TARGET", $this->lmme_obj->getTarget());
$this->tpl->setVariable("ENTRY_ID", $this->lmme_obj->getEntryId());
$this->tpl->setVariable("BTN_NAME", "updateMenuEntry");
$this->tpl->setVariable("BTN_TEXT", $this->lng->txt("save"));
$this->tpl->setVariable("BTN_NAME2", "showEntrySelector");
$this->tpl->setVariable("BTN_TEXT2", $this->lng->txt("lm_menu_select_internal_object"));
//$this->tpl->parseCurrentBlock();
}

+ Here is the call graph for this function:

ilObjContentObjectGUI::editPublicSection ( )

Definition at line 2869 of file class.ilObjContentObjectGUI.php.

References ilObjectGUI\$object, ilUtil\array_php2js(), formSelect(), setTabs(), and ilExplorer\setTargetGet().

{
$this->setTabs();
switch ($this->object->getType())
{
case "lm":
$gui_class = "ilobjlearningmodulegui";
break;
case "dlb":
$gui_class = "ilobjdlbookgui";
break;
}
// get learning module object
$this->lm_obj =& new ilObjLearningModule($this->ref_id, true);
$this->tpl->addBlockFile("ADM_CONTENT", "adm_content", "tpl.lm_public_selector.html");
//$this->tpl->setVariable("ADM_CONTENT", "adm_content", "bla");
require_once ("./Modules/LearningModule/classes/class.ilPublicSectionSelector.php");
$exp = new ilPublicSectionSelector($this->ctrl->getLinkTarget($this, "view"),
$this->object, $gui_class);
$exp->setTargetGet("obj_id");
// build html-output
$exp->setOutput(0);
$output = $exp->getOutput();
// get page ids
foreach ($exp->format_options as $node)
{
if (!$node["container"])
{
$pages[] = $node["child"];
}
}
$js_pages = ilUtil::array_php2js($pages);
//$this->tpl->setCurrentBlock("content");
//var_dump($this->object->getPublicAccessMode());
// access mode selector
$this->tpl->setVariable("TXT_SET_PUBLIC_MODE", $this->lng->txt("set_public_mode"));
$this->tpl->setVariable("TXT_CHOOSE_PUBLIC_MODE", $this->lng->txt("choose_public_mode"));
$modes = array("complete" => $this->lng->txt("all_pages"), "selected" => $this->lng->txt("selected_pages_only"));
$select_public_mode = ilUtil::formSelect ($this->object->getPublicAccessMode(),"lm_public_mode",$modes, false, true);
$this->tpl->setVariable("SELECT_PUBLIC_MODE", $select_public_mode);
$this->tpl->setVariable("TXT_EXPLORER_HEADER", $this->lng->txt("choose_public_pages"));
$this->tpl->setVariable("EXP_REFRESH", $this->lng->txt("refresh"));
$this->tpl->setVariable("EXPLORER",$output);
$this->tpl->setVariable("ONCLICK",$js_pages);
$this->tpl->setVariable("TXT_CHECKALL", $this->lng->txt("check_all"));
$this->tpl->setVariable("TXT_UNCHECKALL", $this->lng->txt("uncheck_all"));
$this->tpl->setVariable("TXT_SAVE", $this->lng->txt("save"));
$this->tpl->setVariable("FORMACTION", $this->ctrl->getLinkTarget($this, "savePublicSection"));
//$this->tpl->parseCurrentBlock();
}

+ Here is the call graph for this function:

& ilObjContentObjectGUI::executeCommand ( )

execute command

Reimplemented from ilObjectGUI.

Definition at line 61 of file class.ilObjContentObjectGUI.php.

References $_GET, $cmd, $ret, ilLearningProgressBaseGUI\activateStatistics(), addLocations(), ilMDEditorGUI\addObserver(), explorer(), ilObjectGUI\getCreationMode(), ilLMObjectFactory\getInstance(), LP_MODE_REPOSITORY, ilObjectGUI\omitLocator(), ilObjectGUI\prepareOutput(), and setTabs().

{
global $ilAccess;
if ($this->ctrl->getRedirectSource() == "ilinternallinkgui")
{
$this->explorer();
return;
}
if ($this->ctrl->getCmdClass() == "ilinternallinkgui")
{
$this->ctrl->setReturn($this, "explorer");
}
// get next class that processes or forwards current command
$next_class = $this->ctrl->getNextClass($this);
// get current command
$cmd = $this->ctrl->getCmd("", array("downloadExportFile"));
//echo "-$cmd-";
switch($next_class)
{
case "illearningprogressgui":
$this->addLocations();
include_once './Services/Tracking/classes/class.ilLearningProgressGUI.php';
$this->setTabs();
$new_gui =& new ilLearningProgressGUI(LP_MODE_REPOSITORY,$this->object->getRefId());
$new_gui->activateStatistics();
$this->ctrl->forwardCommand($new_gui);
break;
case 'ilmdeditorgui':
$this->addLocations();
include_once 'Services/MetaData/classes/class.ilMDEditorGUI.php';
$this->setTabs();
$md_gui =& new ilMDEditorGUI($this->object->getId(), 0, $this->object->getType());
$md_gui->addObserver($this->object,'MDUpdateListener','General');
$this->ctrl->forwardCommand($md_gui);
break;
case "ilobjstylesheetgui":
$this->addLocations();
include_once ("./Services/Style/classes/class.ilObjStyleSheetGUI.php");
$this->ctrl->setReturn($this, "properties");
$style_gui =& new ilObjStyleSheetGUI("", $this->object->getStyleSheetId(), false, false);
$style_gui->omitLocator();
if ($cmd == "create" || $_GET["new_type"]=="sty")
{
$style_gui->setCreationMode(true);
}
$ret =& $this->ctrl->forwardCommand($style_gui);
//$ret =& $style_gui->executeCommand();
if ($cmd == "save" || $cmd == "copyStyle" || $cmd == "importStyle")
{
$style_id = $ret;
$this->object->setStyleSheetId($style_id);
$this->object->update();
$this->ctrl->redirectByClass("ilobjstylesheetgui", "edit");
}
break;
case "illmpageobjectgui":
$this->ctrl->saveParameter($this, array("obj_id"));
$this->addLocations();
$this->ctrl->setReturn($this, "chapters");
//echo "!";
//$this->lm_obj =& $this->ilias->obj_factory->getInstanceByRefId($this->ref_id);
$pg_gui =& new ilLMPageObjectGUI($this->object);
if ($_GET["obj_id"] != "")
{
$obj =& ilLMObjectFactory::getInstance($this->object, $_GET["obj_id"]);
$pg_gui->setLMPageObject($obj);
}
//$ret =& $pg_gui->executeCommand();
$ret =& $this->ctrl->forwardCommand($pg_gui);
if ($cmd == "save" || $cmd == "cancel")
{
$this->ctrl->redirect($this, "pages");
}
break;
case "ilstructureobjectgui":
$this->ctrl->saveParameter($this, array("obj_id"));
$this->addLocations();
$this->ctrl->setReturn($this, "chapters");
$st_gui =& new ilStructureObjectGUI($this->object, $this->object->lm_tree);
if ($_GET["obj_id"] != "")
{
$obj =& ilLMObjectFactory::getInstance($this->object, $_GET["obj_id"]);
$st_gui->setStructureObject($obj);
}
//$ret =& $st_gui->executeCommand();
$ret =& $this->ctrl->forwardCommand($st_gui);
if ($cmd == "save" || $cmd == "cancel")
{
if ($_GET["obj_id"] == "")
{
$this->ctrl->redirect($this, "chapters");
}
else
{
$this->ctrl->setCmd("subchap");
$this->executeCommand();
}
}
break;
case 'ilpermissiongui':
if (strtolower($_GET["baseClass"]) == "iladministrationgui")
{
$this->prepareOutput();
}
else
{
$this->addLocations(true);
$this->setTabs();
}
include_once("./classes/class.ilPermissionGUI.php");
$perm_gui =& new ilPermissionGUI($this);
$ret =& $this->ctrl->forwardCommand($perm_gui);
break;
// infoscreen
case 'ilinfoscreengui':
$this->addLocations(true);
$this->setTabs();
include_once("./Services/InfoScreen/classes/class.ilInfoScreenGUI.php");
$info = new ilInfoScreenGUI($this);
$info->enablePrivateNotes();
//$info->enableLearningProgress();
$info->enableNews();
if ($ilAccess->checkAccess("write", "", $_GET["ref_id"]))
{
$info->enableNewsEditing();
$info->setBlockProperty("news", "settings", true);
}
// show standard meta data section
$info->addMetaDataSections($this->object->getId(), 0,
$this->object->getType());
$ret =& $this->ctrl->forwardCommand($info);
break;
default:
$new_type = $_POST["new_type"]
? $_POST["new_type"]
: $_GET["new_type"];
if ($cmd == "create" &&
!in_array($new_type, array("dbk", "lm")))
{
//$this->addLocations();
switch ($new_type)
{
case "pg":
$this->setTabs();
$this->ctrl->setCmdClass("ilLMPageObjectGUI");
$ret =& $this->executeCommand();
break;
case "st":
$this->setTabs();
$this->ctrl->setCmdClass("ilStructureObjectGUI");
$ret =& $this->executeCommand();
break;
}
}
else
{
// creation of new dbk/lm in repository
if ($this->getCreationMode() == true &&
in_array($new_type, array("dbk", "lm")))
{
$this->prepareOutput();
if ($cmd == "") // this may be due to too big upload files
{
$cmd = "create";
}
$cmd .= "Object";
$ret =& $this->$cmd();
}
else
{
$this->addLocations();
$ret =& $this->$cmd();
}
}
break;
}
return $ret;
}

+ Here is the call graph for this function:

ilObjContentObjectGUI::explorer ( )

output explorer tree

Definition at line 590 of file class.ilObjContentObjectGUI.php.

References $_GET, $ilCtrl, ilObjectGUI\$ilias, ilObjectGUI\$object, exit, ilUtil\getImagePath(), ilUtil\getStyleSheetLocation(), proceedDragDrop(), ilTree\setTableNames(), and ilExplorer\setTargetGet().

Referenced by executeCommand().

{
global $ilUser, $ilias, $ilCtrl;
switch ($this->object->getType())
{
case "lm":
$gui_class = "ilobjlearningmodulegui";
break;
case "dlb":
$gui_class = "ilobjdlbookgui";
break;
}
$ilCtrl->setParameterByClass($gui_class, "active_node", $_GET["active_node"]);
$this->tpl = new ilTemplate("tpl.main.html", true, true);
// get learning module object
//$this->lm_obj =& new ilObjLearningModule($this->ref_id, true);
$this->tpl->setVariable("LOCATION_STYLESHEET", ilUtil::getStyleSheetLocation());
//$this->tpl = new ilTemplate("tpl.explorer.html", false, false);
$this->tpl->addBlockFile("CONTENT", "content", "tpl.explorer.html");
$this->tpl->setVariable("IMG_SPACE", ilUtil::getImagePath("spacer.gif", false));
require_once ("./Modules/LearningModule/classes/class.ilLMEditorExplorer.php");
$exp = new ilLMEditorExplorer($this->ctrl->getLinkTarget($this, "view"),
$this->object, $gui_class);
$exp->setTargetGet("obj_id");
$exp->setExpandTarget($this->ctrl->getLinkTarget($this, "explorer"));
if ($_GET["lmmovecopy"] == "1")
{
$this->proceedDragDrop();
}
if ($_GET["lmexpand"] == "")
{
$mtree = new ilTree($this->object->getId());
$mtree->setTableNames('lm_tree','lm_data');
$mtree->setTreeTablePK("lm_id");
$expanded = $mtree->readRootId();
}
else
{
$expanded = $_GET["lmexpand"];
}
if ($_GET["active_node"] != "")
{
$path = $this->lm_tree->getPathId($_GET["active_node"]);
$exp->setForceOpenPath($path);
$exp->highlightNode($_GET["active_node"]);
}
$exp->setExpand($expanded);
// build html-output
$exp->setOutput(0);
$output = $exp->getOutput();
// asynchronous output
if ($ilCtrl->isAsynch())
{
echo $output; exit;
}
include_once("./Services/COPage/classes/class.ilPageEditorGUI.php");
/*if (ilPageEditorGUI::_doJSEditing())
{
//$this->tpl->touchBlock("includejavascript");
$IDS = "";
for ($i=0;$i<count($exp->iconList);$i++)
{
if ($i>0) $IDS .= ",";
$IDS .= "'".$exp->iconList[$i]."'";
}
$this->tpl->setVariable("ICONIDS",$IDS);
//$this->ctrl->setParameter($this, "lmovecopy", 1);
$this->tpl->setVariable("TESTPFAD",$this->ctrl->getLinkTarget($this, "explorer")."&lmmovecopy=1");
//$this->tpl->setVariable("POPUPLINK",$this->ctrl->getLinkTarget($this, "popup")."&ptype=movecopytreenode");
$this->tpl->setVariable("POPUPLINK",$this->ctrl->getLinkTarget($this, "popup")."&ptype=movecopytreenode");
}*/
$this->tpl->setCurrentBlock("content");
$this->tpl->setVariable("TXT_EXPLORER_HEADER", $this->lng->txt("cont_chap_and_pages"));
$this->tpl->setVariable("EXP_REFRESH", $this->lng->txt("refresh"));
$this->tpl->setVariable("EXPLORER",$output);
$this->ctrl->setParameter($this, "lmexpand", $_GET["lmexpand"]);
$this->tpl->setVariable("ACTION", $this->ctrl->getLinkTarget($this, "explorer"));
$this->tpl->parseCurrentBlock();
$this->tpl->show(false);
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilObjContentObjectGUI::export ( )

export content object

Reimplemented in ilObjDlBookGUI.

Definition at line 2112 of file class.ilObjContentObjectGUI.php.

{
require_once("./Modules/LearningModule/classes/class.ilContObjectExport.php");
$cont_exp = new ilContObjectExport($this->object);
$cont_exp->buildExportFile();
$this->ctrl->redirect($this, "exportList");
}
ilObjContentObjectGUI::exportHTML ( )

create html package

Definition at line 2665 of file class.ilObjContentObjectGUI.php.

{
require_once("./Modules/LearningModule/classes/class.ilContObjectExport.php");
$cont_exp = new ilContObjectExport($this->object, "html");
$cont_exp->buildExportFile();
//echo $this->tpl->get();
$this->ctrl->redirect($this, "exportList");
}
ilObjContentObjectGUI::exportList ( )

Definition at line 2157 of file class.ilObjContentObjectGUI.php.

References $_GET, ilObjectGUI\$tree, exportMenu(), ilUtil\getImagePath(), setTabs(), and ilUtil\switchColor().

{
global $tree;
$this->setTabs();
//add template for view button
$this->tpl->addBlockfile("BUTTONS", "buttons", "tpl.buttons.html");
$this->exportMenu();
$export_files = $this->object->getExportFiles();
// create table
require_once("./Services/Table/classes/class.ilTableGUI.php");
$tbl = new ilTableGUI();
// load files templates
$this->tpl->addBlockfile("ADM_CONTENT", "adm_content", "tpl.table.html");
// load template for table content data
$this->tpl->addBlockfile("TBL_CONTENT", "tbl_content", "tpl.export_file_row.html", "Modules/LearningModule");
$num = 0;
$this->tpl->setVariable("FORMACTION", $this->ctrl->getFormAction($this));
$tbl->setTitle($this->lng->txt("cont_export_files"));
$tbl->setHeaderNames(array("", $this->lng->txt("type"),
$this->lng->txt("cont_file"),
$this->lng->txt("cont_size"), $this->lng->txt("date") ));
$cols = array("", "type", "file", "size", "date");
$header_params = array("ref_id" => $_GET["ref_id"], "baseClass" => $_GET["baseClass"],
"cmd" => "exportList", "cmdClass" => strtolower(get_class($this)));
$tbl->setHeaderVars($cols, $header_params);
$tbl->setColumnWidth(array("1%", "9%", "40%", "25%", "25%"));
// control
$tbl->setOrderColumn($_GET["sort_by"]);
$tbl->setOrderDirection($_GET["sort_order"]);
$tbl->setLimit($_GET["limit"]);
$tbl->setOffset($_GET["offset"]);
$tbl->setMaxCount($this->maxcount); // ???
$tbl->disable("sort");
$this->tpl->setVariable("COLUMN_COUNTS", 5);
// delete button
$this->tpl->setVariable("IMG_ARROW", ilUtil::getImagePath("arrow_downright.gif"));
$this->tpl->setCurrentBlock("tbl_action_btn");
$this->tpl->setVariable("BTN_NAME", "confirmDeleteExportFile");
$this->tpl->setVariable("BTN_VALUE", $this->lng->txt("delete"));
$this->tpl->parseCurrentBlock();
$this->tpl->setCurrentBlock("tbl_action_btn");
$this->tpl->setVariable("BTN_NAME", "downloadExportFile");
$this->tpl->setVariable("BTN_VALUE", $this->lng->txt("download"));
$this->tpl->parseCurrentBlock();
$this->tpl->setCurrentBlock("tbl_action_btn");
$this->tpl->setVariable("BTN_NAME", "publishExportFile");
$this->tpl->setVariable("BTN_VALUE", $this->lng->txt("cont_public_access"));
$this->tpl->parseCurrentBlock();
// footer
$tbl->setFooter("tblfooter",$this->lng->txt("previous"),$this->lng->txt("next"));
//$tbl->disable("footer");
$tbl->setMaxCount(count($export_files));
$export_files = array_slice($export_files, $_GET["offset"], $_GET["limit"]);
$tbl->render();
if(count($export_files) > 0)
{
$i=0;
foreach($export_files as $exp_file)
{
$this->tpl->setCurrentBlock("tbl_content");
$this->tpl->setVariable("TXT_FILENAME", $exp_file["file"]);
$css_row = ilUtil::switchColor($i++, "tblrow1", "tblrow2");
$this->tpl->setVariable("CSS_ROW", $css_row);
$this->tpl->setVariable("TXT_SIZE", $exp_file["size"]);
$public_str = ($exp_file["file"] == $this->object->getPublicExportFile($exp_file["type"]))
? " <b>(".$this->lng->txt("public").")<b>"
: "";
$this->tpl->setVariable("TXT_TYPE", $exp_file["type"].$public_str);
$this->tpl->setVariable("CHECKBOX_ID", $exp_file["type"].":".$exp_file["file"]);
$file_arr = explode("__", $exp_file["file"]);
$this->tpl->setVariable("TXT_DATE", date("Y-m-d H:i:s",$file_arr[0]));
$this->tpl->parseCurrentBlock();
}
} //if is_array
else
{
$this->tpl->setCurrentBlock("notfound");
$this->tpl->setVariable("TXT_OBJECT_NOT_FOUND", $this->lng->txt("obj_not_found"));
$this->tpl->setVariable("NUM_COLS", 4);
$this->tpl->parseCurrentBlock();
}
$this->tpl->parseCurrentBlock();
}

+ Here is the call graph for this function:

ilObjContentObjectGUI::exportMenu ( )

show list of export files

Definition at line 2123 of file class.ilObjContentObjectGUI.php.

Referenced by exportList(), and viewExportLog().

{
// create xml export file button
$this->tpl->setCurrentBlock("btn_cell");
$this->tpl->setVariable("BTN_LINK", $this->ctrl->getLinkTarget($this, "export"));
$this->tpl->setVariable("BTN_TXT", $this->lng->txt("cont_create_export_file_xml"));
$this->tpl->parseCurrentBlock();
// create html export file button
$this->tpl->setCurrentBlock("btn_cell");
$this->tpl->setVariable("BTN_LINK", $this->ctrl->getLinkTarget($this, "exportHTML"));
$this->tpl->setVariable("BTN_TXT", $this->lng->txt("cont_create_export_file_html"));
$this->tpl->parseCurrentBlock();
// create scorm export file button
$this->tpl->setCurrentBlock("btn_cell");
$this->tpl->setVariable("BTN_LINK", $this->ctrl->getLinkTarget($this, "exportSCORM"));
$this->tpl->setVariable("BTN_TXT", $this->lng->txt("cont_create_export_file_scorm"));
$this->tpl->parseCurrentBlock();
// view last export log button
if (is_file($this->object->getExportDirectory()."/export.log"))
{
$this->tpl->setCurrentBlock("btn_cell");
$this->tpl->setVariable("BTN_LINK", $this->ctrl->getLinkTarget($this, "viewExportLog"));
$this->tpl->setVariable("BTN_TXT", $this->lng->txt("cont_view_last_export_log"));
$this->tpl->parseCurrentBlock();
}
}

+ Here is the caller graph for this function:

ilObjContentObjectGUI::exportObject ( )

export object

public

Definition at line 1034 of file class.ilObjContentObjectGUI.php.

{
return;
}
ilObjContentObjectGUI::exportSCORM ( )

create scorm package

Definition at line 2677 of file class.ilObjContentObjectGUI.php.

{
require_once("./Modules/LearningModule/classes/class.ilContObjectExport.php");
$cont_exp = new ilContObjectExport($this->object, "scorm");
$cont_exp->buildExportFile();
//echo $this->tpl->get();
$this->ctrl->redirect($this, "exportList");
}
ilObjContentObjectGUI::fixTree ( )

fix tree

Definition at line 2488 of file class.ilObjContentObjectGUI.php.

References ilUtil\sendInfo().

{
$this->object->fixTree();
ilUtil::sendInfo($this->lng->txt("cont_tree_fixed"), true);
$this->ctrl->redirect($this, "properties");
}

+ Here is the call graph for this function:

ilObjContentObjectGUI::fixTreeConfirm ( )

confirm screen for tree fixing

Definition at line 2448 of file class.ilObjContentObjectGUI.php.

References setTabs().

{
$this->setTabs();
$this->tpl->addBlockFile("ADM_CONTENT", "adm_content", "tpl.confirm.html");
$this->tpl->setVariable("FORMACTION", $this->ctrl->getFormAction($this));
//
$this->tpl->setVariable("TXT_CONFIRM", $this->lng->txt("confirmation"));
$this->tpl->setVariable("TXT_CONTENT", $this->lng->txt("cont_fix_tree_confirm"));
$this->tpl->setVariable("CMD_CANCEL", "cancelFixTree");
$this->tpl->setVariable("CMD_OK", "fixTree");
$this->tpl->setVariable("TXT_CANCEL", $this->lng->txt("cancel"));
$this->tpl->setVariable("TXT_OK", $this->lng->txt("cont_fix_tree"));
}

+ Here is the call graph for this function:

ilObjContentObjectGUI::getContextPath (   $a_endnode_id,
  $a_startnode_id = 1 
)

get context path in content object tree

Parameters
int$a_endnode_idid of endnode
int$a_startnode_idid of startnode

Reimplemented in ilObjDlBookGUI.

Definition at line 1738 of file class.ilObjContentObjectGUI.php.

Referenced by pages().

{
$path = "";
$tmpPath = $this->lm_tree->getPathFull($a_endnode_id, $a_startnode_id);
// count -1, to exclude the learning module itself
for ($i = 1; $i < (count($tmpPath) - 1); $i++)
{
if ($path != "")
{
$path .= " > ";
}
$path .= $tmpPath[$i]["title"];
}
return $path;
}

+ Here is the caller graph for this function:

ilObjContentObjectGUI::getTabs ( $tabs_gui)

adds tabs to tab gui object

Parameters
object$tabs_guiilTabsGUI object

Reimplemented from ilObjectGUI.

Definition at line 2787 of file class.ilObjContentObjectGUI.php.

References ilLearningProgressAccess\checkAccess().

Referenced by setTabs().

{
global $rbacsystem,$ilUser;
// back to upper context
//$tabs_gui->getTargetsByObjectType($this, $this->object->getType());
// info
$tabs_gui->addTarget("info_short",
$this->ctrl->getLinkTargetByClass("ilinfoscreengui",'showSummary'),
"", "ilinfoscreengui");
// chapters
$tabs_gui->addTarget("cont_chapters",
$this->ctrl->getLinkTarget($this, "chapters"),
"chapters", get_class($this));
// pages
$tabs_gui->addTarget("cont_all_pages",
$this->ctrl->getLinkTarget($this, "pages"),
"pages", get_class($this));
// properties
$tabs_gui->addTarget("properties",
$this->ctrl->getLinkTarget($this,'properties'),
"properties", get_class($this));
// meta data
$tabs_gui->addTarget("meta_data",
$this->ctrl->getLinkTargetByClass('ilmdeditorgui',''),
"", "ilmdeditorgui");
// links
$tabs_gui->addTarget("cont_links",
$this->ctrl->getLinkTarget($this,'listLinks'),
"listLinks", get_class($this));
if ($this->object->getType() == "lm")
{
// export
$tabs_gui->addTarget("export",
$this->ctrl->getLinkTarget($this, "exportList"),
array("exportList", "viewExportLog"), get_class($this));
if(@include_once('HTTP/Request.php'))
{
// link checker
$tabs_gui->addTarget("link_check",
$this->ctrl->getLinkTarget($this, "linkChecker"),
array("linkChecker", "refreshLinkCheck"), get_class($this));
}
}
else
{
// bibliographical data
$tabs_gui->addTarget("bib_data",
$this->ctrl->getLinkTarget($this, "editBibItem"),
"editBibItem", get_class($this));
}
// learning progress
include_once './Services/Tracking/classes/class.ilLearningProgressAccess.php';
if(ilLearningProgressAccess::checkAccess($this->object->getRefId()) and $this->object->getType() == 'lm')
{
$tabs_gui->addTarget('learning_progress',
$this->ctrl->getLinkTargetByClass(array('illearningprogressgui'),''),
'',
array('illplistofobjectsgui','illplistofsettingsgui','illearningprogressgui','illplistofprogressgui','illmstatisticsgui'));
}
$tabs_gui->addTarget("history", $this->ctrl->getLinkTarget($this, "history")
, "history", get_class($this));
// permissions
if ($rbacsystem->checkAccess('edit_permission',$this->object->getRefId()))
{
$tabs_gui->addTarget("perm_settings",
$this->ctrl->getLinkTargetByClass(array(get_class($this),'ilpermissiongui'), "perm"), array("perm","info","owner"), 'ilpermissiongui');
}
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilObjContentObjectGUI::history ( )

history

public

Definition at line 2947 of file class.ilObjContentObjectGUI.php.

References ilHistoryGUI\getHistoryTable(), and setTabs().

{
$this->setTabs();
require_once("classes/class.ilHistoryGUI.php");
$hist_gui =& new ilHistoryGUI($this->object->getId() ,
$this->object->getType());
$hist_html = $hist_gui->getHistoryTable(
$this->ctrl->getParameterArray($this, "history"),
$this->object->isActiveHistoryUserComments()
);
$this->tpl->setVariable("ADM_CONTENT", $hist_html);
}

+ Here is the call graph for this function:

ilObjContentObjectGUI::ilObjContentObjectGUI (   $a_data,
  $a_id = 0,
  $a_call_by_reference = true,
  $a_prepare_output = false 
)

Constructor.

public

Definition at line 49 of file class.ilObjContentObjectGUI.php.

References $ilCtrl, ilObjectGUI\$lng, and ilObjectGUI\ilObjectGUI().

Referenced by ilObjDlBookGUI\ilObjDlBookGUI(), and ilObjLearningModuleGUI\ilObjLearningModuleGUI().

{
global $lng, $ilCtrl;
//echo "<br>ilobjcontobjgui-constructor-id-$a_id";
$this->ctrl =& $ilCtrl;
$lng->loadLanguageModule("content");
parent::ilObjectGUI($a_data,$a_id,$a_call_by_reference,false);
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilObjContentObjectGUI::importFileObject ( )

display status information or report errors messages in case of error

public

Definition at line 1057 of file class.ilObjContentObjectGUI.php.

References $_GET, $file, ilPageObject\_handleImportRepositoryLinks(), ilObject\_writeImportId(), ilUtil\delDir(), ilUtil\moveUploadedFile(), ilUtil\redirect(), ilUtil\sendInfo(), and ilUtil\unzip().

{
global $_FILES, $rbacsystem, $ilDB;
include_once "./Modules/LearningModule/classes/class.ilObjLearningModule.php";
// check if file was uploaded
$source = $_FILES["xmldoc"]["tmp_name"];
if (($source == 'none') || (!$source))
{
$this->ilias->raiseError("No file selected!",$this->ilias->error_obj->MESSAGE);
}
// check create permission
/*
if (!$rbacsystem->checkAccess("create", $_GET["ref_id"], $_GET["new_type"]))
{
$this->ilias->raiseError($this->lng->txt("no_create_permission"), $this->ilias->error_obj->WARNING);
}*/
// check correct file type
$info = pathinfo($_FILES["xmldoc"]["name"]);
if (strtolower($info["extension"]) != "zip")
{
$this->ilias->raiseError("File must be a zip file!",$this->ilias->error_obj->MESSAGE);
}
// create and insert object in objecttree
include_once("./Modules/LearningModule/classes/class.ilObjContentObject.php");
$newObj = new ilObjContentObject();
$newObj->setType($_GET["new_type"]);
$newObj->setTitle($_FILES["xmldoc"]["name"]);
$newObj->setDescription("");
$newObj->create(true);
$newObj->createReference();
$newObj->putInTree($_GET["ref_id"]);
$newObj->setPermissions($_GET["ref_id"]);
$newObj->notify("new",$_GET["ref_id"],$_GET["parent_non_rbac_id"],$_GET["ref_id"],$newObj->getRefId());
// create learning module tree
$newObj->createLMTree();
// create import directory
$newObj->createImportDirectory();
// copy uploaded file to import directory
$file = pathinfo($_FILES["xmldoc"]["name"]);
$full_path = $newObj->getImportDirectory()."/".$_FILES["xmldoc"]["name"];
ilUtil::moveUploadedFile($_FILES["xmldoc"]["tmp_name"],
$_FILES["xmldoc"]["name"], $full_path);
//move_uploaded_file($_FILES["xmldoc"]["tmp_name"], $full_path);
// unzip file
ilUtil::unzip($full_path);
// determine filename of xml file
$subdir = basename($file["basename"],".".$file["extension"]);
$xml_file = $newObj->getImportDirectory()."/".$subdir."/".$subdir.".xml";
// check whether subdirectory exists within zip file
if (!is_dir($newObj->getImportDirectory()."/".$subdir))
{
$this->ilias->raiseError(sprintf($this->lng->txt("cont_no_subdir_in_zip"), $subdir),
$this->ilias->error_obj->MESSAGE);
}
// check whether xml file exists within zip file
if (!is_file($xml_file))
{
$this->ilias->raiseError(sprintf($this->lng->txt("cont_zip_file_invalid"), $subdir."/".$subdir.".xml"),
$this->ilias->error_obj->MESSAGE);
}
include_once ("./Modules/LearningModule/classes/class.ilContObjParser.php");
$contParser = new ilContObjParser($newObj, $xml_file, $subdir);
$contParser->startParsing();
ilObject::_writeImportId($newObj->getId(), $newObj->getImportId());
$newObj->MDUpdateListener('General');
// import style
$style_file = $newObj->getImportDirectory()."/".$subdir."/style.xml";
if (is_file($style_file))
{
require_once("./Services/Style/classes/class.ilObjStyleSheet.php");
$style = new ilObjStyleSheet();
$style->createFromXMLFile($style_file);
$newObj->writeStyleSheetId($style->getId());
}
// delete import directory
ilUtil::delDir($newObj->getImportDirectory());
ilUtil::sendInfo($this->lng->txt($this->type."_added"),true);
// handle internal links to this learning module
include_once("./Services/COPage/classes/class.ilPageObject.php");
$newObj->getType(), $newObj->getRefId());
ilUtil::redirect("ilias.php?ref_id=".$newObj->getRefId().
"&baseClass=ilLMEditorGUI");
}

+ Here is the call graph for this function:

ilObjContentObjectGUI::importObject ( )

display dialogue for importing XML-LeaningObjects

public

Reimplemented from ilObjectGUI.

Definition at line 1044 of file class.ilObjContentObjectGUI.php.

References createObject().

{
$this->createObject();
return;
}

+ Here is the call graph for this function:

ilObjContentObjectGUI::info ( )

info permissions

Definition at line 1825 of file class.ilObjContentObjectGUI.php.

References ilObjectGUI\infoObject(), and setTabs().

{
$this->setTabs();
$this->infoObject();
}

+ Here is the call graph for this function:

ilObjContentObjectGUI::insertChapter ( )

Insert (multiple) chapters at node.

Definition at line 3383 of file class.ilObjContentObjectGUI.php.

References $ilCtrl, ilHierarchyFormGUI\getPostFirstChild(), ilHierarchyFormGUI\getPostMulti(), ilHierarchyFormGUI\getPostNodeId(), IL_FIRST_NODE, and ilLMObject\putInTree().

{
global $ilCtrl;
include_once("./Modules/LearningModule/classes/class.ilChapterHierarchyFormGUI.php");
if (!ilChapterHierarchyFormGUI::getPostFirstChild()) // insert after node id
{
$parent_id = $this->lm_tree->getParentId($node_id);
$target = $node_id;
}
else // insert as first child
{
$parent_id = $node_id;
$target = IL_FIRST_NODE;
}
for ($i = 1; $i <= $num; $i++)
{
$chap = new ilStructureObject($this->object);
$chap->setType("st");
$chap->setTitle("");
$chap->setLMId($this->object->getId());
$chap->create();
ilLMObject::putInTree($chap, $parent_id, $target);
}
$ilCtrl->redirect($this, "chapters");
}

+ Here is the call graph for this function:

ilObjContentObjectGUI::insertChapterClip ( )

Insert Chapter from clipboard.

Definition at line 3419 of file class.ilObjContentObjectGUI.php.

References $ilCtrl, $ilLog, ilEditClipboard\clear(), ilEditClipboard\getAction(), ilHierarchyFormGUI\getPostFirstChild(), ilHierarchyFormGUI\getPostNodeId(), IL_FIRST_NODE, ilLMObject\pasteTree(), and ilLMObject\updateInternalLinks().

Referenced by pasteChapter().

{
global $ilUser, $ilCtrl, $ilLog;
include_once("./Modules/LearningModule/classes/class.ilChapterHierarchyFormGUI.php");
if ($ilUser->getPref("lm_js_chapter_editing") != "disable")
{
//$num = ilChapterHierarchyFormGUI::getPostMulti();
}
else
{
if (!isset($_POST["id"]) || $_POST["id"][0] == -1)
{
$node_id = $this->lm_tree->getRootId();
$first_child = true;
}
else
{
$node_id = $_POST["id"][0];
$first_child = false;
}
}
$ilLog->write("InsertChapterClip, num: $num, node_id: $node_id, ".
if (!$first_child) // insert after node id
{
$parent_id = $this->lm_tree->getParentId($node_id);
$target = $node_id;
}
else // insert as first child
{
$parent_id = $node_id;
$target = IL_FIRST_NODE;
}
// copy and paste
$chapters = $ilUser->getClipboardObjects("st", true);
$copied_nodes = array();
foreach ($chapters as $chap)
{
$ilLog->write("Call pasteTree, Target LM: ".$this->object->getId().", Chapter ID: ".$chap["id"]
.", Parent ID: ".$parent_id.", Target: ".$target);
$cid = ilLMObject::pasteTree($this->object, $chap["id"], $parent_id,
$target, $chap["insert_time"], $copied_nodes,
$target = $cid;
}
{
$ilUser->clipboardDeleteObjectsOfType("pg");
$ilUser->clipboardDeleteObjectsOfType("st");
}
$this->object->checkTree();
$ilCtrl->redirect($this, "chapters");
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilObjContentObjectGUI::linkChecker ( )

Definition at line 2963 of file class.ilObjContentObjectGUI.php.

References ilObjectGUI\$ilias, __initLinkChecker(), ilLinkCheckNotify\_getNotifyStatus(), ilLMPageObject\_getPresentationTitle(), ilUtil\formCheckbox(), ilUtil\getImagePath(), setTabs(), and ilUtil\switchColor().

Referenced by refreshLinkCheck(), and saveLinkCheck().

{
global $ilias,$ilUser;
$invalid_links = $this->link_checker_obj->getInvalidLinksFromDB();
$this->setTabs();
$this->tpl->addBlockFile("ADM_CONTENT", "adm_content", "tpl.link_check.html", "Modules/LearningModule");
if($last_access = $this->link_checker_obj->getLastCheckTimestamp())
{
$this->tpl->setCurrentBlock("LAST_MODIFIED");
$this->tpl->setVariable("AS_OF",$this->lng->txt('last_change').": ");
$this->tpl->setVariable("LAST_CHECK",date('Y-m-d H:i:s',$last_access));
$this->tpl->parseCurrentBlock();
}
$this->tpl->setVariable("F_ACTION",$this->ctrl->getFormAction($this));
$this->tpl->setVariable("TYPE_IMG",ilUtil::getImagePath('icon_lm.gif'));
$this->tpl->setVariable("ALT_IMG",$this->lng->txt('learning_module'));
$this->tpl->setVariable("TITLE",$this->object->getTitle().' ('.$this->lng->txt('link_check').')');
$this->tpl->setVariable("PAGE_TITLE",$this->lng->txt('cont_pg_title'));
$this->tpl->setVariable("URL",$this->lng->txt('url'));
$this->tpl->setVariable("OPTIONS",$this->lng->txt('edit'));
if(!count($invalid_links))
{
$this->tpl->setCurrentBlock("no_invalid");
$this->tpl->setVariable("TXT_NO_INVALID",$this->lng->txt('no_invalid_links'));
$this->tpl->parseCurrentBlock();
}
else
{
$counter = 0;
foreach($invalid_links as $invalid)
{
$this->tpl->setCurrentBlock("invalid_row");
$this->tpl->setVariable("ROW_COLOR",ilUtil::switchColor(++$counter,'tblrow1','tblrow2'));
$this->tpl->setVariable("ROW_PAGE_TITLE",
ilLMPageObject::_getPresentationTitle($invalid['page_id'],$this->object->getPageHeader()));
$this->tpl->setVariable("ROW_URL",$invalid['url']);
// EDIT IMAGE
$this->ctrl->setParameterByClass('ilLMPageObjectGUI','obj_id',$invalid['page_id']);
$this->tpl->setVariable("ROW_EDIT_LINK",$this->ctrl->getLinkTargetByClass('ilLMPageObjectGUI','edit'));
$this->tpl->setVariable("ROW_IMG",ilUtil::getImagePath('edit.gif'));
$this->tpl->setVariable("ROW_ALT_IMG",$this->lng->txt('edit'));
$this->tpl->parseCurrentBlock();
}
}
if((bool) $ilias->getSetting('cron_link_check'))
{
include_once './classes/class.ilLinkCheckNotify.php';
// Show message block
$this->tpl->setCurrentBlock("MESSAGE_BLOCK");
$this->tpl->setVariable("INFO_MESSAGE",$this->lng->txt('link_check_message_a'));
$this->tpl->setVariable("CHECK_MESSAGE",ilUtil::formCheckbox(
ilLinkCheckNotify::_getNotifyStatus($ilUser->getId(),$this->object->getId()),
'link_check_message',
1));
$this->tpl->setVariable("INFO_MESSAGE_LONG",$this->lng->txt('link_check_message_b'));
$this->tpl->parseCurrentBlock();
// Show save button
$this->tpl->setCurrentBlock("CRON_ENABLED");
$this->tpl->setVariable("DOWNRIGHT_IMG",ilUtil::getImagePath('arrow_downright.gif'));
$this->tpl->setVariable("BTN_SUBMIT_LINK_CHECK",$this->lng->txt('save'));
$this->tpl->parseCurrentBlock();
}
$this->tpl->setVariable("BTN_REFRESH",$this->lng->txt('refresh'));
return true;
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilObjContentObjectGUI::listLinks ( )

List all broken links.

Definition at line 1442 of file class.ilObjContentObjectGUI.php.

References ilObjectGUI\$tpl, and setTabs().

{
global $tpl;
$this->setTabs();
include_once("./Modules/LearningModule/classes/class.ilLinksTableGUI.php");
$table_gui = new ilLinksTableGUI($this, "listLinks",
$this->object->getId(), $this->object->getType());
$tpl->setContent($table_gui->getHTML());
}

+ Here is the call graph for this function:

ilObjContentObjectGUI::moveChapter (   $a_parent_subobj_id = 0)

move a single chapter (selection)

Definition at line 1872 of file class.ilObjContentObjectGUI.php.

References IL_FIRST_NODE, ilUtil\sendInfo(), and ilEditClipboard\storeContentObject().

Referenced by ilStructureObjectGUI\cutChapter().

{
if(!isset($_POST["id"]))
{
$this->ilias->raiseError($this->lng->txt("no_checkbox"),$this->ilias->error_obj->MESSAGE);
}
//echo "Hallo::"; exit;
if(count($_POST["id"]) > 1)
{
$this->ilias->raiseError($this->lng->txt("cont_select_max_one_item"),$this->ilias->error_obj->MESSAGE);
}
if(count($_POST["id"]) == 1 && $_POST["id"][0] == IL_FIRST_NODE)
{
$this->ilias->raiseError($this->lng->txt("cont_select_item"), $this->ilias->error_obj->MESSAGE);
}
// SAVE POST VALUES
ilEditClipboard::storeContentObject("st", $_POST["id"][0], "move");
ilUtil::sendInfo($this->lng->txt("cont_chap_select_target_now"), true);
if ($a_parent_subobj_id == 0)
{
$this->ctrl->redirect($this, "chapters");
}
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilObjContentObjectGUI::movePage ( )

move page

Definition at line 2079 of file class.ilObjContentObjectGUI.php.

References ilLMObject\clipboardCut(), ilEditClipboard\setAction(), and ilUtil\stripSlashesArray().

{
if(!isset($_POST["id"]))
{
$this->ilias->raiseError($this->lng->txt("no_checkbox"),$this->ilias->error_obj->MESSAGE);
}
$items = ilUtil::stripSlashesArray($_POST["id"]);
ilLMObject::clipboardCut($this->object->getId(), $items);
$this->ctrl->redirect($this, "pages");
}

+ Here is the call graph for this function:

ilObjContentObjectGUI::owner ( )

show owner of content object

Definition at line 1845 of file class.ilObjContentObjectGUI.php.

References ilObjectGUI\ownerObject(), and setTabs().

{
$this->setTabs();
$this->ownerObject();
}

+ Here is the call graph for this function:

ilObjContentObjectGUI::pages ( )

Definition at line 1297 of file class.ilObjContentObjectGUI.php.

References ilObjectGUI\$tree, ilLMObject\_lookupActive(), ilPageObject\_lookupContainsDeactivatedElements(), formSelect(), ilEditClipboard\getAction(), ilEditClipboard\getContentObjectType(), getContextPath(), ilUtil\getImagePath(), ilLMPageObject\getPageList(), IL_FIRST_NODE, ilObjectGUI\setActions(), setTabs(), showActions(), and ilUtil\switchColor().

{
global $tree;
$this->setTabs();
$this->tpl->addBlockFile("ADM_CONTENT", "adm_content", "tpl.all_pages.html", "Modules/LearningModule");
$num = 0;
$this->tpl->setCurrentBlock("form");
$this->ctrl->setParameter($this, "backcmd", "pages");
$this->tpl->setVariable("FORMACTION", $this->ctrl->getFormAction($this));
$this->tpl->setVariable("HEADER_TEXT", $this->lng->txt("cont_pages"));
$this->tpl->setVariable("CONTEXT", $this->lng->txt("cont_usage"));
$this->tpl->setVariable("CHECKBOX_TOP", IL_FIRST_NODE);
$cnt = 0;
$pages = ilLMPageObject::getPageList($this->object->getId());
foreach ($pages as $page)
{
$this->tpl->setCurrentBlock("table_row");
// check activation
if (!ilLMPageObject::_lookupActive($page["obj_id"]))
{
$this->tpl->setVariable("IMG_OBJ", ilUtil::getImagePath("icon_pg_d.gif"));
$this->tpl->setVariable("IMG_ALT",
$this->lng->txt("cont_page_deactivated"));
}
else
{
$this->object->getType()))
{
$this->tpl->setVariable("IMG_OBJ", ilUtil::getImagePath("icon_pg_del.gif"));
$this->tpl->setVariable("IMG_ALT",
$this->lng->txt("cont_page_deactivated_elements"));
}
else
{
$this->tpl->setVariable("IMG_OBJ", ilUtil::getImagePath("icon_pg.gif"));
$this->tpl->setVariable("IMG_ALT",
$this->lng->txt("pg"));
}
}
// color changing
$css_row = ilUtil::switchColor($cnt++,"tblrow1","tblrow2");
// checkbox
$this->tpl->setVariable("CHECKBOX_ID", $page["obj_id"]);
$this->tpl->setVariable("CSS_ROW", $css_row);
// link
$this->ctrl->setParameter($this, "backcmd", "");
$this->ctrl->setParameterByClass("ilLMPageObjectGUI", "obj_id", $page["obj_id"]);
//echo "<br>:".$this->ctrl->getLinkTargetByClass("ilLMPageObjectGUI", "view").":";
$this->tpl->setVariable("LINK_TARGET",
$this->ctrl->getLinkTargetByClass("ilLMPageObjectGUI", "edit"));
// title
$this->tpl->setVariable("TEXT_CONTENT", $page["title"]);
// context
if ($this->lm_tree->isInTree($page["obj_id"]))
{
$path_str = $this->getContextPath($page["obj_id"]);
}
else
{
$path_str = "---";
}
// check whether page is header or footer
$add_str = "";
if ($page["obj_id"] == $this->object->getHeaderPage())
{
$add_str = " <b>(".$this->lng->txt("cont_header").")</b>";
}
if ($page["obj_id"] == $this->object->getFooterPage())
{
$add_str = " <b>(".$this->lng->txt("cont_footer").")</b>";
}
$this->tpl->setVariable("TEXT_CONTEXT", $path_str.$add_str);
$this->tpl->parseCurrentBlock();
}
if($cnt == 0)
{
$this->tpl->setCurrentBlock("notfound");
$this->tpl->setVariable("NUM_COLS", 4);
$this->tpl->setVariable("TXT_OBJECT_NOT_FOUND", $this->lng->txt("obj_not_found"));
$this->tpl->parseCurrentBlock();
}
else
{
$acts = array("delete" => "delete", "movePage" => "movePage", "copyPage" => "copyPage",
"selectHeader" => "selectHeader", "selectFooter" => "selectFooter",
"activatePages" => "cont_de_activate");
{
$acts["pastePage"] = "pastePage";
}
/*
if (ilEditClipboard::getContentObjectType() == "st")
{
$acts["pasteChapter"] = "pasteChapter";
}*/
$this->setActions($acts);
$this->tpl->setVariable("NUM_COLS", 4);
$this->showActions();
// SHOW VALID ACTIONS
/*
$this->tpl->setCurrentBlock("operation_btn");
$this->tpl->setVariable("BTN_NAME", "delete");
$this->tpl->setVariable("BTN_VALUE", $this->lng->txt("delete"));
$this->tpl->parseCurrentBlock();*/
}
// SHOW POSSIBLE SUB OBJECTS
$this->tpl->setVariable("NUM_COLS", 4);
//$this->showPossibleSubObjects("st");
$subobj = array("pg");
$opts = ilUtil::formSelect(12,"new_type",$subobj);
$this->tpl->setCurrentBlock("add_object");
$this->tpl->setVariable("SELECT_OBJTYPE", $opts);
$this->tpl->setVariable("BTN_NAME", "create");
$this->tpl->setVariable("TXT_ADD", $this->lng->txt("create"));
$this->tpl->parseCurrentBlock();
$this->tpl->setCurrentBlock("form");
$this->tpl->parseCurrentBlock();
}

+ Here is the call graph for this function:

ilObjContentObjectGUI::pasteChapter (   $a_parent_subobj_id = 0)

paste chapter

Definition at line 1938 of file class.ilObjContentObjectGUI.php.

References ilLMObject\_lookupContObjID(), ilEditClipboard\clear(), ilEditClipboard\getAction(), ilEditClipboard\getContentObjectId(), ilEditClipboard\getContentObjectType(), ilLMObjectFactory\getInstance(), ilObjectFactory\getInstanceByObjId(), IL_FIRST_NODE, IL_LAST_NODE, insertChapterClip(), ilTree\setTableNames(), and ilLMObject\updateInternalLinks().

Referenced by ilStructureObjectGUI\pasteChapter().

{
return $this->insertChapterClip(false);
return;
{
$this->ilias->raiseError($this->lng->txt("no_chapter_in_clipboard"),$this->ilias->error_obj->MESSAGE);
}
$target_tree = new ilTree($this->object->getId());
$target_tree->setTableNames('lm_tree','lm_data');
$target_tree->setTreeTablePK("lm_id");
// check wether page belongs to lm
!= $this->object->getID())
{
$source_tree->setTableNames('lm_tree','lm_data');
$source_tree->setTreeTablePK("lm_id");
}
else
{
$source_tree =& $target_tree;
}
// check, if target is within subtree
$node = $source_tree->getNodeData($id);
$subnodes = $source_tree->getSubtree($node);
foreach ($subnodes as $subnode)
{
if($subnode["obj_id"] == $a_parent_subobj_id)
{
$this->ilias->raiseError($this->lng->txt("cont_target_within_source"),$this->ilias->error_obj->MESSAGE);
}
}
if($_POST["id"][0] == $id)
{
$this->ctrl->redirect($this, "chapters");
}
// determin parent
$parent = ($a_parent_subobj_id == 0)
? $target_tree->getRootId()
: $a_parent_subobj_id;
// determine target position
if(!isset($_POST["id"]))
{
$target = IL_LAST_NODE;
}
else
{
$target = $_POST["id"][0];
}
if($target == IL_FIRST_NODE) // do not move a chapter in front of a page
{
$childs =& $target_tree->getChildsByType($parent, "pg");
if (count($childs) != 0)
{
$target = $childs[count($childs) - 1]["obj_id"];
}
}
//echo ":".$id.":";
// delete old tree entries
//echo "-".ilEditClipboard::getAction()."-";
if (ilEditClipboard::getAction() == "move")
{
!= $this->object->getID())
{
// we should never reach these lines, moving chapters from on
// lm to another is not supported
if ($a_parent_subobj_id == 0)
{
$this->ctrl->redirect($this, "chapters");
}
return;
}
$target_tree->deleteTree($node);
if (!$target_tree->isInTree($id))
{
$target_tree->insertNode($id, $parent, $target);
foreach ($subnodes as $node)
{
//$obj_data =& $this->ilias->obj_factory->getInstanceByRefId($node["child"]);
//$obj_data->putInTree($node["parent"]);
if($node["obj_id"] != $id)
{
$target_tree->insertNode($node["obj_id"], $node["parent"]);
}
}
}
}
else // copy
{
$copied_nodes = array();
== $this->object->getID())
{
$source_obj = ilLMObjectFactory::getInstance($this->object, $id, true);
$source_obj->setLMId($this->object->getId());
$source_obj->copy($target_tree, $parent, $target, $copied_nodes);
}
else
{
$source_lm =& ilObjectFactory::getInstanceByObjId($lm_id);
$source_obj = ilLMObjectFactory::getInstance($source_lm, $id, true);
$source_obj->setLMId($lm_id);
$source_obj->copy($target_tree, $parent, $target, $copied_nodes);
}
}
// check the tree
$this->object->checkTree();
if ($a_parent_subobj_id == 0)
{
$this->ctrl->redirect($this, "chapters");
}
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilObjContentObjectGUI::pastePage ( )

paste page

Definition at line 1499 of file class.ilObjContentObjectGUI.php.

References ilLMObject\_lookupContObjID(), ilEditClipboard\clear(), ilEditClipboard\getAction(), ilEditClipboard\getContentObjectId(), ilEditClipboard\getContentObjectType(), and ilLMObject\updateInternalLinks().

{
{
$this->ilias->raiseError($this->lng->txt("no_page_in_clipboard"),$this->ilias->error_obj->MESSAGE);
}
// paste selected object
// copy page, if action is copy
if (ilEditClipboard::getAction() == "copy")
{
// check wether page belongs to lm
== $this->object->getID())
{
$lm_page = new ilLMPageObject($this->object, $id);
$new_page =& $lm_page->copy();
$id = $new_page->getId();
}
else
{
// get page from other content object into current content object
$lm_obj =& $this->ilias->obj_factory->getInstanceByObjId($lm_id);
$lm_page = new ilLMPageObject($lm_obj, $id);
$copied_nodes = array();
$new_page =& $lm_page->copyToOtherContObject($this->object, $copied_nodes);
$id = $new_page->getId();
}
}
// cut is not be possible in "all pages" form yet
{
// check wether page belongs not to lm
!= $this->object->getID())
{
$lm_obj =& $this->ilias->obj_factory->getInstanceByObjId($lm_id);
$lm_page = new ilLMPageObject($lm_obj, $id);
$lm_page->setLMId($this->object->getID());
$lm_page->update();
$page =& $lm_page->getPageObject();
$page->buildDom();
$page->setParentId($this->object->getID());
$page->update();
}
}
$this->ctrl->redirect($this, "pages");
}

+ Here is the call graph for this function:

ilObjContentObjectGUI::perm ( )

edit permissions

Definition at line 1803 of file class.ilObjContentObjectGUI.php.

References ilObjectGUI\permObject(), ilObjectGUI\setFormAction(), and setTabs().

{
$this->setTabs();
$this->setFormAction("addRole", $this->ctrl->getLinkTarget($this, "addRole"));
$this->setFormAction("permSave", $this->ctrl->getLinkTarget($this, "permSave"));
$this->permObject();
}

+ Here is the call graph for this function:

ilObjContentObjectGUI::permSave ( )

save permissions

Definition at line 1816 of file class.ilObjContentObjectGUI.php.

References ilObjectGUI\permSaveObject(), and ilObjectGUI\setReturnLocation().

{
$this->setReturnLocation("permSave", $this->ctrl->getLinkTarget($this, "perm"));
$this->permSaveObject();
}

+ Here is the call graph for this function:

ilObjContentObjectGUI::popup ( )

popup window for wysiwyg editor

Definition at line 693 of file class.ilObjContentObjectGUI.php.

References $_GET, and exit.

{
include_once "./Services/COPage/classes/class.ilWysiwygUtil.php";
$popup = new ilWysiwygUtil();
$popup->show($_GET["ptype"]);
}
ilObjContentObjectGUI::proceedDragDrop ( )

proceed drag and drop operations on pages/chapters

Definition at line 704 of file class.ilObjContentObjectGUI.php.

References $ilCtrl.

Referenced by explorer().

{
global $ilCtrl;
$this->object->executeDragDrop($_POST["il_hform_source_id"], $_POST["il_hform_target_id"],
$_POST["il_hform_fc"], $_POST["il_hform_as_subitem"]);
$ilCtrl->redirect($this, "chapters");
}

+ Here is the caller graph for this function:

ilObjContentObjectGUI::properties ( )

edit properties form

Reimplemented in ilObjDlBookGUI.

Definition at line 270 of file class.ilObjContentObjectGUI.php.

References $_GET, ilObjectGUI\$lng, __initLMMenuEditor(), ilFrameTargetInfo\_getFrame(), ilObjStyleSheet\_getStandardStyles(), ilObjStyleSheet\_lookupStandard(), ilObject\_lookupTitle(), formSelect(), ilObjContentObject\getAvailableLayouts(), ilUtil\getImagePath(), setTabs(), and ilUtil\yn2tf().

Referenced by ilObjLearningModuleGUI\view().

{
global $lng;
$lng->loadLanguageModule("style");
$this->setTabs();
//$showViewInFrameset = $this->ilias->ini->readVariable("layout","view_target") == "frame";
$showViewInFrameset = true;
if ($showViewInFrameset)
{
$buttonTarget = ilFrameTargetInfo::_getFrame("MainContent");
}
else
{
$buttonTarget = "ilContObj".$this->object->getID();
}
//add template for view button
$this->tpl->addBlockfile("BUTTONS", "buttons", "tpl.buttons.html");
// view button
$this->tpl->setCurrentBlock("btn_cell");
$this->tpl->setVariable("BTN_LINK", "ilias.php?baseClass=ilLMPresentationGUI&ref_id=".$this->object->getRefID());
$this->tpl->setVariable("BTN_TARGET"," target=\"".$buttonTarget."\" ");
$this->tpl->setVariable("BTN_TXT",$this->lng->txt("view"));
$this->tpl->parseCurrentBlock();
$this->tpl->setCurrentBlock("btn_cell");
$this->tpl->setVariable("BTN_LINK", $this->ctrl->getLinkTarget($this, "fixTreeConfirm"));
//$this->tpl->setVariable("BTN_TARGET"," target=\"_top\" ");
$this->tpl->setVariable("BTN_TXT", $this->lng->txt("cont_fix_tree"));
$this->tpl->parseCurrentBlock();
//$this->tpl->touchBlock("btn_row");
// edit public section
if ($this->ilias->getSetting("pub_section"))
{
if ($this->object->getType() != "dbk")
{
$this->tpl->setCurrentBlock("btn_cell");
$this->tpl->setVariable("BTN_LINK", $this->ctrl->getLinkTarget($this, "editPublicSection"));
//$this->tpl->setVariable("BTN_TARGET"," target=\"_top\" ");
$this->tpl->setVariable("BTN_TXT", $this->lng->txt("public_section"));
$this->tpl->parseCurrentBlock();
}
}
// lm properties
$this->tpl->addBlockFile("ADM_CONTENT", "adm_content", "tpl.lm_properties.html", "Modules/LearningModule");
$this->tpl->setVariable("FORMACTION", $this->ctrl->getFormAction($this));
$this->tpl->setVariable("TXT_PROPERTIES", $this->lng->txt("cont_lm_properties"));
// online
$this->tpl->setVariable("TXT_ONLINE", $this->lng->txt("cont_online"));
$this->tpl->setVariable("CBOX_ONLINE", "cobj_online");
$this->tpl->setVariable("VAL_ONLINE", "y");
if ($this->object->getOnline())
{
$this->tpl->setVariable("CHK_ONLINE", "checked");
}
// layout
$this->tpl->setVariable("TXT_LAYOUT", $this->lng->txt("cont_def_layout"));
$select_layout = ilUtil::formSelect ($this->object->getLayout(), "lm_layout",
$layouts, false, true);
$this->tpl->setVariable("SELECT_LAYOUT", $select_layout);
// style
$this->tpl->setVariable("TXT_STYLE", $this->lng->txt("cont_style"));
$fixed_style = $this->ilias->getSetting("fixed_content_style_id");
if ($fixed_style > 0)
{
$this->tpl->setVariable("VAL_STYLE",
ilObject::_lookupTitle($fixed_style)." (".
$this->lng->txt("global_fixed").")");
}
else
{
$this->tpl->setCurrentBlock("style_edit");
$style_id = $this->object->getStyleSheetId();
$st_styles = ilObjStyleSheet::_getStandardStyles(true, false,
$_GET["ref_id"]);
$st_styles[0] = $this->lng->txt("default");
ksort($st_styles);
$style_sel = ilUtil::formSelect ($style_id, "style_id",
$st_styles, false, true);
if ($style_id > 0)
{
// standard style
{
$this->tpl->setVariable("VAL_STYLE",
$style_sel);
}
// individual style
else
{
$this->tpl->setVariable("VAL_STYLE",
$this->tpl->setVariable("LINK_STYLE_EDIT",
$this->ctrl->getLinkTargetByClass("ilObjStyleSheetGUI", "edit"));
$this->tpl->setVariable("TXT_STYLE_EDIT",
$this->lng->txt("edit"));
//$this->tpl->setVariable("IMG_STYLE_EDIT",
// ilUtil::getImagePath("icon_pencil.gif"));
// delete icon
$this->tpl->setVariable("LINK_STYLE_DROP",
$this->ctrl->getLinkTargetByClass("ilObjStyleSheetGUI", "delete"));
$this->tpl->setVariable("TXT_STYLE_DROP",
$this->lng->txt("delete"));
//$this->tpl->setVariable("IMG_STYLE_DROP",
// ilUtil::getImagePath("delete.gif"));
}
}
if ($style_id <= 0 || ilObjStyleSheet::_lookupStandard($style_id))
{
$this->tpl->setVariable("VAL_STYLE",
$style_sel);
$this->tpl->setVariable("LINK_STYLE_CREATE",
$this->ctrl->getLinkTargetByClass("ilObjStyleSheetGUI", "create"));
$this->tpl->setVariable("TXT_STYLE_CREATE",
$this->lng->txt("sty_create_ind_style"));
}
$this->tpl->parseCurrentBlock();
}
// page header
$this->tpl->setVariable("TXT_PAGE_HEADER", $this->lng->txt("cont_page_header"));
$pg_header = array ("st_title" => $this->lng->txt("cont_st_title"),
"pg_title" => $this->lng->txt("cont_pg_title"),
"none" => $this->lng->txt("cont_none"));
$select_pg_head = ilUtil::formSelect ($this->object->getPageHeader(), "lm_pg_header",
$pg_header, false, true);
$this->tpl->setVariable("SELECT_PAGE_HEADER", $select_pg_head);
// chapter numbers
$this->tpl->setVariable("TXT_NUMBER", $this->lng->txt("cont_act_number"));
$this->tpl->setVariable("CBOX_NUMBER", "cobj_act_number");
$this->tpl->setVariable("VAL_NUMBER", "y");
if ($this->object->isActiveNumbering())
{
$this->tpl->setVariable("CHK_NUMBER", "checked");
}
// toc mode
$this->tpl->setVariable("TXT_TOC_MODE", $this->lng->txt("cont_toc_mode"));
$arr_toc_mode = array ("chapters" => $this->lng->txt("cont_chapters_only"),
"pages" => $this->lng->txt("cont_chapters_and_pages"));
$select_toc_mode = ilUtil::formSelect ($this->object->getTOCMode(), "toc_mode",
$arr_toc_mode, false, true);
$this->tpl->setVariable("SELECT_TOC_MODE", $select_toc_mode);
// public notes
if (!$this->ilias->getSetting('disable_notes'))
{
$this->tpl->setVariable("TXT_PUB_NOTES", $this->lng->txt("cont_public_notes"));
$this->tpl->setVariable("TXT_PUB_NOTES_DESC", $this->lng->txt("cont_public_notes_desc"));
$this->tpl->setVariable("CBOX_PUB_NOTES", "cobj_pub_notes");
$this->tpl->setVariable("VAL_PUB_NOTES", "y");
if ($this->object->publicNotes())
{
$this->tpl->setVariable("CHK_PUB_NOTES", "checked");
}
}
// clean frames
$this->tpl->setVariable("TXT_CLEAN_FRAMES", $this->lng->txt("cont_synchronize_frames"));
$this->tpl->setVariable("TXT_CLEAN_FRAMES_DESC", $this->lng->txt("cont_synchronize_frames_desc"));
$this->tpl->setVariable("CBOX_CLEAN_FRAMES", "cobj_clean_frames");
$this->tpl->setVariable("VAL_CLEAN_FRAMES", "y");
if ($this->object->cleanFrames())
{
$this->tpl->setVariable("CHK_CLEAN_FRAMES", "checked");
}
// history user comments
$this->tpl->setVariable("TXT_HIST_USER_COMMENTS", $this->lng->txt("enable_hist_user_comments"));
$this->tpl->setVariable("TXT_HIST_USER_COMMENTS_DESC", $this->lng->txt("enable_hist_user_comments_desc"));
$this->tpl->setVariable("CBOX_HIST_USER_COMMENTS", "cobj_user_comments");
$this->tpl->setVariable("VAL_HIST_USER_COMMENTS", "y");
if ($this->object->isActiveHistoryUserComments())
{
$this->tpl->setVariable("CHK_HIST_USER_COMMENTS", "checked");
}
// lm menu
$this->tpl->setVariable("TXT_LM_MENU", $this->lng->txt("cont_lm_menu"));
$this->tpl->setVariable("TXT_ACT_MENU", $this->lng->txt("cont_active"));
$this->tpl->setVariable("CBOX_LM_MENU", "cobj_act_lm_menu");
$this->tpl->setVariable("VAL_LM_MENU", "y");
if ($this->object->isActiveLMMenu())
{
$this->tpl->setVariable("CHK_LM_MENU", "checked");
}
// toc
$this->tpl->setVariable("TXT_TOC", $this->lng->txt("cont_toc"));
$this->tpl->setVariable("CBOX_TOC", "cobj_act_toc");
$this->tpl->setVariable("VAL_TOC", "y");
if ($this->object->isActiveTOC())
{
$this->tpl->setVariable("CHK_TOC", "checked");
}
// print view
$this->tpl->setVariable("TXT_PRINT", $this->lng->txt("cont_print_view"));
$this->tpl->setVariable("CBOX_PRINT", "cobj_act_print");
$this->tpl->setVariable("VAL_PRINT", "y");
if ($this->object->isActivePrintView())
{
$this->tpl->setVariable("CHK_PRINT", "checked");
}
// prevent glossary appendix
$this->tpl->setVariable("TXT_PRINT_PREV_GLO", $this->lng->txt("cont_print_view_pre_glo"));
$this->tpl->setVariable("CBOX_PRINT_PREV_GLO", "cobj_act_print_prev_glo");
$this->tpl->setVariable("VAL_PRINT_PREV_GLO", "y");
if ($this->object->isActivePreventGlossaryAppendix())
{
$this->tpl->setVariable("CHK_PRINT_PREV_GLO", "checked");
}
// downloads
$this->tpl->setVariable("TXT_DOWNLOADS", $this->lng->txt("cont_downloads"));
$this->tpl->setVariable("TXT_DOWNLOADS_DESC", $this->lng->txt("cont_downloads_desc"));
$this->tpl->setVariable("CBOX_DOWNLOADS", "cobj_act_downloads");
$this->tpl->setVariable("VAL_DOWNLOADS", "y");
if ($this->object->isActiveDownloads())
{
$this->tpl->setVariable("CHK_DOWNLOADS", "checked=\"checked\"");
}
$this->tpl->setVariable("TXT_DOWNLOADS_PUBLIC_DESC", $this->lng->txt("cont_downloads_public_desc"));
$this->tpl->setVariable("CBOX_DOWNLOADS_PUBLIC", "cobj_act_downloads_public");
$this->tpl->setVariable("VAL_DOWNLOADS_PUBLIC", "y");
if ($this->object->isActiveDownloadsPublic())
{
$this->tpl->setVariable("CHK_DOWNLOADS_PUBLIC", "checked=\"checked\"");
}
if (!$this->object->isActiveDownloads())
{
$this->tpl->setVariable("CHK2_DOWNLOADS_PUBLIC", "disabled=\"disabled\"");
}
// get user defined menu entries
$entries = $this->lmme_obj->getMenuEntries();
if (count($entries) > 0)
{
foreach ($entries as $entry)
{
$this->ctrl->setParameter($this, "menu_entry", $entry["id"]);
$this->tpl->setCurrentBlock("menu_entries");
if ($entry["type"] == "intern")
{
$entry["link"] = ILIAS_HTTP_PATH."/goto.php?target=".$entry["link"];
}
// add http:// prefix if not exist
if (!strstr($entry["link"],'://') && !strstr($entry["link"],'mailto:'))
{
$entry["link"] = "http://".$entry["link"];
}
$this->tpl->setVariable("ENTRY_LINK", $entry["link"]);
$this->tpl->setVariable("ENTRY_TITLE", $entry["title"]);
$this->tpl->setVariable("CBOX_ENTRY", "menu_entries[]");
$this->tpl->setVariable("VAL_ENTRY", $entry["id"]);
if (ilUtil::yn2tf($entry["active"]))
{
$this->tpl->setVariable("CHK_ENTRY", "checked=\"checked\"");
}
$this->tpl->setVariable("LINK_EDIT", $this->ctrl->getLinkTarget($this,"editMenuEntry"));
$this->tpl->setVariable("TARGET_EDIT", "content");
$this->tpl->setVariable("TXT_EDIT", $this->lng->txt("edit"));
$this->tpl->setVariable("IMG_EDIT", ilUtil::getImagePath("icon_pencil.gif"));
$this->tpl->setVariable("LINK_DROP", $this->ctrl->getLinkTarget($this,"deleteMenuEntry"));
$this->tpl->setVariable("TARGET_DROP", "content");
$this->tpl->setVariable("TXT_DROP", $this->lng->txt("drop"));
$this->tpl->setVariable("IMG_DROP", ilUtil::getImagePath("delete.gif"));
$this->tpl->parseCurrentBlock();
}
}
// add entry link
$this->tpl->setCurrentBlock("commands");
$this->tpl->setVariable("BTN_NAME", "saveProperties");
$this->tpl->setVariable("BTN_TEXT", $this->lng->txt("save"));
$this->tpl->setVariable("BTN_NAME2", "addMenuEntry");
$this->tpl->setVariable("BTN_TEXT2", $this->lng->txt("add_menu_entry"));
$this->tpl->parseCurrentBlock();
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilObjContentObjectGUI::publishExportFile ( )

download export file

Definition at line 2311 of file class.ilObjContentObjectGUI.php.

References $file.

{
if(!isset($_POST["file"]))
{
$this->ilias->raiseError($this->lng->txt("no_checkbox"),$this->ilias->error_obj->MESSAGE);
}
if (count($_POST["file"]) > 1)
{
$this->ilias->raiseError($this->lng->txt("cont_select_max_one_item"),$this->ilias->error_obj->MESSAGE);
}
$file = explode(":", $_POST["file"][0]);
$export_dir = $this->object->getExportDirectory($file[0]);
if ($this->object->getPublicExportFile($file[0]) ==
$file[1])
{
$this->object->setPublicExportFile($file[0], "");
}
else
{
$this->object->setPublicExportFile($file[0], $file[1]);
}
$this->object->update();
$this->ctrl->redirect($this, "exportList");
}
ilObjContentObjectGUI::refreshLinkCheck ( )

Definition at line 3073 of file class.ilObjContentObjectGUI.php.

References __initLinkChecker(), linkChecker(), and ilUtil\sendInfo().

{
if(!$this->link_checker_obj->checkPear())
{
ilUtil::sendInfo($this->lng->txt('missing_pear_library'));
$this->linkChecker();
return false;
}
$this->link_checker_obj->checkLinks();
ilUtil::sendInfo($this->lng->txt('link_checker_refreshed'));
$this->linkChecker();
return true;
}

+ Here is the call graph for this function:

ilObjContentObjectGUI::saveAllTitles ( )

Save all titles of chapters/pages.

Definition at line 3371 of file class.ilObjContentObjectGUI.php.

References $ilCtrl, ilLMObject\saveTitles(), and ilUtil\stripSlashesArray().

{
global $ilCtrl;
ilLMObject::saveTitles($this->object, ilUtil::stripSlashesArray($_POST["title"]));
$ilCtrl->redirect($this, "chapters");
}

+ Here is the call graph for this function:

ilObjContentObjectGUI::saveBibItem ( )

save bib item (module call)

Definition at line 1019 of file class.ilObjContentObjectGUI.php.

References ilCtrl\IL_RTOKEN_NAME, saveBibItemObject(), and setTabs().

{
$this->setTabs();
// questionable workaround to make this old stuff work
$this->ctrl->setParameter($this, ilCtrl::IL_RTOKEN_NAME, $this->ctrl->getRequestToken());
$this->saveBibItemObject($this->ctrl->getLinkTarget($this));
}

+ Here is the call graph for this function:

ilObjContentObjectGUI::saveBibItemObject (   $a_target = "")

save bib item (admin call)

Definition at line 995 of file class.ilObjContentObjectGUI.php.

References $_GET.

Referenced by saveBibItem().

{
include_once "./Modules/LearningModule/classes/class.ilBibItemGUI.php";
$bib_gui =& new ilBibItemGUI();
$bib_gui->setObject($this->object);
$bibItemIndex = $_POST["bibItemIndex"] ? $_POST["bibItemIndex"] : $_GET["bibItemIndex"];
$bibItemIndex *= 1;
if ($bibItemIndex < 0)
{
$bibItemIndex = 0;
}
$bibItemIndex = $bib_gui->save($bibItemIndex);
if ($a_target == "")
{
$a_target = "adm_object.php?ref_id=" . $this->object->getRefId();
}
$bib_gui->edit("ADM_CONTENT", "adm_content", $a_target, $bibItemIndex);
}

+ Here is the caller graph for this function:

ilObjContentObjectGUI::saveLinkCheck ( )

Definition at line 3046 of file class.ilObjContentObjectGUI.php.

References linkChecker(), and ilUtil\sendInfo().

{
global $ilDB,$ilUser;
include_once './classes/class.ilLinkCheckNotify.php';
$link_check_notify =& new ilLinkCheckNotify($ilDB);
$link_check_notify->setUserId($ilUser->getId());
$link_check_notify->setObjId($this->object->getId());
if($_POST['link_check_message'])
{
ilUtil::sendInfo($this->lng->txt('link_check_message_enabled'));
$link_check_notify->addNotifier();
}
else
{
ilUtil::sendInfo($this->lng->txt('link_check_message_disabled'));
$link_check_notify->deleteNotifier();
}
$this->linkChecker();
return true;
}

+ Here is the call graph for this function:

ilObjContentObjectGUI::saveMenuEntry ( )

save new menu entry

Definition at line 3152 of file class.ilObjContentObjectGUI.php.

References $ilCtrl, __initLMMenuEditor(), and ilUtil\sendInfo().

{
global $ilCtrl;
// check title and target
if (empty($_POST["title"]))
{
//$this->ilias->raiseError($this->lng->txt("please_enter_title"),$this->ilias->error_obj->MESSAGE);
ilUtil::sendInfo($this->lng->txt("please_enter_title") , true);
$ilCtrl->redirect($this, "addMenuEntry");
}
if (empty($_POST["target"]))
{
//$this->ilias->raiseError($this->lng->txt("please_enter_target"),$this->ilias->error_obj->MESSAGE);
ilUtil::sendInfo($this->lng->txt("please_enter_target"), true);
$ilCtrl->redirect($this, "addMenuEntry");
}
$this->lmme_obj->setTitle($_POST["title"]);
$this->lmme_obj->setTarget($_POST["target"]);
$this->lmme_obj->setLinkRefId($_POST["link_ref_id"]);
if ($_POST["link_ref_id"])
{
$this->lmme_obj->setLinkType("intern");
}
$this->lmme_obj->create();
ilUtil::sendInfo($this->lng->txt("msg_entry_added"), true);
$this->ctrl->redirect($this, "properties");
}

+ Here is the call graph for this function:

ilObjContentObjectGUI::saveObject ( )

save new content object to db

Reimplemented from ilObjectGUI.

Definition at line 829 of file class.ilObjContentObjectGUI.php.

References $_GET, ilUtil\redirect(), ilUtil\sendInfo(), and ilUtil\stripSlashes().

{
global $rbacadmin, $rbacsystem;
// always call parent method first to create an object_data entry & a reference
//$newObj = parent::saveObject();
// TODO: fix MetaDataGUI implementation to make it compatible to use parent call
if (!$rbacsystem->checkAccess("create", $_GET["ref_id"], $_GET["new_type"]))
{
$this->ilias->raiseError($this->lng->txt("no_create_permission"), $this->ilias->error_obj->MESSAGE);
}
else
{
// check title
if ($_POST["Fobject"]["title"] == "")
{
$this->ilias->raiseError($this->lng->txt("please_enter_title"), $this->ilias->error_obj->MESSAGE);
return;
}
// create and insert object in objecttree
include_once("./Modules/LearningModule/classes/class.ilObjContentObject.php");
$newObj = new ilObjContentObject();
$newObj->setType($this->type);
$newObj->setTitle(ilUtil::stripSlashes($_POST["Fobject"]["title"]));#"content object ".$newObj->getId()); // set by meta_gui->save
$newObj->setDescription(ilUtil::stripSlashes($_POST["Fobject"]["desc"])); // set by meta_gui->save
$newObj->create();
$newObj->createReference();
$newObj->putInTree($_GET["ref_id"]);
$newObj->setPermissions($_GET["ref_id"]);
$newObj->notify("new",$_GET["ref_id"],$_GET["parent_non_rbac_id"],$_GET["ref_id"],$newObj->getRefId());
$newObj->setCleanFrames(true);
$newObj->update();
// setup rolefolder & default local roles (moderator)
//$roles = $newObj->initDefaultRoles();
// assign author role to creator of forum object
//$rbacadmin->assignUser($roles[0], $newObj->getOwner(), "n");
// create content object tree
$newObj->createLMTree();
// always send a message
ilUtil::sendInfo($this->lng->txt($this->type."_added"), true);
ilUtil::redirect("ilias.php?ref_id=".$newObj->getRefId().
"&baseClass=ilLMEditorGUI");
}
}

+ Here is the call graph for this function:

ilObjContentObjectGUI::saveProperties ( )

save properties

Definition at line 716 of file class.ilObjContentObjectGUI.php.

References ilObjectGUI\$ilias, __initLMMenuEditor(), ilObjStyleSheet\_lookupStandard(), ilUtil\sendInfo(), and ilUtil\yn2tf().

{
global $ilias;
if ($ilias->getSetting("fixed_content_style_id") <= 0 &&
(ilObjStyleSheet::_lookupStandard($this->object->getStyleSheetId())
|| $this->object->getStyleSheetId() == 0))
{
$this->object->setStyleSheetId($_POST["style_id"]);
}
$this->object->setLayout($_POST["lm_layout"]);
$this->object->setPageHeader($_POST["lm_pg_header"]);
$this->object->setTOCMode($_POST["toc_mode"]);
$this->object->setOnline(ilUtil::yn2tf($_POST["cobj_online"]));
$this->object->setActiveLMMenu(ilUtil::yn2tf($_POST["cobj_act_lm_menu"]));
$this->object->setActiveNumbering(ilUtil::yn2tf($_POST["cobj_act_number"]));
$this->object->setActiveTOC(ilUtil::yn2tf($_POST["cobj_act_toc"]));
$this->object->setActivePrintView(ilUtil::yn2tf($_POST["cobj_act_print"]));
$this->object->setActivePreventGlossaryAppendix(ilUtil::yn2tf($_POST["cobj_act_print_prev_glo"]));
$this->object->setActiveDownloads(ilUtil::yn2tf($_POST["cobj_act_downloads"]));
$this->object->setActiveDownloadsPublic(ilUtil::yn2tf($_POST["cobj_act_downloads_public"]));
$this->object->setCleanFrames(ilUtil::yn2tf($_POST["cobj_clean_frames"]));
$this->object->setPublicNotes(ilUtil::yn2tf($_POST["cobj_pub_notes"]));
$this->object->setHistoryUserComments(ilUtil::yn2tf($_POST["cobj_user_comments"]));
$this->object->updateProperties();
$this->lmme_obj->updateActiveStatus($_POST["menu_entries"]);
ilUtil::sendInfo($this->lng->txt("msg_obj_modified"), true);
$this->ctrl->redirect($this, "properties");
}

+ Here is the call graph for this function:

ilObjContentObjectGUI::savePublicSection ( )

Definition at line 2932 of file class.ilObjContentObjectGUI.php.

References ilLMObject\_writePublicAccessStatus(), and ilUtil\sendInfo().

{
//var_dump($_POST["lm_public_mode"]);exit;
$this->object->setPublicAccessMode($_POST["lm_public_mode"]);
$this->object->updateProperties();
ilLMObject::_writePublicAccessStatus($_POST["pages"],$this->object->getId());
ilUtil::sendInfo($this->lng->txt("msg_obj_modified"), true);
$this->ctrl->redirect($this, "editPublicSection");
}

+ Here is the call graph for this function:

ilObjContentObjectGUI::selectFooter ( )

select page as footer

Definition at line 3346 of file class.ilObjContentObjectGUI.php.

{
if(!isset($_POST["id"]))
{
$this->ilias->raiseError($this->lng->txt("no_checkbox"),$this->ilias->error_obj->MESSAGE);
}
if(count($_POST["id"]) > 1)
{
$this->ilias->raiseError($this->lng->txt("cont_select_max_one_item"),$this->ilias->error_obj->MESSAGE);
}
if ($_POST["id"][0] != $this->object->getFooterPage())
{
$this->object->setFooterPage($_POST["id"][0]);
}
else
{
$this->object->setFooterPage(0);
}
$this->object->updateProperties();
$this->ctrl->redirect($this, "pages");
}
ilObjContentObjectGUI::selectHeader ( )

select page as header

Definition at line 3321 of file class.ilObjContentObjectGUI.php.

{
if(!isset($_POST["id"]))
{
$this->ilias->raiseError($this->lng->txt("no_checkbox"),$this->ilias->error_obj->MESSAGE);
}
if(count($_POST["id"]) > 1)
{
$this->ilias->raiseError($this->lng->txt("cont_select_max_one_item"),$this->ilias->error_obj->MESSAGE);
}
if ($_POST["id"][0] != $this->object->getHeaderPage())
{
$this->object->setHeaderPage($_POST["id"][0]);
}
else
{
$this->object->setHeaderPage(0);
}
$this->object->updateProperties();
$this->ctrl->redirect($this, "pages");
}
ilObjContentObjectGUI::setilLMMenu (   $a_offline = false,
  $a_export_format = "",
  $a_active = "content",
  $a_use_global_tabs = false 
)

get lm menu html

Definition at line 2498 of file class.ilObjContentObjectGUI.php.

References $_GET, $ilCtrl, __initLMMenuEditor(), ilFrameTargetInfo\_getFrame(), ilPaymentObject\_requiresPurchaseToAccess(), and ilUtil\appendUrlParameterString().

{
global $ilCtrl,$ilUser, $ilAccess, $ilTabs;
$active[$a_active] = true;
if (!$this->object->isActiveLMMenu())
{
return "";
}
if ($a_use_global_tabs)
{
$tabs_gui = $ilTabs;
}
else
{
$tabs_gui = new ilTabsGUI();
}
// Determine whether the view of a learning resource should
// be shown in the frameset of ilias, or in a separate window.
//$showViewInFrameset = $this->ilias->ini->readVariable("layout","view_target") == "frame";
$showViewInFrameset = true;
if ($showViewInFrameset && !$a_offline)
{
$buttonTarget = ilFrameTargetInfo::_getFrame("MainContent");
}
else
{
$buttonTarget = "_top";
}
if ($a_export_format == "scorm")
{
$buttonTarget = "";
}
$requires_purchase_to_access = ilPaymentObject::_requiresPurchaseToAccess((int)$_GET['ref_id']);
// info button
if ($a_export_format != "scorm" && !$a_offline)
{
if (!$a_offline)
{
$ilCtrl->setParameterByClass("illmpresentationgui", "obj_id", $_GET["obj_id"]);
$link = $this->ctrl->getLinkTargetByClass(
array("illmpresentationgui", "ilinfoscreengui"), "showSummary");
}
else
{
$link = "./info.html";
}
$tabs_gui->addTarget(($requires_purchase_to_access ? 'buy' : 'info_short'), $link,
"", "", $buttonTarget, $active["info"]);
}
// content
if (!$a_offline && $ilAccess->checkAccess("read", "", $_GET["ref_id"]))
{
$ilCtrl->setParameterByClass("illmpresentationgui", "obj_id", $_GET["obj_id"]);
$tabs_gui->addTarget("content",
$ilCtrl->getLinkTargetByClass("illmpresentationgui", "layout"),
"", "", $buttonTarget, $active["content"]);
}
// table of contents
if (!$requires_purchase_to_access && $this->object->isActiveTOC() && $ilAccess->checkAccess("read", "", $_GET["ref_id"]))
{
if (!$a_offline)
{
$ilCtrl->setParameterByClass("illmpresentationgui", "obj_id", $_GET["obj_id"]);
$link = $ilCtrl->getLinkTargetByClass("illmpresentationgui", "showTableOfContents");
}
else
{
$link = "./table_of_contents.html";
}
$tabs_gui->addTarget("cont_toc", $link,
"", "", $buttonTarget, $active["toc"]);
}
// print view
if (!$requires_purchase_to_access && $this->object->isActivePrintView() && $ilAccess->checkAccess("read", "", $_GET["ref_id"]))
{
if (!$a_offline) // has to be implemented for offline mode
{
$ilCtrl->setParameterByClass("illmpresentationgui", "obj_id", $_GET["obj_id"]);
$link = $ilCtrl->getLinkTargetByClass("illmpresentationgui", "showPrintViewSelection");
$tabs_gui->addTarget("cont_print_view", $link,
"", "", $buttonTarget, $active["print"]);
}
}
// download
if (!$requires_purchase_to_access && $ilUser->getId() == ANONYMOUS_USER_ID)
{
$is_public = $this->object->isActiveDownloadsPublic();
}
else if(!$requires_purchase_to_access)
{
$is_public = true;
}
if (!$requires_purchase_to_access && $this->object->isActiveDownloads() && !$a_offline && $is_public &&
$ilAccess->checkAccess("read", "", $_GET["ref_id"]))
{
$ilCtrl->setParameterByClass("illmpresentationgui", "obj_id", $_GET["obj_id"]);
$link = $ilCtrl->getLinkTargetByClass("illmpresentationgui", "showDownloadList");
$tabs_gui->addTarget("download", $link,
"", "", $buttonTarget, $active["download"]);
}
if(!$requires_purchase_to_access)
{
// get user defined menu entries
$entries = $this->lmme_obj->getMenuEntries(true);
if (count($entries) > 0 && $ilAccess->checkAccess("read", "", $_GET["ref_id"]))
{
foreach ($entries as $entry)
{
// build goto-link for internal resources
if ($entry["type"] == "intern")
{
$entry["link"] = ILIAS_HTTP_PATH."/goto.php?target=".$entry["link"];
}
// add http:// prefix if not exist
if (!strstr($entry["link"],'://') && !strstr($entry["link"],'mailto:'))
{
$entry["link"] = "http://".$entry["link"];
}
if (!strstr($entry["link"],'mailto:'))
{
$entry["link"] = ilUtil::appendUrlParameterString($entry["link"], "ref_id=".$this->ref_id."&structure_id=".$this->obj_id);
}
$tabs_gui->addTarget($entry["title"],
$entry["link"],
"", "", "_blank", "", true);
}
}
}
return $tabs_gui->getHTML();
}

+ Here is the call graph for this function:

ilObjContentObjectGUI::setTabs ( )

output tabs

Reimplemented from ilObjectGUI.

Definition at line 2768 of file class.ilObjContentObjectGUI.php.

References ilUtil\getImagePath(), and getTabs().

Referenced by addBibItem(), addMenuEntry(), ilObjDlBookGUI\addTranslation(), chapters(), confirmDeleteExportFile(), delete(), deleteBibItem(), editBibItem(), editMenuEntry(), editPublicSection(), executeCommand(), exportList(), fixTreeConfirm(), history(), info(), linkChecker(), listLinks(), owner(), pages(), perm(), properties(), saveBibItem(), showEntrySelector(), and viewExportLog().

{
// catch feedback message
#include_once("classes/class.ilTabsGUI.php");
#$tabs_gui =& new ilTabsGUI();
$this->getTabs($this->tabs_gui);
$this->tpl->setCurrentBlock("header_image");
$this->tpl->setVariable("IMG_HEADER", ilUtil::getImagePath("icon_lm_b.gif"));
$this->tpl->parseCurrentBlock();
$this->tpl->setCurrentBlock("content");
#$this->tpl->setVariable("TABS", $tabs_gui->getHTML());
$this->tpl->setVariable("HEADER", $this->object->getTitle());
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilObjContentObjectGUI::showActions ( )

show possible action (form buttons)

public

Definition at line 1765 of file class.ilObjContentObjectGUI.php.

References ilObjectGUI\$actions, $d, and ilUtil\getImagePath().

Referenced by chapters(), and pages().

{
$notoperations = array();
$operations = array();
if (is_array($d))
{
foreach ($d as $row)
{
if (!in_array($row["name"], $notoperations))
{
$operations[] = $row;
}
}
}
if (count($operations)>0)
{
foreach ($operations as $val)
{
$this->tpl->setCurrentBlock("operation_btn");
$this->tpl->setVariable("BTN_NAME", $val["name"]);
$this->tpl->setVariable("BTN_VALUE", $this->lng->txt($val["lng"]));
$this->tpl->parseCurrentBlock();
}
$this->tpl->setCurrentBlock("operation");
$this->tpl->setVariable("IMG_ARROW",ilUtil::getImagePath("arrow_downright.gif"));
$this->tpl->parseCurrentBlock();
}
}

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

ilObjContentObjectGUI::showEntrySelector ( )

Definition at line 3264 of file class.ilObjContentObjectGUI.php.

References $_GET, formSelect(), ilUtil\sendInfo(), ilExplorer\setExpand(), and setTabs().

{
$this->setTabs();
$this->tpl->addBlockFile("ADM_CONTENT", "adm_content", "tpl.lm_menu_object_selector.html","Modules/LearningModule");
ilUtil::sendInfo($this->lng->txt("lm_menu_select_object_to_add"));
require_once ("./Modules/LearningModule/classes/class.ilLMMenuObjectSelector.php");
$exp = new ilLMMenuObjectSelector($this->ctrl->getLinkTarget($this,'test'),$this);
$exp->setExpand($_GET["lm_menu_expand"] ? $_GET["lm_menu_expand"] : $this->tree->readRootId());
$exp->setExpandTarget($this->ctrl->getLinkTarget($this,'showEntrySelector'));
$exp->setTargetGet("ref_id");
$exp->setRefId($this->cur_ref_id);
$sel_types = array('lm','dbk','glo','frm','exc','tst','svy');
$exp->setSelectableTypes($sel_types);
//$exp->setTargetGet("obj_id");
// build html-output
$exp->setOutput(0);
$output = $exp->getOutput();
// get page ids
foreach ($exp->format_options as $node)
{
if (!$node["container"])
{
$pages[] = $node["child"];
}
}
//$this->tpl->setCurrentBlock("content");
//var_dump($this->object->getPublicAccessMode());
// access mode selector
$this->tpl->setVariable("TXT_SET_PUBLIC_MODE", $this->lng->txt("set_public_mode"));
$this->tpl->setVariable("TXT_CHOOSE_PUBLIC_MODE", $this->lng->txt("choose_public_mode"));
$modes = array("complete" => $this->lng->txt("all_pages"), "selected" => $this->lng->txt("selected_pages_only"));
$select_public_mode = ilUtil::formSelect ($this->object->getPublicAccessMode(),"lm_public_mode",$modes, false, true);
$this->tpl->setVariable("SELECT_PUBLIC_MODE", $select_public_mode);
$this->tpl->setVariable("TXT_EXPLORER_HEADER", $this->lng->txt("choose_public_pages"));
$this->tpl->setVariable("EXP_REFRESH", $this->lng->txt("refresh"));
$this->tpl->setVariable("EXPLORER",$output);
$this->tpl->setVariable("ONCLICK",$js_pages);
$this->tpl->setVariable("TXT_CHECKALL", $this->lng->txt("check_all"));
$this->tpl->setVariable("TXT_UNCHECKALL", $this->lng->txt("uncheck_all"));
$this->tpl->setVariable("TXT_SAVE", $this->lng->txt("save"));
$this->tpl->setVariable("FORMACTION", $this->ctrl->getLinkTarget($this, "savePublicSection"));
//$this->tpl->parseCurrentBlock();
}

+ Here is the call graph for this function:

ilObjContentObjectGUI::updateMenuEntry ( )

update a menu entry

Definition at line 3237 of file class.ilObjContentObjectGUI.php.

References __initLMMenuEditor(), and ilUtil\sendInfo().

{
if (empty($_POST["menu_entry"]))
{
$this->ilias->raiseError($this->lng->txt("no_menu_entry_id"),$this->ilias->error_obj->MESSAGE);
}
// check title and target
if (empty($_POST["title"]))
{
$this->ilias->raiseError($this->lng->txt("please_enter_title"),$this->ilias->error_obj->MESSAGE);
}
if (empty($_POST["target"]))
{
$this->ilias->raiseError($this->lng->txt("please_enter_target"),$this->ilias->error_obj->MESSAGE);
}
$this->lmme_obj->readEntry($_POST["menu_entry"]);
$this->lmme_obj->setTitle($_POST["title"]);
$this->lmme_obj->setTarget($_POST["target"]);
$this->lmme_obj->update();
ilUtil::sendInfo($this->lng->txt("msg_entry_updated"), true);
$this->ctrl->redirect($this, "properties");
}

+ Here is the call graph for this function:

ilObjContentObjectGUI::view ( )

view content object

Reimplemented in ilObjLearningModuleGUI.

Definition at line 1855 of file class.ilObjContentObjectGUI.php.

References $_GET, ilObjectGUI\prepareOutput(), and ilObjectGUI\viewObject().

{
if (strtolower($_GET["baseClass"]) == "iladministrationgui")
{
$this->prepareOutput();
}
else
{
$this->viewObject();
}
}

+ Here is the call graph for this function:

ilObjContentObjectGUI::viewExportLog ( )

Definition at line 2269 of file class.ilObjContentObjectGUI.php.

References ilObjectGUI\$tree, exportMenu(), and setTabs().

{
global $tree;
$this->setTabs();
//add template for view button
$this->tpl->addBlockfile("BUTTONS", "buttons", "tpl.buttons.html");
$this->exportMenu();
// load files templates
$this->tpl->setVariable("ADM_CONTENT",
nl2br(file_get_contents($this->object->getExportDirectory()."/export.log")));
$this->tpl->parseCurrentBlock();
}

+ Here is the call graph for this function:

Field Documentation

ilObjContentObjectGUI::$ctrl

Definition at line 42 of file class.ilObjContentObjectGUI.php.


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