ILIAS  Release_5_0_x_branch Revision 61816
 All Data Structures Namespaces Files Functions Variables Groups Pages
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 
12 abstract class ilPageConfig
13 {
14  protected $int_link_filter = array("File");
15  protected $prevent_rte_usage = false;
16  protected $use_attached_content = false;
17  protected $pc_defs = array();
18  protected $pc_enabled = array();
19  protected $enabledinternallinks = false;
20  protected $enable_keywords = false;
21  protected $enable_anchors = false;
22  protected $enablewikilinks = false;
23  protected $page_toc = false;
24  protected $activation = false;
25  protected $scheduled_activation = false;
26  protected $preventhtmlunmasking = false;
27  protected $enabledselfassessment = false;
28  protected $enabledselfassessment_scorm = false;
29  protected $int_link_def_type = "";
30  protected $int_link_def_id = 0;
31  protected $multi_lang_support = false;
32  protected $single_page_mode = false; // currently only used by multi-lang support
33  // single page means: only one page per parent_id
34  protected $disable_default_qfeedback = false;
35  protected $question_html = array();
36  protected $use_stored_tries = false;
37 
44  final public function __construct()
45  {
46  // load pc_defs
47  include_once("./Services/COPage/classes/class.ilCOPagePCDef.php");
48  $this->pc_defs = ilCOPagePCDef::getPCDefinitions();
49  foreach ($this->pc_defs as $def)
50  {
51  $this->setEnablePCType($def["name"], (bool) $def["def_enabled"]);
52  }
53 
54  $this->init();
55  }
56 
63  function init()
64  {
65  }
66 
67 
73  function setEnablePCType($a_pc_type, $a_val)
74  {
75  $this->pc_enabled[$a_pc_type] = $a_val;
76  }
77 
83  function getEnablePCType($a_pc_type)
84  {
85  return $this->pc_enabled[$a_pc_type];
86  }
87 
93  function setEnableKeywords($a_val)
94  {
95  $this->enable_keywords = $a_val;
96  }
97 
103  function getEnableKeywords()
104  {
105  return $this->enable_keywords;
106  }
107 
113  function setEnableAnchors($a_val)
114  {
115  $this->enable_anchors = $a_val;
116  }
117 
123  function getEnableAnchors()
124  {
125  return $this->enable_anchors;
126  }
127 
133  function setEnableInternalLinks($a_enabledinternallinks)
134  {
135  $this->enabledinternallinks = $a_enabledinternallinks;
136  }
137 
144  {
146  }
147 
153  function setEnableWikiLinks($a_enablewikilinks)
154  {
155  $this->enablewikilinks = $a_enablewikilinks;
156  }
157 
164  {
165  return $this->enablewikilinks;
166  }
167 
173  function addIntLinkFilter($a_val)
174  {
175  global $lng;
176 
177  $this->setLocalizationLanguage($lng->getLangKey());
178  if (is_array($a_val))
179  {
180  $this->int_link_filter =
181  array_merge($a_val, $this->int_link_filter);
182  }
183  else
184  {
185  $this->int_link_filter[] = $a_val;
186  }
187  }
188 
194  function removeIntLinkFilter($a_val)
195  {
196  foreach ($this->int_link_filter as $k => $v)
197  {
198  if ($v == $a_val)
199  {
200  unset($this->int_link_filter[$k]);
201  }
202  }
203  }
204 
205 
211  function getIntLinkFilters()
212  {
213  return $this->int_link_filter;
214  }
215 
221  function setIntLinkFilterWhiteList($a_white_list)
222  {
223  $this->link_filter_white_list = $a_white_list;
224  }
225 
232  {
233  return $this->link_filter_white_list;
234  }
235 
241  function setPreventRteUsage($a_val)
242  {
243  $this->prevent_rte_usage = $a_val;
244  }
245 
252  {
254  }
255 
261  function setLocalizationLanguage($a_val)
262  {
263  $this->localization_lang = $a_val;
264  }
265 
272  {
273  return $this->localization_lang;
274  }
275 
281  function setUseAttachedContent($a_val)
282  {
283  $this->use_attached_content = $a_val;
284  }
285 
292  {
294  }
295 
301  function setIntLinkHelpDefaultType($a_val)
302  {
303  $this->int_link_def_type = $a_val;
304  }
305 
312  {
314  }
315 
321  function setIntLinkHelpDefaultId($a_val)
322  {
323  $this->int_link_def_id = $a_val;
324  }
325 
332  {
333  return $this->int_link_def_id;
334  }
335 
341  function setEnableActivation($a_val)
342  {
343  $this->activation = $a_val;
344  }
345 
352  {
353  return $this->activation;
354  }
355 
362  {
363  $this->scheduled_activation = $a_val;
364  }
365 
372  {
374  }
375 
381  function setEnablePageToc($a_val)
382  {
383  $this->page_toc = $a_val;
384  }
385 
391  function getEnablePageToc()
392  {
393  return $this->page_toc;
394  }
395 
401  function setPreventHTMLUnmasking($a_preventhtmlunmasking)
402  {
403  $this->preventhtmlunmasking = $a_preventhtmlunmasking;
404  }
405 
412  {
414  }
415 
421  function setEnableSelfAssessment($a_enabledselfassessment, $a_scorm = true)
422  {
423  $this->setEnablePCType("Question", (bool) $a_enabledselfassessment);
424  $this->enabledselfassessment = $a_enabledselfassessment;
425  $this->enabledselfassessment_scorm = $a_scorm;
426  }
427 
428 
435  {
437  }
438 
445  {
447  }
448 
455  {
456  $this->disable_default_qfeedback = $a_val;
457  }
458 
465  {
467  }
468 
474  function setMultiLangSupport($a_val)
475  {
476  $this->multi_lang_support = $a_val;
477  }
478 
485  {
487  }
488 
494  function setSinglePageMode($a_val)
495  {
496  $this->single_page_mode = $a_val;
497  }
498 
504  function getSinglePageMode()
505  {
507  }
508 
510  {
511  $this->question_html = $question_html;
512  }
513 
514  function getQuestionHTML()
515  {
516  return $this->question_html;
517  }
518 
524  function setUseStoredQuestionTries($a_val)
525  {
526  $this->use_stored_tries = $a_val;
527  }
528 
535  {
537  }
538 
539 }
540 ?>