ILIAS  release_5-3 Revision v5.3.23-19-g915713cf615
ilContainerNewsSettingsGUI Class Reference

News settings for containers. More...

+ Collaboration diagram for ilContainerNewsSettingsGUI:

Public Member Functions

 __construct (ilObjectGUI $a_parent_gui)
 Constructor. More...
 
 executeCommand ()
 Execute command. More...
 
 show ()
 Show. More...
 
 initForm ()
 Init settings form. More...
 
 save ()
 Save settings form. More...
 

Protected Attributes

 $ctrl
 
 $tpl
 
 $lng
 
 $setting
 
 $parent_gui
 
 $object
 

Detailed Description

News settings for containers.

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

Definition at line 12 of file class.ilContainerNewsSettingsGUI.php.

Constructor & Destructor Documentation

◆ __construct()

ilContainerNewsSettingsGUI::__construct ( ilObjectGUI  $a_parent_gui)

Constructor.

Definition at line 47 of file class.ilContainerNewsSettingsGUI.php.

References $DIC.

48  {
49  global $DIC;
50 
51  $this->ctrl = $DIC->ctrl();
52  $this->lng = $DIC->language();
53  $this->tpl = $DIC["tpl"];
54  $this->setting = $DIC["ilSetting"];
55  $this->parent_gui = $a_parent_gui;
56  $this->object = $this->parent_gui->object;
57  }
global $DIC
Definition: saml.php:7

Member Function Documentation

◆ executeCommand()

ilContainerNewsSettingsGUI::executeCommand ( )

Execute command.

Definition at line 62 of file class.ilContainerNewsSettingsGUI.php.

References array.

63  {
64  $next_class = $this->ctrl->getNextClass($this);
65  $cmd = $this->ctrl->getCmd("show");
66 
67  switch ($next_class) {
68  default:
69  if (in_array($cmd, array("show", "save"))) {
70  $this->$cmd();
71  }
72  }
73  }
Create styles array
The data for the language used.

◆ initForm()

ilContainerNewsSettingsGUI::initForm ( )

Init settings form.

Definition at line 90 of file class.ilContainerNewsSettingsGUI.php.

References $form, ilObject\_getAllReferences(), ilObject\_lookupType(), ilMembershipNotifications\addToSettingsForm(), array, ilObjectServiceSettingsGUI\NEWS_VISIBILITY, object, ilFormPropertyGUI\setInfo(), and ilCheckboxInputGUI\setValue().

Referenced by save(), and show().

91  {
92  include_once("./Services/Object/classes/class.ilObjectServiceSettingsGUI.php");
93  include_once("Services/Form/classes/class.ilPropertyFormGUI.php");
94  $form = new ilPropertyFormGUI();
95 
96  if ($this->setting->get('block_activated_news')) {
97  // Container tools (calendar, news, ... activation)
98  $news = new ilCheckboxInputGUI($this->lng->txt('obj_tool_setting_news'), ilObjectServiceSettingsGUI::NEWS_VISIBILITY);
99  $news->setValue(1);
100  $news->setChecked($this->object->getNewsBlockActivated());
101  $news->setInfo($this->lng->txt('obj_tool_setting_news_info'));
102  $form->addItem($news);
103 
104  if (in_array(ilObject::_lookupType($this->object->getId()), array('crs', 'grp'))) {
105  $ref_id = array_pop(ilObject::_getAllReferences($this->object->getId()));
106  include_once 'Services/Membership/classes/class.ilMembershipNotifications.php';
107  ilMembershipNotifications::addToSettingsForm($ref_id, null, $news);
108  }
109  }
110 
111  // timeline
112  $cb = new ilCheckboxInputGUI($this->lng->txt("cont_news_timeline"), "news_timeline");
113  $cb->setInfo($this->lng->txt("cont_news_timeline_info"));
114  $cb->setChecked($this->object->getNewsTimeline());
115  $form->addItem($cb);
116 
117  // ...timeline: auto entries
118  $cb2 = new ilCheckboxInputGUI($this->lng->txt("cont_news_timeline_auto_entries"), "news_timeline_auto_entries");
119  $cb2->setInfo($this->lng->txt("cont_news_timeline_auto_entries_info"));
120  $cb2->setChecked($this->object->getNewsTimelineAutoEntries());
121  $cb->addSubItem($cb2);
122 
123  // ...timeline: landing page
124  $cb2 = new ilCheckboxInputGUI($this->lng->txt("cont_news_timeline_landing_page"), "news_timeline_landing_page");
125  $cb2->setInfo($this->lng->txt("cont_news_timeline_landing_page_info"));
126  $cb2->setChecked($this->object->getNewsTimelineLandingPage());
127  $cb->addSubItem($cb2);
128 
129  // save and cancel commands
130  $form->addCommandButton("save", $this->lng->txt("save"));
131 
132  $form->setTitle($this->lng->txt("cont_news_settings"));
133  $form->setFormAction($this->ctrl->getFormAction($this));
134 
135  return $form;
136  }
This class represents a property form user interface.
This class represents a checkbox property in a property form.
static _getAllReferences($a_id)
get all reference ids of object
setInfo($a_info)
Set Information Text.
static addToSettingsForm($a_ref_id, ilPropertyFormGUI $a_form=null, ilFormPropertyGUI $a_input=null)
Add notification settings to form.
if(isset($_POST['submit'])) $form
setValue($a_value)
Set Value.
Create styles array
The data for the language used.
static _lookupType($a_id, $a_reference=false)
lookup object type
Create new PHPExcel object
obj_idprivate
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ save()

ilContainerNewsSettingsGUI::save ( )

Save settings form.

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

References $form, ilObject\_getAllReferences(), ilObject\_lookupType(), array, ilMembershipNotifications\importFromForm(), initForm(), ilObjectServiceSettingsGUI\NEWS_VISIBILITY, object, and ilUtil\sendSuccess().

142  {
143  $form = $this->initForm();
144  if ($form->checkInput()) {
145  include_once("./Services/Object/classes/class.ilObjectServiceSettingsGUI.php");
146  $this->object->setNewsBlockActivated($form->getInput(ilObjectServiceSettingsGUI::NEWS_VISIBILITY));
147  $this->object->setNewsTimeline($form->getInput("news_timeline"));
148  $this->object->setNewsTimelineAutoEntries($form->getInput("news_timeline_auto_entries"));
149  $this->object->setNewsTimelineLandingPage($form->getInput("news_timeline_landing_page"));
150 
151 
152  if ($this->setting->get('block_activated_news')) {
153  if (in_array(ilObject::_lookupType($this->object->getId()), array('crs', 'grp'))) {
154  $ref_id = array_pop(ilObject::_getAllReferences($this->object->getId()));
155 
156  include_once "Services/Membership/classes/class.ilMembershipNotifications.php";
158  }
159  }
160 
161  $this->object->update();
162  ilUtil::sendSuccess($this->lng->txt("msg_obj_modified"), true);
163  $this->ctrl->redirect($this, "");
164  } else {
165  $form->setValuesByPost();
166  $this->tpl->setContent($form->getHtml());
167  }
168  }
static sendSuccess($a_info="", $a_keep=false)
Send Success Message to Screen.
static _getAllReferences($a_id)
get all reference ids of object
if(isset($_POST['submit'])) $form
Create styles array
The data for the language used.
static _lookupType($a_id, $a_reference=false)
lookup object type
Create new PHPExcel object
obj_idprivate
static importFromForm($a_ref_id, ilPropertyFormGUI $a_form=null)
Import notification settings from form.
+ Here is the call graph for this function:

◆ show()

ilContainerNewsSettingsGUI::show ( )

Show.

Parameters

Definition at line 81 of file class.ilContainerNewsSettingsGUI.php.

References $form, and initForm().

82  {
83  $form = $this->initForm();
84  $this->tpl->setContent($form->getHTML());
85  }
if(isset($_POST['submit'])) $form
+ Here is the call graph for this function:

Field Documentation

◆ $ctrl

ilContainerNewsSettingsGUI::$ctrl
protected

Definition at line 17 of file class.ilContainerNewsSettingsGUI.php.

◆ $lng

ilContainerNewsSettingsGUI::$lng
protected

Definition at line 27 of file class.ilContainerNewsSettingsGUI.php.

◆ $object

ilContainerNewsSettingsGUI::$object
protected

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

◆ $parent_gui

ilContainerNewsSettingsGUI::$parent_gui
protected

Definition at line 37 of file class.ilContainerNewsSettingsGUI.php.

◆ $setting

ilContainerNewsSettingsGUI::$setting
protected

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

◆ $tpl

ilContainerNewsSettingsGUI::$tpl
protected

Definition at line 22 of file class.ilContainerNewsSettingsGUI.php.


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