5 include_once
"./Services/Object/classes/class.ilObjectGUI.php";
49 public function __construct($a_data, $a_id, $a_call_by_reference)
53 $this->rbacsystem = $DIC->rbac()->system();
54 $this->rbacadmin = $DIC->rbac()->admin();
55 $this->ctrl = $DIC->ctrl();
56 $this->tabs = $DIC->tabs();
57 $this->tpl = $DIC[
"tpl"];
58 $this->lng = $DIC->language();
59 $this->access = $DIC->access();
64 parent::__construct($a_data, $a_id, $a_call_by_reference,
false);
65 $this->lng->loadLanguageModule(
'adve');
66 $this->lng->loadLanguageModule(
'meta');
68 if (!
$rbacsystem->checkAccess(
'read', $this->object->getRefId())) {
69 $this->
ilias->raiseError($this->lng->txt(
"msg_no_perm_read_adve"), $this->
ilias->error_obj->WARNING);
75 $next_class = $this->ctrl->getNextClass($this);
76 $cmd = $this->ctrl->getCmd();
79 switch ($next_class) {
81 case 'ilpermissiongui':
82 include_once(
"Services/AccessControl/classes/class.ilPermissionGUI.php");
84 $ret = &$this->ctrl->forwardCommand($perm_gui);
88 if ($cmd ==
"" || $cmd ==
"view") {
89 $cmd =
"showGeneralPageEditorSettings";
107 parent::saveObject();
110 ilUtil::sendSuccess($this->lng->txt(
"object_added"),
true);
111 $this->ctrl->redirect($this);
126 if (
$ilCtrl->getNextClass() !=
"ilpermissiongui" &&
127 !in_array(
$ilCtrl->getCmd(), array(
"showPageEditorSettings",
128 "showGeneralPageEditorSettings",
"showCharSelectorSettings",
"",
"view"))) {
129 $this->tabs_gui->addSubTabTarget(
130 "adve_general_settings",
131 $this->ctrl->getLinkTarget($this,
"settings"),
132 array(
"settings",
"saveSettings"),
136 $this->tabs_gui->addSubTabTarget(
137 "adve_assessment_settings",
138 $this->ctrl->getLinkTarget($this,
"assessment"),
139 array(
"assessment",
"saveAssessmentSettings"),
143 $this->tabs_gui->addSubTabTarget(
144 "adve_survey_settings",
145 $this->ctrl->getLinkTarget($this,
"survey"),
146 array(
"survey",
"saveSurveySettings"),
150 $this->tabs_gui->addSubTabTarget(
151 "adve_frm_post_settings",
152 $this->ctrl->getLinkTarget($this,
"frmPost"),
153 array(
"frmPost",
"saveFrmPostSettings"),
157 $this->tabs_gui->addSubTabTarget(
158 "adve_excass_settings",
159 $this->ctrl->getLinkTarget($this,
"excass"),
160 array(
"excass",
"saveExcAssSettings"),
175 $ilTabs->addSubTabTarget(
177 $ilCtrl->getLinkTarget($this,
"showGeneralPageEditorSettings"),
178 array(
"showGeneralPageEditorSettings",
"",
"view")
181 include_once(
"./Services/COPage/classes/class.ilPageEditorSettings.php");
184 foreach ($grps as $g => $types) {
185 $ilCtrl->setParameter($this,
"grp", $g);
186 $ilTabs->addSubTabTarget(
188 $ilCtrl->getLinkTarget($this,
"showPageEditorSettings"),
189 array(
"showPageEditorSettings")
204 if (
$rbacsystem->checkAccess(
"visible,read", $this->object->getRefId())) {
205 $this->tabs_gui->addTarget(
206 "adve_page_editor_settings",
207 $this->ctrl->getLinkTarget($this,
"showGeneralPageEditorSettings"),
208 array(
"showPageEditorSettings",
"",
"view")
211 $this->tabs_gui->addTarget(
213 $this->ctrl->getLinkTarget($this,
"settings"),
214 array(
"settings",
"assessment",
"survey",
"frmPost",
"excass"),
219 $this->tabs_gui->addTarget(
220 "adve_char_selector_settings",
221 $this->ctrl->getLinkTarget($this,
"showCharSelectorSettings"),
222 array(
"showCharSelectorSettings",
"",
"view")
226 if (
$rbacsystem->checkAccess(
'edit_permission', $this->object->getRefId())) {
227 $this->tabs_gui->addTarget(
229 $this->ctrl->getLinkTargetByClass(array(get_class($this),
'ilpermissiongui'),
"perm"),
230 array(
"perm",
"info",
"owner"),
247 $editor = $this->
object->_getRichTextEditor();
249 include_once(
"Services/Form/classes/class.ilPropertyFormGUI.php");
251 $this->form->setFormAction(
$ilCtrl->getFormAction($this));
252 $this->form->setTitle(
$lng->txt(
"adve_activation"));
257 $this->form->addItem($cb);
259 $this->form->addCommandButton(
"saveSettings",
$lng->txt(
"save"));
262 $tpl->setContent($this->form->getHTML());
273 $this->
object->setRichTextEditor(
"tinymce");
275 $this->
object->setRichTextEditor(
"");
277 ilUtil::sendSuccess($this->lng->txt(
"msg_obj_modified"),
true);
279 $this->ctrl->redirect($this,
'settings');
290 "saveAssessmentSettings",
291 "advanced_editing_assessment_settings" 294 $this->tpl->setContent(
$form->getHTML());
301 "saveAssessmentSettings",
302 "advanced_editing_assessment_settings" 305 $form->setValuesByPost();
306 $this->tpl->setContent(
$form->getHTML());
318 "saveSurveySettings",
319 "advanced_editing_survey_settings" 322 $this->tpl->setContent(
$form->getHTML());
329 "saveSurveySettings",
330 "advanced_editing_survey_settings" 333 $form->setValuesByPost();
334 $this->tpl->setContent(
$form->getHTML());
346 "saveFrmPostSettings",
347 "advanced_editing_frm_post_settings" 350 $this->tpl->setContent(
$form->getHTML());
357 "saveFrmPostSettings",
358 "advanced_editing_frm_post_settings" 361 $form->setValuesByPost();
362 $this->tpl->setContent(
$form->getHTML());
374 "saveExcAssSettings",
375 "advanced_editing_excass_settings" 378 $this->tpl->setContent(
$form->getHTML());
385 "saveExcAssSettings",
386 "advanced_editing_excass_settings" 389 $form->setValuesByPost();
390 $this->tpl->setContent(
$form->getHTML());
399 include_once
"Services/Form/classes/class.ilPropertyFormGUI.php";
401 $form->setFormAction($this->ctrl->getFormAction($this, $a_cmd));
402 $form->setTitle($this->lng->txt($a_title));
404 $alltags = $this->
object->getHTMLTags();
405 $alltags = array_combine($alltags, $alltags);
407 include_once
"Services/Form/classes/class.ilMultiSelectInputGUI.php";
409 $tags->setHeight(400);
410 $tags->enableSelectAll(
true);
411 $tags->enableSelectedFirst(
true);
412 $tags->setOptions($alltags);
416 if ($ilAccess->checkAccess(
"write",
"", $this->object->getRefId())) {
417 $form->addCommandButton($a_cmd, $this->lng->txt(
"save"));
427 if (
$form->checkInput()) {
429 if (is_array(
$_POST[
'html_tags']) &&
$_POST[
'html_tags'][0] ==
"") {
430 unset(
$_POST[
'html_tags'][0]);
433 $this->
object->setUsedHTMLTags((array)
$_POST[
'html_tags'], $a_id);
434 ilUtil::sendSuccess($this->lng->txt(
'msg_obj_modified'),
true);
442 $this->ctrl->redirect($this, $a_cmd);
456 $this->addPageEditorSettingsSubTabs();
458 include_once(
"./Services/COPage/classes/class.ilPageEditorSettings.php");
461 $this->cgrp =
$_GET[
"grp"];
462 if ($this->cgrp ==
"") {
463 $this->cgrp = key($grps);
466 $ilCtrl->setParameter($this,
"grp", $this->cgrp);
467 $ilTabs->setSubTabActive(
"adve_grp_" . $this->cgrp);
470 $tpl->setContent($this->form->getHtml());
483 $lng->loadLanguageModule(
"content");
485 include_once(
"Services/Form/classes/class.ilPropertyFormGUI.php");
488 if ($this->cgrp ==
"test") {
489 require_once
'Modules/Test/classes/class.ilObjAssessmentFolder.php';
491 $this->form->setTitle(
$lng->txt(
"adve_activation"));
492 $cb =
new ilCheckboxInputGUI($this->lng->txt(
"advanced_editing_tst_editing"),
"tst_page_edit");
493 $cb->
setInfo($this->lng->txt(
"advanced_editing_tst_editing_desc"));
495 $cb->setChecked(
true);
497 $this->form->addItem($cb);
500 $sh->setTitle(
$lng->txt(
"adve_text_content_features"));
501 $this->form->addItem($sh);
502 } elseif ($this->cgrp ==
"rep") {
503 $this->form->setTitle(
$lng->txt(
"adve_activation"));
504 $cb =
new ilCheckboxInputGUI($this->lng->txt(
"advanced_editing_rep_page_editing"),
"cat_page_edit");
505 $cb->
setInfo($this->lng->txt(
"advanced_editing_rep_page_editing_desc"));
506 if (
$ilSetting->get(
"enable_cat_page_edit")) {
507 $cb->setChecked(
true);
509 $this->form->addItem($cb);
512 $sh->setTitle(
$lng->txt(
"adve_text_content_features"));
513 $this->form->addItem($sh);
515 $this->form->setTitle(
$lng->txt(
"adve_text_content_features"));
519 include_once(
"./Services/COPage/classes/class.ilPageEditorSettings.php");
521 include_once(
"./Services/COPage/classes/class.ilPageContentGUI.php");
523 foreach ($buttons as $b =>
$t) {
525 $cb =
new ilCheckboxInputGUI(str_replace(
":",
"", $this->lng->txt(
"cont_text_" . $b)),
"active_" . $b);
527 $this->form->addItem($cb);
532 $this->form->addCommandButton(
"savePageEditorSettings",
$lng->txt(
"save"));
535 $this->form->setFormAction($this->ctrl->getFormAction($this));
551 if ($this->form->checkInput()) {
552 include_once(
"./Services/COPage/classes/class.ilPageEditorSettings.php");
553 include_once(
"./Services/COPage/classes/class.ilPageContentGUI.php");
555 foreach ($buttons as $b =>
$t) {
559 $this->form->getInput(
"active_" . $b)
563 if (
$_GET[
"grp"] ==
"test") {
565 } elseif (
$_GET[
"grp"] ==
"rep") {
573 $ilCtrl->redirect($this,
"showPageEditorSettings");
585 $this->addPageEditorSettingsSubTabs();
586 $ilTabs->activateTab(
"adve_page_editor_settings");
600 include_once(
"Services/Form/classes/class.ilPropertyFormGUI.php");
607 $cb->
setInfo($this->lng->txt(
"adve_use_physical_info"));
608 $cb->setChecked($aset->get(
"use_physical"));
612 $cb =
new ilCheckboxInputGUI($this->lng->txt(
"adve_blocking_mode"),
"block_mode_act");
613 $cb->
setChecked($aset->get(
"block_mode_minutes") > 0);
617 $ni =
new ilNumberInputGUI($this->lng->txt(
"adve_minutes"),
"block_mode_minutes");
619 $ni->setMaxLength(5);
621 $ni->setRequired(
true);
622 $ni->setInfo($this->lng->txt(
"adve_minutes_info"));
623 $ni->setValue($aset->get(
"block_mode_minutes"));
624 $cb->addSubItem($ni);
627 $cb =
new ilCheckboxInputGUI($this->lng->txt(
"adve_auto_url_linking"),
"auto_url_linking");
628 $cb->
setChecked($aset->get(
"auto_url_linking"));
629 $cb->setInfo($this->lng->txt(
"adve_auto_url_linking_info"));
633 $form->addCommandButton(
"saveGeneralPageSettings",
$lng->txt(
"save"));
637 $this->lng->loadLanguageModule(
"copg");
639 $sh->setTitle(
$lng->txt(
"copg_allow_html"));
640 $sh->setInfo(
$lng->txt(
"copg_allow_html_info"));
644 $comps_per_dir = array_column(array_map(
function ($k, $v) {
645 return [$v[
"type"] .
"/" . $v[
"name"], $v];
646 }, array_keys($comps), $comps), 1, 0);
649 foreach ($cdef->getDefinitions() as
$key =>
$def) {
651 $comp_id = $comps_per_dir[
$def[
"component"]][
"id"];
652 $this->lng->loadLanguageModule($comp_id);
653 $cb =
new ilCheckboxInputGUI($def[
"component"] .
": " . $this->lng->txt($comp_id .
"_page_type_" . $key),
"act_html_" .
$key);
654 $cb->
setChecked($aset->get(
"act_html_" . $key));
663 $form->setTitle(
$lng->txt(
"adve_pe_general"));
680 return [
"lobj",
"copa",
"mep",
"blp",
"prtf",
"prtt",
"gdf",
"lm",
"qht",
"qpl",
"qfbg",
"qfbs",
"sahs",
"stys",
"cont",
"cstr",
"auth"];
695 if (
$form->checkInput()) {
697 $aset->set(
"use_physical",
$_POST[
"use_physical"]);
698 if (
$_POST[
"block_mode_act"]) {
699 $aset->set(
"block_mode_minutes", (
int)
$_POST[
"block_mode_minutes"]);
701 $aset->set(
"block_mode_minutes", 0);
703 $aset->set(
"auto_url_linking",
$_POST[
"auto_url_linking"]);
708 $aset->set(
"act_html_" . $key, (
int)
$_POST[
"act_html_" . $key]);
712 ilUtil::sendSuccess(
$lng->txt(
"msg_obj_modified"),
true);
713 $ilCtrl->redirect($this,
"showGeneralPageEditorSettings");
716 $form->setValuesByPost();
728 include_once(
"Services/Form/classes/class.ilPropertyFormGUI.php");
733 $form->addCommandButton(
"saveCharSelectorSettings",
$lng->txt(
"save"));
750 $ilTabs->activateTab(
"adve_char_selector_settings");
752 require_once
'Services/UIComponent/CharSelector/classes/class.ilCharSelectorGUI.php';
754 $char_selector->getConfig()->setAvailability(
$ilSetting->get(
'char_selector_availability'));
755 $char_selector->getConfig()->setDefinition(
$ilSetting->get(
'char_selector_definition'));
757 $char_selector->setFormValues(
$form);
774 require_once
'Services/UIComponent/CharSelector/classes/class.ilCharSelectorGUI.php';
777 if (
$form->checkInput()) {
778 $char_selector->getFormValues(
$form);
780 $ilSetting->set(
'char_selector_availability', $char_selector->getConfig()->getAvailability());
781 $ilSetting->set(
'char_selector_definition', $char_selector->getConfig()->getDefinition());
783 ilUtil::sendSuccess(
$lng->txt(
"msg_obj_modified"),
true);
784 $ilCtrl->redirect($this,
"showCharSelectorSettings");
786 $form->setValuesByPost();
saveExcAssSettingsObject()
frmPostObject()
Display settings for forums.
surveyObject()
Display settings for surveys.
saveTags($a_id, $a_cmd, $form)
COPage page object definition handler.
excAssObject()
Display settings for exercise assignments.
This shows a character selector.
addSubtabs()
Add rte subtabs.
static lookupSetting($a_grp, $a_name, $a_default=false)
Lookup setting.
static _getUsedHTMLTags($a_module="")
Returns an array of all allowed HTML tags for text editing.
addPageEditorSettingsSubtabs()
Show page editor settings subtabs.
saveCharSelectorSettingsObject()
Save the settings for the selector of unicode characters.
showGeneralPageEditorSettingsObject()
Show general page editor settings.
assessmentObject()
Display settings for test and assessment.
saveGeneralPageSettingsObject()
Save general page settings.
static getGroups()
Get all settings groups.
getPageObjectKeysWithOptionalHTML()
This limits the possibility to allow html for these page objects that supported the feature in the pa...
settingsObject()
Display assessment folder settings form.
__construct($a_data, $a_id, $a_call_by_reference)
Constructor.
initTagsForm($a_id, $a_cmd, $a_title)
static sendInfo($a_info="", $a_keep=false)
Send Info Message to Screen.
static writeSetting($a_grp, $a_name, $a_value)
Write Setting.
initPageEditorForm($a_mode="edit")
Init page editor form.
saveSettingsObject()
Save Assessment settings.
prepareOutput($a_show_subobjects=true)
prepare output
showPageEditorSettingsObject()
Show page editor settings.
saveFrmPostSettingsObject()
if(isset($_POST['submit'])) $form
saveObject()
save object public
addFormProperties(ilPropertyFormGUI $a_form)
add the configuration elements to a property form
const ADDITIONAL_QUESTION_CONTENT_EDITING_MODE_PAGE_OBJECT_DISABLED
saveAssessmentSettingsObject()
Class ilObjectGUI Basic methods of all Output classes.
static setShortTextsDirtyGlobally()
Set short texts dirty.
showCharSelectorSettingsObject()
Show the settings for the selector of unicode characters.
redirection script todo: (a better solution should control the processing via a xml file) ...
initCharSelectorSettingsForm(ilCharSelectorGUI $char_selector)
Init the settings form for the selector of unicode characters.
static _getCommonBBButtons()
Get common bb buttons.
savePageEditorSettingsObject()
Save page editor settings form.
Class ilObjAdvancedEditingGUI.
checkPermission($a_perm, $a_cmd="", $a_type="", $a_ref_id=null)
Check permission and redirect on error.
New PermissionGUI (extends from old ilPermission2GUI) RBAC related output.
initGeneralPageSettingsForm()
Init general page editor settings form.
saveSurveySettingsObject()
checkPermissionBool($a_perm, $a_cmd="", $a_type="", $a_ref_id=null)
Check permission.