ILIAS  release_5-0 Revision 5.0.0-1144-gc4397b1f870
All Data Structures Namespaces Files Functions Variables Modules Pages
ilTermDefinitionEditorGUI Class Reference

GUI class for glossary term definition editor. More...

+ Collaboration diagram for ilTermDefinitionEditorGUI:

Public Member Functions

 ilTermDefinitionEditorGUI ()
 Constructor public. More...
 
executeCommand ()
 
 main_header ($a_header_title)
 output main header (title and locator) More...
 
 setTabs ()
 output tabs More...
 
 getTabs (&$tabs_gui)
 get tabs More...
 
 saveShortText ()
 

Data Fields

 $ilias
 
 $tpl
 
 $lng
 
 $glossary
 
 $definition
 
 $term
 

Detailed Description

GUI class for glossary term definition editor.

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

ilTermDefinitionEditorGUI: ilGlossaryDefPageGUI, ilMDEditorGUI

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

Member Function Documentation

◆ executeCommand()

& ilTermDefinitionEditorGUI::executeCommand ( )

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

References $_GET, $cmd, $ilCtrl, $lng, $ret, $tpl, ilObjStyleSheet\getContentStylePath(), ilMD\getGeneral(), ilUtil\getImagePath(), ilGlossaryTerm\getNumberOfUsages(), ilPageObjectGUI\getPageObject(), ilObjStyleSheet\getSyntaxStylePath(), ilUtil\sendInfo(), ilPageObjectGUI\setEditPreview(), setTabs(), and ilMDBase\update().

50  {
51  global $tpl, $ilCtrl, $lng;
52 
53  $next_class = $this->ctrl->getNextClass($this);
54  $cmd = $this->ctrl->getCmd();
55 
56  // content style
57  $this->tpl->setCurrentBlock("ContentStyle");
58  $this->tpl->setVariable("LOCATION_CONTENT_STYLESHEET",
59  ilObjStyleSheet::getContentStylePath($this->glossary->getStyleSheetId()));
60  $this->tpl->parseCurrentBlock();
61 
62  // syntax style
63  $this->tpl->setCurrentBlock("SyntaxStyle");
64  $this->tpl->setVariable("LOCATION_SYNTAX_STYLESHEET",
66  $this->tpl->parseCurrentBlock();
67 
68  require_once ("./Modules/Glossary/classes/class.ilGlossaryLocatorGUI.php");
69  $gloss_loc =& new ilGlossaryLocatorGUI();
70  $gloss_loc->setTerm($this->term);
71  $gloss_loc->setGlossary($this->glossary);
72  $gloss_loc->setDefinition($this->definition);
73 
74  $this->tpl->getStandardTemplate();
75  $this->tpl->setTitle($this->term->getTerm()." - ".
76  $this->lng->txt("cont_definition")." ".
77  $this->definition->getNr());
78  if ($this->ctrl->getNextClass() == "ilglossarydefpagegui")
79  {
80  $this->tpl->setTitleIcon(ilUtil::getImagePath("icon_glo.svg"));
81  }
82 
83  switch ($next_class)
84  {
85 
86  case "ilglossarydefpagegui":
87 
88  // output number of usages
89  if ($ilCtrl->getCmd() == "edit" &&
90  $ilCtrl->getCmdClass() == "ilglossarydefpagegui")
91  {
92  $nr = ilGlossaryTerm::getNumberOfUsages($_GET["term_id"]);
93  if ($nr > 0)
94  {
95  $link = "[<a href='".
96  $ilCtrl->getLinkTargetByClass("ilglossarytermgui", "listUsages").
97  "'>".$lng->txt("glo_list_usages")."</a>]";
98  ilUtil::sendInfo(sprintf($lng->txt("glo_term_is_used_n_times"),
99  $nr)." ".$link);
100  }
101  }
102 
103  // not so nice, to do: revise locator handling
104  if ($this->ctrl->getNextClass() == "ilglossarydefpagegui"
105  || $this->ctrl->getCmdClass() == "ileditclipboardgui")
106  {
107  $gloss_loc->display();
108  }
109  $this->setTabs();
110  $this->ctrl->setReturnByClass("ilGlossaryDefPageGUI", "edit");
111  $this->ctrl->setReturn($this, "listDefinitions");
112  $page_gui = new ilGlossaryDefPageGUI($this->definition->getId());
113  $page = $page_gui->getPageObject();
114  $this->definition->assignPageObject($page);
115  $page->addUpdateListener($this, "saveShortText");
116  $page_gui->setEditPreview(true);
117 
118  // metadata
119  // ... set title to term, if no title is given
120  include_once("./Services/MetaData/classes/class.ilMD.php");
121  $md = new ilMD($this->glossary->getId(), $this->definition->getId(), "gdf");
122  $md_gen = $md->getGeneral();
123  if ($md_gen->getTitle() == "")
124  {
125  $md_gen->setTitle($this->term->getTerm());
126  $md_gen->update();
127  }
128 
129  $page_gui->activateMetaDataEditor($this->glossary->getId(),
130  $this->definition->getId(), "gdf");
131  // $this->obj, "MDUpdateListener");
132 
133  $page_gui->setSourcecodeDownloadScript("ilias.php?baseClass=ilGlossaryPresentationGUI&amp;ref_id=".$_GET["ref_id"]);
134  $page_gui->setFullscreenLink("ilias.php?baseClass=ilGlossaryPresentationGUI&amp;cmd=fullscreen&amp;ref_id=".$_GET["ref_id"]);
135  $page_gui->setTemplateTargetVar("ADM_CONTENT");
136  $page_gui->setOutputMode("edit");
137  $page_gui->setStyleId($this->glossary->getStyleSheetId());
138  $page_gui->setLocator($gloss_loc);
139  $page_gui->setIntLinkReturn($this->ctrl->getLinkTargetByClass("ilobjglossarygui", "quickList",
140  "", false, false));
141  $page_gui->setPageBackTitle($this->lng->txt("cont_definition"));
142  $page_gui->setLinkParams("ref_id=".$_GET["ref_id"]);
143  $page_gui->setHeader($this->term->getTerm());
144  $page_gui->setFileDownloadLink("ilias.php?baseClass=ilGlossaryPresentationGUI&amp;cmd=downloadFile&amp;ref_id=".$_GET["ref_id"]);
145  $page_gui->setPresentationTitle($this->term->getTerm());
146  $ret =& $this->ctrl->forwardCommand($page_gui);
147  $tpl->setContent($ret);
148  break;
149 
150  default:
151  $this->setTabs();
152  $gloss_loc->display();
153  $ret =& $this->$cmd();
154  break;
155 
156  }
157  }
setEditPreview($a_editpreview)
Set Display first Edit tab, then Preview tab, instead of Page and Edit.
getPageObject()
Get Page Object.
$_GET["client_id"]
static getNumberOfUsages($a_term_id)
Get number of usages.
$cmd
Definition: sahs_server.php:35
getSyntaxStylePath()
get syntax style path
global $ilCtrl
Definition: ilias.php:18
static sendInfo($a_info="", $a_keep=false)
Send Info Message to Screen.
static getImagePath($img, $module_path="", $mode="output", $offline=false)
get image path (for images located in a template directory)
& getGeneral()
Definition: class.ilMD.php:55
getContentStylePath($a_style_id)
get content style path
Glossary definition page GUI class.
+ Here is the call graph for this function:

◆ getTabs()

ilTermDefinitionEditorGUI::getTabs ( $tabs_gui)

get tabs

Definition at line 187 of file class.ilTermDefinitionEditorGUI.php.

Referenced by setTabs().

188  {
189  // back to glossary
190  $tabs_gui->setBack2Target($this->lng->txt("glossary"),
191  $this->ctrl->getParentReturn($this));
192 
193  // back to upper context
194  $tabs_gui->setBackTarget($this->lng->txt("term"),
195  $this->ctrl->getLinkTargetByClass("ilglossarytermgui", "editTerm"));
196 
197  }
+ Here is the caller graph for this function:

◆ ilTermDefinitionEditorGUI()

ilTermDefinitionEditorGUI::ilTermDefinitionEditorGUI ( )

Constructor public.

Definition at line 32 of file class.ilTermDefinitionEditorGUI.php.

References $_GET, $ilCtrl, $ilias, $lng, and $tpl.

33  {
34  global $ilias, $tpl, $lng, $objDefinition, $ilCtrl;
35 
36  // initiate variables
37  $this->ilias =& $ilias;
38  $this->tpl =& $tpl;
39  $this->lng =& $lng;
40  $this->ctrl =& $ilCtrl;
41  $this->glossary =& new ilObjGlossary($_GET["ref_id"], true);
42  $this->definition =& new ilGlossaryDefinition($_GET["def"]);
43  $this->term =& new ilGlossaryTerm($this->definition->getTermId());
44 
45  $this->ctrl->saveParameter($this, array("def"));
46  }
$_GET["client_id"]
Class ilGlossaryTerm.
Class ilObjGlossary.
global $ilCtrl
Definition: ilias.php:18
redirection script todo: (a better solution should control the processing via a xml file) ...
Class ilGlossaryDefinition.

◆ main_header()

ilTermDefinitionEditorGUI::main_header (   $a_header_title)

output main header (title and locator)

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

References $lng.

164  {
165  global $lng;
166 
167  $this->tpl->getStandardTemplate();
168  $this->tpl->setTitle($a_header_title);
169  $this->displayLocator();
170  //$this->setAdminTabs($a_type);
171  }

◆ saveShortText()

ilTermDefinitionEditorGUI::saveShortText ( )

Definition at line 200 of file class.ilTermDefinitionEditorGUI.php.

201  {
202  $this->definition->updateShortText();
203  }

◆ setTabs()

ilTermDefinitionEditorGUI::setTabs ( )

output tabs

Definition at line 176 of file class.ilTermDefinitionEditorGUI.php.

References getTabs().

Referenced by executeCommand().

177  {
178  global $ilTabs;
179 
180  // catch feedback message
181  $this->getTabs($ilTabs);
182  }
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

Field Documentation

◆ $definition

ilTermDefinitionEditorGUI::$definition

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

◆ $glossary

ilTermDefinitionEditorGUI::$glossary

Definition at line 24 of file class.ilTermDefinitionEditorGUI.php.

◆ $ilias

ilTermDefinitionEditorGUI::$ilias

Definition at line 21 of file class.ilTermDefinitionEditorGUI.php.

Referenced by ilTermDefinitionEditorGUI().

◆ $lng

ilTermDefinitionEditorGUI::$lng

◆ $term

ilTermDefinitionEditorGUI::$term

Definition at line 26 of file class.ilTermDefinitionEditorGUI.php.

◆ $tpl

ilTermDefinitionEditorGUI::$tpl

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