ILIAS  release_6 Revision v6.24-5-g0c8bfefb3b8
class.ilPageConfig.php
Go to the documentation of this file.
1<?php
2
3/* Copyright (c) 1998-2013 ILIAS open source, Extended GPL, see docs/LICENSE */
4
12abstract class ilPageConfig
13{
17 protected $lng;
18
19 protected $int_link_filter = array("File", "PortfolioPage", "PortfolioTemplatePage");
20 protected $prevent_rte_usage = false;
21 protected $use_attached_content = false;
22 protected $pc_defs = array();
23 protected $pc_enabled = array();
24 protected $enabledinternallinks = false;
25 protected $enable_keywords = false;
26 protected $enable_anchors = false;
27 protected $enablewikilinks = false;
28 protected $page_toc = false;
29 protected $activation = false;
30 protected $scheduled_activation = false;
31 protected $preventhtmlunmasking = false;
32 protected $enabledselfassessment = false;
34 protected $int_link_def_type = "";
35 protected $int_link_def_id = 0;
36 protected $multi_lang_support = false;
37 protected $single_page_mode = false; // currently only used by multi-lang support
38 // single page means: only one page per parent_id
39 protected $disable_default_qfeedback = false;
40 protected $question_html = array();
41 protected $use_stored_tries = false;
42 protected $enable_user_links = false;
43
44 protected $edit_lock_support = true;
45
49 protected $enable_permission_checks = false;
50
54 protected $adve_set;
55
60 protected $page_obj_key = "";
61
67 final public function __construct()
68 {
69 global $DIC;
70
71 $this->lng = $DIC->language();
72 // load pc_defs
73 include_once("./Services/COPage/classes/class.ilCOPagePCDef.php");
74 $this->pc_defs = ilCOPagePCDef::getPCDefinitions();
75 foreach ($this->pc_defs as $def) {
76 $this->setEnablePCType($def["name"], (bool) $def["def_enabled"]);
77 }
78
79 $this->adve_set = new ilSetting("adve");
80
81 $def = new ilCOPageObjDef();
82 foreach ($def->getDefinitions() as $key => $def) {
83 if (strtolower(get_class($this)) == strtolower($def["class_name"] . "Config")) {
84 $this->page_obj_key = $key;
85 }
86 }
87
88
89 $this->init();
90 }
91
98 public function init()
99 {
100 }
101
102
108 public function setEnablePCType($a_pc_type, $a_val)
109 {
110 $this->pc_enabled[$a_pc_type] = $a_val;
111 }
112
118 public function getEnablePCType($a_pc_type)
119 {
120 return $this->pc_enabled[$a_pc_type];
121 }
122
128 public function setEnableKeywords($a_val)
129 {
130 $this->enable_keywords = $a_val;
131 }
132
138 public function getEnableKeywords()
139 {
141 }
142
148 public function setEnableAnchors($a_val)
149 {
150 $this->enable_anchors = $a_val;
151 }
152
158 public function getEnableAnchors()
159 {
161 }
162
168 public function setEnableInternalLinks($a_enabledinternallinks)
169 {
170 $this->enabledinternallinks = $a_enabledinternallinks;
171 }
172
178 public function getEnableInternalLinks()
179 {
181 }
182
188 public function getEnableUserLinks()
189 {
190 if (!$this->getEnableInternalLinks()) {
191 return false;
192 }
193 if ($this->getIntLinkFilterWhiteList() && in_array("User", $this->int_link_filter)) {
194 return true;
195 }
196 if (!$this->getIntLinkFilterWhiteList() && !in_array("User", $this->int_link_filter)) {
197 return true;
198 }
199
200 return false;
201 }
202
208 public function setEnableWikiLinks($a_enablewikilinks)
209 {
210 $this->enablewikilinks = $a_enablewikilinks;
211 }
212
218 public function getEnableWikiLinks()
219 {
221 }
222
228 public function addIntLinkFilter($a_val)
229 {
231
232 $this->setLocalizationLanguage($lng->getLangKey());
233 if (is_array($a_val)) {
234 $this->int_link_filter =
235 array_merge($a_val, $this->int_link_filter);
236 } else {
237 $this->int_link_filter[] = $a_val;
238 }
239 }
240
246 public function removeIntLinkFilter($a_val)
247 {
248 foreach ($this->int_link_filter as $k => $v) {
249 if ($v == $a_val) {
250 unset($this->int_link_filter[$k]);
251 }
252 }
253 }
254
255
261 public function getIntLinkFilters()
262 {
264 }
265
271 public function setIntLinkFilterWhiteList($a_white_list)
272 {
273 $this->link_filter_white_list = $a_white_list;
274 if ($a_white_list) {
275 $this->int_link_filter = array();
276 }
277 }
278
285 {
286 return $this->link_filter_white_list;
287 }
288
294 public function setPreventRteUsage($a_val)
295 {
296 $this->prevent_rte_usage = $a_val;
297 }
298
304 public function getPreventRteUsage()
305 {
307 }
308
314 public function setLocalizationLanguage($a_val)
315 {
316 $this->localization_lang = $a_val;
317 }
318
324 public function getLocalizationLanguage()
325 {
326 return $this->localization_lang;
327 }
328
334 public function setUseAttachedContent($a_val)
335 {
336 $this->use_attached_content = $a_val;
337 }
338
344 public function getUseAttachedContent()
345 {
347 }
348
354 public function setIntLinkHelpDefaultType($a_val)
355 {
356 $this->int_link_def_type = $a_val;
357 }
358
365 {
367 }
368
374 public function setIntLinkHelpDefaultId($a_val, $a_is_ref = true)
375 {
376 $this->int_link_def_id = $a_val;
377 $this->int_link_def_id_is_ref = $a_is_ref;
378 }
379
385 public function getIntLinkHelpDefaultId()
386 {
388 }
389
396 {
397 return $this->int_link_def_id_is_ref;
398 }
399
405 public function setEnableActivation($a_val)
406 {
407 $this->activation = $a_val;
408 }
409
415 public function getEnableActivation()
416 {
417 return $this->activation;
418 }
419
425 public function setEnableScheduledActivation($a_val)
426 {
427 $this->scheduled_activation = $a_val;
428 }
429
436 {
438 }
439
445 public function setEnablePageToc($a_val)
446 {
447 $this->page_toc = $a_val;
448 }
449
455 public function getEnablePageToc()
456 {
457 return $this->page_toc;
458 }
459
465 public function setPreventHTMLUnmasking($a_preventhtmlunmasking)
466 {
467 $this->preventhtmlunmasking = $a_preventhtmlunmasking;
468 }
469
475 public function getPreventHTMLUnmasking()
476 {
477 $safe = true;
478 if ($this->adve_set->get("act_html_" . $this->page_obj_key)) {
479 $safe = false;
480 }
481 return $safe;
482 //return $this->preventhtmlunmasking;
483 }
484
490 public function setEnableSelfAssessment($a_enabledselfassessment, $a_scorm = true)
491 {
492 $this->setEnablePCType("Question", (bool) $a_enabledselfassessment);
493 $this->enabledselfassessment = $a_enabledselfassessment;
494 $this->enabledselfassessment_scorm = $a_scorm;
495 }
496
497
503 public function getEnableSelfAssessment()
504 {
506 }
507
514 {
516 }
517
523 public function setDisableDefaultQuestionFeedback($a_val)
524 {
525 $this->disable_default_qfeedback = $a_val;
526 }
527
534 {
536 }
537
543 public function setMultiLangSupport($a_val)
544 {
545 $this->multi_lang_support = $a_val;
546 }
547
553 public function getMultiLangSupport()
554 {
556 }
557
563 public function setSinglePageMode($a_val)
564 {
565 $this->single_page_mode = $a_val;
566 }
567
573 public function getSinglePageMode()
574 {
576 }
577
579 {
580 $this->question_html = $question_html;
581 }
582
583 public function getQuestionHTML()
584 {
586 }
587
593 public function setUseStoredQuestionTries($a_val)
594 {
595 $this->use_stored_tries = $a_val;
596 }
597
604 {
606 }
607
613 public function setEnablePermissionChecks($a_val)
614 {
615 $this->enable_permission_checks = $a_val;
616 }
617
624 {
626 }
627
631 public function setEditLockSupport($a_val)
632 {
633 $this->edit_lock_support = $a_val;
634 }
635
639 public function getEditLockSupport()
640 {
642 }
643}
An exception for terminatinating execution or to throw for unit testing.
COPage page object definition handler.
static getPCDefinitions()
Get PC definitions.
Config class for page editing.
getLocalizationLanguage()
Get localizazion language.
getEnableWikiLinks()
Get Enable Wiki Links.
getEnableScheduledActivation()
Get enable scheduled page activation.
getPreventRteUsage()
Get prevent rte usage.
setUseAttachedContent($a_val)
Set use attached content.
setEnableWikiLinks($a_enablewikilinks)
Set Enable Wiki Links.
setDisableDefaultQuestionFeedback($a_val)
Set disable default question feedback.
__construct()
Constructor.
setPreventHTMLUnmasking($a_preventhtmlunmasking)
Set Prevent HTML Unmasking (true/false).
setQuestionHTML($question_html)
getMultiLangSupport()
Get multi language support.
getIntLinkHelpDefaultIdIsRef()
Get internal link default id.
getEnableKeywords()
Get enable keywords handling.
getEnableSelfAssessmentScorm()
Is self assessment used in SCORM mode?
getIntLinkHelpDefaultType()
Get internal link default type.
getEnableActivation()
Get enabled actication.
getEnablePermissionChecks()
Get enable permission checks.
getUseStoredQuestionTries()
Get use stored answers/tries.
removeIntLinkFilter($a_val)
Remove int link filter.
getIntLinkHelpDefaultId()
Get internal link default id.
setEnableActivation($a_val)
Set enabled actication.
getIntLinkFilterWhiteList()
Get internal links filter type list to white list.
setEnableSelfAssessment($a_enabledselfassessment, $a_scorm=true)
Set Enable Self Assessment Questions.
getUseAttachedContent()
Get use attached content.
setEnableKeywords($a_val)
Set enable keywords handling.
addIntLinkFilter($a_val)
Add internal links filter.
setPreventRteUsage($a_val)
Set prevent rte usage.
setIntLinkHelpDefaultId($a_val, $a_is_ref=true)
Set internal link default id.
getEnableSelfAssessment()
Get Enable Self Assessment Questions.
getEnableUserLinks()
Get enable user links.
getPreventHTMLUnmasking()
Get Prevent HTML Unmasking (true/false).
setEnableInternalLinks($a_enabledinternallinks)
Set Enable internal links.
setEnablePermissionChecks($a_val)
Set enable permission checks.
setLocalizationLanguage($a_val)
Set localizazion language.
setSinglePageMode($a_val)
Set single page mode.
getEnableAnchors()
Get enable anchors.
getDisableDefaultQuestionFeedback()
Get disable default question feedback.
setEditLockSupport($a_val)
setEnablePCType($a_pc_type, $a_val)
Set enable pc type.
getEnablePageToc()
Get enable page toc.
setMultiLangSupport($a_val)
Set multi language support.
getSinglePageMode()
Get single page mode.
setIntLinkFilterWhiteList($a_white_list)
Set internal links filter type list to white list.
setIntLinkHelpDefaultType($a_val)
Set internal link default type.
setEnableAnchors($a_val)
Set enable anchors.
getEnableInternalLinks()
Get Enable internal links.
setEnablePageToc($a_val)
Set enable page toc.
setUseStoredQuestionTries($a_val)
Set use stored answers/tries.
getIntLinkFilters()
Get internal links filter.
getEnablePCType($a_pc_type)
Get enable pc type.
setEnableScheduledActivation($a_val)
Set enable scheduled page activation.
ILIAS Setting Class.
$DIC
Definition: xapitoken.php:46