ILIAS  trunk Revision v11.0_alpha-1731-gff9cd7e2bd3
All Data Structures Namespaces Files Functions Variables Enumerations Enumerator Modules Pages
ilPCSectionGUI Class Reference

This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Learning e.V. More...

+ Inheritance diagram for ilPCSectionGUI:
+ Collaboration diagram for ilPCSectionGUI:

Public Member Functions

 __construct (ilPageObject $a_pg_obj, ?ilPageContent $a_content_obj=null, string $a_hier_id="", string $a_pc_id="")
 
 getHTML (array $params)
 
 checkInput (ilPropertyFormGUI $form)
 
 executeCommand ()
 
 insert (?ilPropertyFormGUI $a_form=null)
 
 edit (bool $a_insert=false, ?ilPropertyFormGUI $a_form=null)
 
 initForm (bool $a_insert=false)
 
 create ()
 
 update ()
 
 setValuesFromForm (ilPropertyFormGUI $form)
 
- Public Member Functions inherited from ilPageContentGUI
 __construct (ilPageObject $a_pg_obj, ?ilPageContent $a_content_obj, string $a_hier_id="", string $a_pc_id="0")
 
 setContentObject (ilPageContent $a_val)
 
 getContentObject ()
 
 setPage (ilPageObject $a_val)
 
 getPage ()
 
 setPageConfig (ilPageConfig $a_val)
 
 getPageConfig ()
 
 setStyleId (int $a_styleid)
 
 getStyleId ()
 
 getStyle ()
 
 getCharacteristicsOfCurrentStyle (array $a_type)
 Get characteristics of current style and call setCharacteristics, if style is given. More...
 
 setCharacteristics (array $a_chars)
 
 getCharacteristics ()
 
 getHierId ()
 
 setHierId (string $a_hier_id)
 set hierarchical id in dom object More...
 
 delete ()
 
 displayValidationError ()
 
 cancelCreate ()
 cancel creating page content More...
 
 cancelUpdate ()
 cancel update More...
 
 cancel ()
 Cancel. More...
 
 deactivate ()
 gui function set enabled if is not enabled and vice versa More...
 
 cut ()
 Cut single element. More...
 
 copy ()
 Copy single element. More...
 
 getTemplateOptions (string $a_type="")
 Get table templates. More...
 

Static Public Member Functions

static _getStandardCharacteristics ()
 
static _getCharacteristics (int $a_style_id)
 
- Static Public Member Functions inherited from ilPageContentGUI
static _getCommonBBButtons ()
 

Additional Inherited Members

- Data Fields inherited from ilPageContentGUI
ilPageContent $content_obj
 
ilGlobalTemplateInterface $tpl
 
ilLanguage $lng
 
ilCtrl $ctrl
 
ilPageObject $pg_obj
 
string $hier_id = ""
 
DOMDocument $dom
 
 $updated
 
string $target_script = ""
 
string $return_location = ""
 
ilPageConfig $page_config = null
 
- Static Public Attributes inherited from ilPageContentGUI
static string $style_selector_reset = "margin-top:2px; margin-bottom:2px; text-indent:0px; position:static; float:none; width: auto;"
 
- Protected Member Functions inherited from ilPageContentGUI
 redirectToParent (string $hier_id="")
 
 getParentReturn (string $hier_id="")
 
 updateAndReturn ()
 
 setCurrentTextLang (string $lang_key)
 
 getCurrentTextLang ()
 
 setEditorToolContext ()
 
 initEditor ()
 
 getEditorScriptTag (string $form_pc_id="", string $form_cname="")
 
- Protected Attributes inherited from ilPageContentGUI
ILIAS COPage Editor GUIService $editor_gui
 
ILIAS COPage InternalGUIService $gui
 
EditSessionRepository $edit_repo
 
string $pc_id = ""
 
array $chars
 
ilObjStyleSheet $style = null
 
LOMServices $lom_services
 
ilLogger $log
 
int $styleid = 0
 
EditGUIRequest $request
 
string $sub_command = ""
 
int $requested_ref_id = 0
 
ILIAS GlobalScreen ScreenContext ContextServices $tool_context
 
Style Content CharacteristicManager $char_manager
 
- Static Protected Attributes inherited from ilPageContentGUI
static array $common_bb_buttons
 

Detailed Description

This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Learning e.V.

ILIAS is licensed with the GPL-3.0, see https://www.gnu.org/licenses/gpl-3.0.en.html You should have received a copy of said license along with the source code, too.

If this is not the case or you just want to try ILIAS, you'll find us at: https://www.ilias.de https://github.com/ILIAS-eLearning User Interface for Section Editing

Author
Alexander Killing killi.nosp@m.ng@l.nosp@m.eifos.nosp@m..de ilPCSectionGUI: ilPropertyFormGUI

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

Constructor & Destructor Documentation

◆ __construct()

ilPCSectionGUI::__construct ( ilPageObject  $a_pg_obj,
?ilPageContent  $a_content_obj = null,
string  $a_hier_id = "",
string  $a_pc_id = "" 
)

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

References $DIC, ILIAS\GlobalScreen\Provider\__construct(), _getStandardCharacteristics(), ILIAS\Repository\ctrl(), ILIAS\Repository\lng(), and ilPageContentGUI\setCharacteristics().

31  {
32  global $DIC;
33 
34  $this->tpl = $DIC["tpl"];
35  $this->lng = $DIC->language();
36  $this->ctrl = $DIC->ctrl();
37  parent::__construct($a_pg_obj, $a_content_obj, $a_hier_id, $a_pc_id);
38 
40  }
static _getStandardCharacteristics()
setCharacteristics(array $a_chars)
global $DIC
Definition: shib_login.php:22
__construct(Container $dic, ilPlugin $plugin)
+ Here is the call graph for this function:

Member Function Documentation

◆ _getCharacteristics()

static ilPCSectionGUI::_getCharacteristics ( int  $a_style_id)
static

Definition at line 141 of file class.ilPCSectionGUI.php.

References ilPageContentGUI\$char_manager, ilPageContentGUI\$chars, $DIC, ilPageContentGUI\$request, ilPageContentGUI\$requested_ref_id, $service, ilPageContentGUI\$style, _getStandardCharacteristics(), ilObject\_lookupType(), and ilObjStyleSheet\getCharacteristics().

Referenced by SectionStyleSelector\getStyleSelector(), and ilPageEditorGUI\initCharacteristicForm().

141  : array
142  {
143  global $DIC;
144 
145  $service = $DIC->contentStyle()->internal();
146  $request = $DIC->copage()->internal()
147  ->gui()
148  ->pc()
149  ->editRequest();
150  $requested_ref_id = $request->getRefId();
151  $access_manager = $service->domain()->access(
153  $DIC->user()->getId()
154  );
155  $char_manager = $service->domain()->characteristic(
156  $a_style_id,
157  $access_manager
158  );
159 
161  $chars = $std_chars;
162  if ($a_style_id > 0 &&
163  ilObject::_lookupType($a_style_id) == "sty") {
164  $style = new ilObjStyleSheet($a_style_id);
165  $chars = $style->getCharacteristics("section");
166  $new_chars = array();
167  foreach ($chars as $char) {
168  if ($char_manager->isOutdated("section", $char)) {
169  continue;
170  }
171  if (($std_chars[$char] ?? "") != "") { // keep lang vars for standard chars
172  $new_chars[$char] = $std_chars[$char];
173  } else {
174  $new_chars[$char] = $char;
175  }
176  asort($new_chars);
177  }
178  $chars = $new_chars;
179  }
180  return $chars;
181  }
static _getStandardCharacteristics()
Style Content CharacteristicManager $char_manager
global $DIC
Definition: shib_login.php:22
getCharacteristics(string $a_type="", bool $a_no_hidden=false, bool $a_include_core=true)
Get characteristics.
static _lookupType(int $id, bool $reference=false)
$service
Definition: ltiservices.php:40
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ _getStandardCharacteristics()

static ilPCSectionGUI::_getStandardCharacteristics ( )
static

Definition at line 113 of file class.ilPCSectionGUI.php.

References $DIC, ilPageContentGUI\$lng, and ilLanguage\txt().

Referenced by __construct(), and _getCharacteristics().

113  : array
114  {
115  global $DIC;
116 
117  $lng = $DIC->language();
118 
119  return array("Block" => $lng->txt("cont_Block"),
120  "Mnemonic" => $lng->txt("cont_Mnemonic"),
121  "Remark" => $lng->txt("cont_Remark"),
122  "Example" => $lng->txt("cont_Example"),
123  "Additional" => $lng->txt("cont_Additional"),
124  "Special" => $lng->txt("cont_Special"),
125 
126  "Attention" => $lng->txt("cont_Attention"),
127  "Background" => $lng->txt("cont_Background"),
128  "Citation" => $lng->txt("cont_Citation"),
129  "Confirmation" => $lng->txt("cont_Confirmation"),
130  "Information" => $lng->txt("cont_Information"),
131  "Interaction" => $lng->txt("cont_Interaction"),
132  "Link" => $lng->txt("cont_Link"),
133  "Literature" => $lng->txt("cont_Literature"),
134  "Separator" => $lng->txt("cont_Separator"),
135  "StandardCenter" => $lng->txt("cont_StandardCenter"),
136 
137  "Excursus" => $lng->txt("cont_Excursus"),
138  "AdvancedKnowledge" => $lng->txt("cont_AdvancedKnowledge"));
139  }
txt(string $a_topic, string $a_default_lang_fallback_mod="")
gets the text for a given topic if the topic is not in the list, the topic itself with "-" will be re...
global $DIC
Definition: shib_login.php:22
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ checkInput()

ilPCSectionGUI::checkInput ( ilPropertyFormGUI  $form)

Definition at line 97 of file class.ilPCSectionGUI.php.

References ilPropertyFormGUI\checkInput(), ilPropertyFormGUI\getItemByPostVar(), IL_CAL_UNIX, and ILIAS\Repository\lng().

Referenced by getHTML().

97  : bool
98  {
99  $ret = $form->checkInput();
100  if ($ret) {
101  $from = $form->getItemByPostVar("active_from")->getDate();
102  $to = $form->getItemByPostVar("active_to")->getDate();
103  if ($from && $to && $from->get(IL_CAL_UNIX) > $to->get(IL_CAL_UNIX)) {
104  $form->getItemByPostVar("active_to")->setAlert(
105  $this->lng->txt("copg_active_to_small")
106  );
107  $ret = false;
108  }
109  }
110  return $ret;
111  }
getItemByPostVar(string $a_post_var)
const IL_CAL_UNIX
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ create()

ilPCSectionGUI::create ( )

Definition at line 396 of file class.ilPCSectionGUI.php.

References ILIAS\Repository\ctrl(), ilPageContentGUI\getPage(), initForm(), insert(), and setValuesFromForm().

396  : void
397  {
398  $form = $this->initForm(true);
399  if ($form->checkInput()) {
400  $this->content_obj = new ilPCSection($this->getPage());
401  $this->content_obj->create($this->pg_obj, $this->hier_id, $this->pc_id);
402 
403  $this->setValuesFromForm($form);
404 
405  $this->updated = $this->pg_obj->update();
406  if ($this->updated === true) {
407  $this->ctrl->returnToParent($this, "jump" . $this->hier_id);
408  }
409  }
410 
411  $this->insert($form);
412  }
initForm(bool $a_insert=false)
insert(?ilPropertyFormGUI $a_form=null)
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
setValuesFromForm(ilPropertyFormGUI $form)
+ Here is the call graph for this function:

◆ edit()

ilPCSectionGUI::edit ( bool  $a_insert = false,
?ilPropertyFormGUI  $a_form = null 
)

Definition at line 218 of file class.ilPCSectionGUI.php.

References ilPageContentGUI\$tpl, ilPageContentGUI\displayValidationError(), initForm(), and ILIAS\UICore\GlobalTemplate\setContent().

Referenced by insert(), and update().

221  : void {
222  $tpl = $this->tpl;
223 
224  $this->displayValidationError();
225 
226  if (!$a_form) {
227  $a_form = $this->initForm($a_insert);
228  }
229 
230  $tpl->setContent($a_form->getHTML());
231  }
initForm(bool $a_insert=false)
setContent(string $a_html)
Sets content for standard template.
ilGlobalTemplateInterface $tpl
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ executeCommand()

ilPCSectionGUI::executeCommand ( )
Returns
mixed
Exceptions
ilCtrlException

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

References ILIAS\Repository\ctrl(), ilPageContentGUI\getCharacteristicsOfCurrentStyle(), and initForm().

188  {
189  $ret = "";
190 
191  $this->getCharacteristicsOfCurrentStyle(["section"]); // scorm-2004
192 
193  // get next class that processes or forwards current command
194  $next_class = $this->ctrl->getNextClass($this);
195 
196  // get current command
197  $cmd = $this->ctrl->getCmd();
198 
199  switch ($next_class) {
200  case "ilpropertyformgui":
201  $form = $this->initForm(true);
202  $this->ctrl->forwardCommand($form);
203  break;
204 
205  default:
206  $ret = $this->$cmd();
207  break;
208  }
209 
210  return $ret;
211  }
initForm(bool $a_insert=false)
getCharacteristicsOfCurrentStyle(array $a_type)
Get characteristics of current style and call setCharacteristics, if style is given.
+ Here is the call graph for this function:

◆ getHTML()

ilPCSectionGUI::getHTML ( array  $params)

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

References ilPageContentGUI\$content_obj, checkInput(), ILIAS\Repository\ctrl(), ilPageContentGUI\getCharacteristicsOfCurrentStyle(), and initForm().

42  : string
43  {
44  $this->getCharacteristicsOfCurrentStyle(["section"]);
45 
46  if ($params["form"] == true) {
47  $insert = !($this->content_obj);
48  $form = $this->initForm($params["insert"] ?? false);
49  $form->setShowTopButtons(false);
50 
51  $onload_code = [];
52  $char = $form->getItemByPostVar("characteristic");
53  //$onload_code = array_merge($onload_code, $char->getOnloadCode());
54 
55  $from = $form->getItemByPostVar("active_from");
56  $from->setSideBySide(false);
57  $onload_code = array_merge($onload_code, $from->getOnloadCode());
58 
59  $to = $form->getItemByPostVar("active_to");
60  $to->setSideBySide(false);
61  $onload_code = array_merge($onload_code, $to->getOnloadCode());
62 
63  $link = $form->getItemByPostVar("link");
64  $onload_code = array_merge($onload_code, $link->getOnloadCode());
65 
66  $rep_sel = $form->getItemByPostVar("permission_ref_id");
67  $on_load_code3 = "";
68  $on_load_code4 = [];
69  if ($rep_sel) {
70  $exp = $rep_sel->getExplorerGUI();
71  $this->ctrl->setParameterByClass("ilformpropertydispatchgui", "postvar", "permission_ref_id");
72  $onload_code = array_merge($onload_code, [$exp->getOnloadCode()]);
73 
74  $this->ctrl->setParameterByClass("ilformpropertydispatchgui", "postvar", "");
75  $onload_code = array_merge($onload_code, $rep_sel->getOnloadCode());
76  }
77 
78  if (($params["validation"] ?? false) === true) {
79  $this->checkInput($form);
80  $form->setValuesByPost();
81  }
82 
83  $html = $params["ui_wrapper"]->getRenderedForm(
84  $form,
85  $params["buttons"]
86  );
87 
88  $html .= "<script>" .
89  implode("\n", $onload_code) .
90  "</script>";
91 
92  return $html;
93  }
94  return "";
95  }
initForm(bool $a_insert=false)
getCharacteristicsOfCurrentStyle(array $a_type)
Get characteristics of current style and call setCharacteristics, if style is given.
if(! $DIC->user() ->getId()||!ilLTIConsumerAccess::hasCustomProviderCreationAccess()) $params
Definition: ltiregstart.php:31
checkInput(ilPropertyFormGUI $form)
+ Here is the call graph for this function:

◆ initForm()

ilPCSectionGUI::initForm ( bool  $a_insert = false)

Definition at line 233 of file class.ilPCSectionGUI.php.

References ilPageContentGUI\$chars, ilPageContentGUI\$ctrl, Vendor\Package\$f, ilPageContentGUI\$lng, ilLinkInputGUI\BOTH, ilLinkInputGUI\EXT, ilPageContentGUI\getCharacteristics(), ilPageContentGUI\getPageConfig(), IL_CAL_UNIX, ILIAS\Repository\lng(), ilPageConfig\SEC_PROTECT_EDITABLE, ilCheckboxInputGUI\setChecked(), ilDateTimeInputGUI\setDate(), ilFormPropertyGUI\setInfo(), ilFormPropertyGUI\setParentForm(), ilFormPropertyGUI\setRequired(), ilCheckboxInputGUI\setValue(), and ilLanguage\txt().

Referenced by create(), edit(), executeCommand(), getHTML(), and update().

236  $lng = $this->lng;
237  $ilCtrl = $this->ctrl;
238  $a_seleted_value = "";
239 
240  // edit form
241  $form = new ilPropertyFormGUI();
242  $form->setFormAction($ilCtrl->getFormAction($this));
243  if ($a_insert) {
244  $form->setTitle($this->lng->txt("cont_insert_section"));
245  } else {
246  $form->setTitle($this->lng->txt("cont_update_section"));
247  }
248 
249  // characteristic selection
250  $char_prop = new ilSelectInputGUI(
251  $this->lng->txt("cont_characteristic"),
252  "characteristic"
253  );
254  $chars = $this->getCharacteristics();
255  if (is_object($this->content_obj)) {
256  if (($chars[$a_seleted_value] ?? "") == "" && ($this->content_obj->getCharacteristic() != "")) {
257  $chars = array_merge(
258  array($this->content_obj->getCharacteristic() => $this->content_obj->getCharacteristic()),
259  $chars
260  );
261  }
262  }
263 
264  $selected = ($a_insert)
265  ? "Block"
266  : $this->content_obj->getCharacteristic();
267 
268  $options = [];
269  foreach ($chars as $k => $char) {
270  $options[$k] = $char;
271  }
272  $char_prop->setOptions($options);
273 
274  $char_prop->setValue($selected);
275  $form->addItem($char_prop);
276 
277  // link input
278  //
279  $cb = new ilCheckboxInputGUI($lng->txt("cont_link"), "link_cb");
280 
281  $ac = new ilLinkInputGUI($this->lng->txt('cont_target'), 'link');
282  if ($this->getPageConfig()->getEnableInternalLinks()) {
283  $ac->setAllowedLinkTypes(ilLinkInputGUI::BOTH);
284  } else {
285  $ac->setAllowedLinkTypes(ilLinkInputGUI::EXT);
286  }
287  $ac->setRequired(true);
288  $ac->setInfo($this->lng->txt("copg_sec_link_info"));
289  $ac->setInternalLinkDefault(
290  $this->getPageConfig()->getIntLinkHelpDefaultType(),
291  $this->getPageConfig()->getIntLinkHelpDefaultId()
292  );
293  $link_types = array();
294  foreach ($this->getPageConfig()->getIntLinkFilters() as $f) {
295  $link_types[] = $f;
296  }
297  $ac->setInternalLinkFilterTypes($link_types);
298  $ac->setFilterWhiteList(
299  $this->getPageConfig()->getIntLinkFilterWhiteList()
300  );
301 
302  if (!$a_insert) {
303  $l = $this->content_obj->getLink();
304  if ($l["LinkType"] == "IntLink") {
305  $ac->setValueByIntLinkAttributes($l["Type"], $l["Target"], $l["TargetFrame"]);
306  $cb->setChecked(true);
307  } elseif ($l["LinkType"] == "ExtLink") {
308  $ac->setValue($l["Href"]);
309  $cb->setChecked(true);
310  } else {
311  $ac->setValue("https://");
312  }
313  } else {
314  $ac->setValue("https://");
315  }
316  $form->addItem($cb);
317  $ac->setParentForm($form);
318  $cb->addSubItem($ac);
319 
320 
321  // activation
322 
323  // active from
324  $act_cb = new ilCheckboxInputGUI($lng->txt("cont_activation"), "activation");
325  $form->addItem($act_cb);
326  $dt_prop = new ilDateTimeInputGUI($lng->txt("cont_active_from"), "active_from");
327  if (!$a_insert && ($from = $this->content_obj->getActiveFrom()) > 0) {
328  $dt_prop->setDate(new ilDateTime($from, IL_CAL_UNIX));
329  $act_cb->setChecked(true);
330  }
331  $dt_prop->setShowTime(true);
332  $act_cb->addSubItem($dt_prop);
333 
334  // active to
335  $dt_prop = new ilDateTimeInputGUI($lng->txt("cont_active_to"), "active_to");
336  if (!$a_insert && ($to = $this->content_obj->getActiveTo()) > 0) {
337  $dt_prop->setDate(new ilDateTime($to, IL_CAL_UNIX));
338  $act_cb->setChecked(true);
339  }
340  $dt_prop->setShowTime(true);
341  $act_cb->addSubItem($dt_prop);
342 
343  // rep selector
344  if ($this->getPageConfig()->getEnablePermissionChecks()) {
345  $perm_cb = new ilCheckboxInputGUI($lng->txt("cont_permission_handling"), "permission_handling");
346  $form->addItem($perm_cb);
347 
348  $rs = new ilRepositorySelector2InputGUI($lng->txt("cont_permission_object"), "permission_ref_id", false, $form);
349  //$rs->setParent($this);
350  $rs->setParentForm($form);
351  $rs->setRequired(true);
352  $perm_cb->addSubItem($rs);
353 
354  // permission
355  $options = array(
356  "read" => $lng->txt("read"),
357  "write" => $lng->txt("write"),
358  "visible" => $lng->txt("visible"),
359  "no_read" => $lng->txt("cont_no_read")
360  );
361  $si = new ilSelectInputGUI($lng->txt("permission"), "permission");
362  $si->setInfo($lng->txt("cont_permission_object_desc"));
363  $si->setOptions($options);
364  $perm_cb->addSubItem($si);
365 
366  if (!$a_insert) {
367  $si->setValue($this->content_obj->getPermission());
368  $rs->setValue($this->content_obj->getPermissionRefId());
369  if ($this->content_obj->getPermissionRefId() > 0) {
370  $perm_cb->setChecked(true);
371  }
372  }
373  }
374 
375  // protection
376  if ($this->getPageConfig()->getSectionProtection() == ilPageConfig::SEC_PROTECT_EDITABLE) {
377  $cb = new ilCheckboxInputGUI($lng->txt("cont_sec_protected"), "protected");
378  $cb->setInfo($this->getPageConfig()->getSectionProtectionInfo());
379  if (!$a_insert) {
380  $cb->setChecked($this->content_obj->getProtected());
381  }
382  $form->addItem($cb);
383  }
384 
385  // save/cancel buttons
386  if ($a_insert) {
387  $form->addCommandButton("create", $lng->txt("save"));
388  $form->addCommandButton("cancelCreate", $lng->txt("cancel"));
389  } else {
390  $form->addCommandButton("update", $lng->txt("save"));
391  $form->addCommandButton("cancelUpdate", $lng->txt("cancel"));
392  }
393  return $form;
394  }
This class represents a selection list property in a property form.
txt(string $a_topic, string $a_default_lang_fallback_mod="")
gets the text for a given topic if the topic is not in the list, the topic itself with "-" will be re...
const IL_CAL_UNIX
This class represents a date/time property in a property form.
setParentForm(ilPropertyFormGUI $a_parentform)
setDate(?ilDateTime $a_date=null)
set date E.g $dt_form->setDate(new ilDateTime(time(),IL_CAL_UTC)); or $dt_form->setDate(new ilDateTim...
setRequired(bool $a_required)
This class represents a external and/or internal link in a property form.
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ insert()

ilPCSectionGUI::insert ( ?ilPropertyFormGUI  $a_form = null)

Definition at line 213 of file class.ilPCSectionGUI.php.

References edit().

Referenced by create().

213  : void
214  {
215  $this->edit(true, $a_form);
216  }
edit(bool $a_insert=false, ?ilPropertyFormGUI $a_form=null)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ setValuesFromForm()

ilPCSectionGUI::setValuesFromForm ( ilPropertyFormGUI  $form)

Definition at line 430 of file class.ilPCSectionGUI.php.

References ilPropertyFormGUI\getInput(), ilPropertyFormGUI\getItemByPostVar(), ilPageContentGUI\getPageConfig(), IL_CAL_UNIX, and ilPageConfig\SEC_PROTECT_EDITABLE.

Referenced by create(), and update().

430  : void
431  {
432  $this->content_obj->setCharacteristic($form->getInput("characteristic"));
433 
434  $activation = (bool) $form->getInput("activation");
435  $from = $form->getItemByPostVar("active_from")->getDate();
436  if ($activation && $from) {
437  $this->content_obj->setActiveFrom($from->get(IL_CAL_UNIX));
438  } else {
439  $this->content_obj->setActiveFrom(0);
440  }
441 
442  $to = $form->getItemByPostVar("active_to")->getDate();
443  if ($activation && $to) {
444  $this->content_obj->setActiveTo($to->get(IL_CAL_UNIX));
445  } else {
446  $this->content_obj->setActiveTo(0);
447  }
448 
449  if ($this->getPageConfig()->getEnablePermissionChecks()) {
450  $permission_handling = (bool) $form->getInput("permission_handling");
451  if ($permission_handling) {
452  $this->content_obj->setPermissionRefId((int) $form->getInput("permission_ref_id"));
453  $this->content_obj->setPermission($form->getInput("permission"));
454  } else {
455  $this->content_obj->setPermissionRefId(0);
456  $this->content_obj->setPermission("");
457  }
458  }
459 
460  if ($form->getInput("link_cb") !== "") {
461  if ($form->getInput("link_mode") == "ext" && $form->getInput("link") != "") {
462  $this->content_obj->setExtLink($form->getInput("link"));
463  } elseif ($form->getInput("link_mode") == "int" && $form->getInput("link") != "") {
464  $la = $form->getItemByPostVar("link")->getIntLinkAttributes();
465  if (($la["Type"] ?? "") != "") {
466  $this->content_obj->setIntLink($la["Type"], $la["Target"], $la["TargetFrame"]);
467  }
468  } else {
469  $this->content_obj->setNoLink();
470  }
471  } else {
472  $this->content_obj->setNoLink();
473  }
474 
475  if ($this->getPageConfig()->getSectionProtection() == ilPageConfig::SEC_PROTECT_EDITABLE) {
476  $this->content_obj->setProtected($form->getInput("protected"));
477  }
478  }
getItemByPostVar(string $a_post_var)
const IL_CAL_UNIX
getInput(string $a_post_var, bool $ensureValidation=true)
Returns the input of an item, if item provides getInput method and as fallback the value of the HTTP-...
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ update()

ilPCSectionGUI::update ( )

Definition at line 414 of file class.ilPCSectionGUI.php.

References ILIAS\Repository\ctrl(), edit(), initForm(), and setValuesFromForm().

414  : void
415  {
416  $form = $this->initForm(false);
417  if ($form->checkInput()) {
418  $this->setValuesFromForm($form);
419 
420  $this->updated = $this->pg_obj->update();
421  if ($this->updated === true) {
422  $this->ctrl->returnToParent($this, "jump" . $this->hier_id);
423  }
424  }
425 
426  $this->pg_obj->addHierIDs();
427  $this->edit(false, $form);
428  }
initForm(bool $a_insert=false)
edit(bool $a_insert=false, ?ilPropertyFormGUI $a_form=null)
setValuesFromForm(ilPropertyFormGUI $form)
+ Here is the call graph for this function:

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