46 public function __construct($a_parent_gui, $a_obj_id, $a_modes)
50 $this->ctrl =
$DIC->ctrl();
51 $this->gui = $a_parent_gui;
52 $this->modes = $a_modes;
53 $this->obj_id = $a_obj_id;
66 $next_class =
$ilCtrl->getNextClass($this);
67 $cmd =
$ilCtrl->getCmd(
'editSettings');
69 switch ($next_class) {
89 if (in_array(self::INFO_TAB_VISIBILITY, $services)) {
94 self::INFO_TAB_VISIBILITY,
98 $info->setInfo(
$GLOBALS[
'lng']->txt(
'obj_tool_setting_info_tab_info'));
103 if (in_array(self::CALENDAR_VISIBILITY, $services)) {
104 include_once
'./Services/Calendar/classes/class.ilObjCalendarSettings.php';
109 include_once
'./Services/Calendar/classes/class.ilObjCalendarSettings.php';
112 $cal->setInfo(
$GLOBALS[
'lng']->txt(
'obj_tool_setting_calendar_info'));
113 $form->addItem($cal);
118 if (in_array(self::USE_NEWS, $services)) {
126 $news->setChecked($checked);
127 $info =
$GLOBALS[
'lng']->txt(
'obj_tool_setting_use_news_info');
129 $info.=
" <a href='" .
$ilCtrl->getLinkTargetByClass(
"ilcontainernewssettingsgui",
"") .
130 "'>ยป " .
$GLOBALS[
'lng']->txt(
'obj_tool_setting_use_news_open_settings') .
"</a>";
132 $news->setInfo(
$info);
133 $form->addItem($news);
135 if (in_array(self::NEWS_VISIBILITY, $services)) {
136 if (
$ilSetting->get(
'block_activated_news')) {
142 self::NEWS_VISIBILITY,
146 $news->setInfo(
$GLOBALS[
'lng']->txt(
'obj_tool_setting_news_info'));
147 $form->addItem($news);
152 include_once
'Services/Membership/classes/class.ilMembershipNotifications.php';
159 if (in_array(self::CUSTOM_METADATA, $services)) {
161 $md->setInfo(
$GLOBALS[
'lng']->txt(
'obj_tool_setting_custom_metadata_info'));
165 self::CUSTOM_METADATA,
172 if (in_array(self::TAG_CLOUD, $services)) {
174 if ($tags_active->get(
"enable",
false)) {
176 $tag->setInfo(
$GLOBALS[
'lng']->txt(
'obj_tool_setting_tag_cloud_info'));
188 if (in_array(self::TAXONOMIES, $services)) {
196 $form->addItem($tax);
200 if (in_array(self::AUTO_RATING_NEW_OBJECTS, $services)) {
201 $GLOBALS[
'lng']->loadLanguageModule(
"rating");
207 $rate->setInfo(
$GLOBALS[
'lng']->txt(
'rating_new_objects_auto_info'));
210 self::AUTO_RATING_NEW_OBJECTS,
213 $form->addItem($rate);
217 if (in_array(self::BADGES, $services)) {
218 include_once
'Services/Badge/classes/class.ilBadgeHandler.php';
221 $bdg->setInfo(
$GLOBALS[
'lng']->txt(
'obj_tool_setting_badges_info'));
228 $form->addItem($bdg);
231 if (in_array(self::ORGU_POSITION_ACCESS, $services)) {
236 $position_settings->isActive()
239 $GLOBALS[
'DIC']->language()->txt(
'obj_orgunit_positions'),
240 self::ORGU_POSITION_ACCESS
242 $lia->setInfo(
$GLOBALS[
'DIC']->language()->txt(
'obj_orgunit_positions_info'));
247 if (!$position_settings->isChangeableForObject()) {
248 $lia->setDisabled(
true);
250 $form->addItem($lia);
255 if (in_array(self::SKILLS, $services)) {
257 if ($skmg_set->get(
"enable_skmg")) {
259 $skill->setInfo(
$GLOBALS[
'lng']->txt(
'obj_tool_setting_skills_info'));
266 $form->addItem($skill);
286 if (in_array(self::INFO_TAB_VISIBILITY, $services)) {
287 include_once
'./Services/Container/classes/class.ilContainer.php';
292 if (in_array(self::CALENDAR_VISIBILITY, $services)) {
293 include_once
'./Services/Calendar/classes/class.ilCalendarSettings.php';
295 include_once
'./Services/Container/classes/class.ilContainer.php';
301 if (in_array(self::USE_NEWS, $services)) {
302 include_once
'./Services/Container/classes/class.ilContainer.php';
305 if (in_array(self::NEWS_VISIBILITY, $services)) {
306 include_once
'./Services/Container/classes/class.ilContainer.php';
312 include_once
"Services/Membership/classes/class.ilMembershipNotifications.php";
318 if (in_array(self::AUTO_RATING_NEW_OBJECTS, $services)) {
319 include_once
'./Services/Container/classes/class.ilContainer.php';
324 if (in_array(self::TAXONOMIES, $services)) {
325 include_once
'./Services/Container/classes/class.ilContainer.php';
330 if (in_array(self::TAG_CLOUD, $services)) {
331 include_once
'./Services/Container/classes/class.ilContainer.php';
336 if (in_array(self::CUSTOM_METADATA, $services)) {
337 include_once
'./Services/Container/classes/class.ilContainer.php';
342 if (in_array(self::BADGES, $services)) {
343 include_once
'Services/Badge/classes/class.ilBadgeHandler.php';
345 include_once
'./Services/Container/classes/class.ilContainer.php';
351 if (in_array(self::ORGU_POSITION_ACCESS, $services)) {
356 if ($position_settings->isActive() && $position_settings->isChangeableForObject()) {
358 $orgu_object_settings->setActive(
359 (
int)
$form->getInput(self::ORGU_POSITION_ACCESS)
361 $orgu_object_settings->update();
366 if (in_array(self::SKILLS, $services)) {
368 if ($skmg_set->get(
"enable_skmg")) {
369 include_once
'./Services/Container/classes/class.ilContainer.php';
398 $GLOBALS[
'ilCtrl']->returnToParent($this);
408 $form = $this->initSettingsForm();
419 $form = $this->initSettingsForm();
420 if (
$form->checkInput()) {
421 include_once
'./Services/Calendar/classes/class.ilCalendarSettings.php';
428 $GLOBALS[
'ilCtrl']->redirect($this);
432 $form->setValuesByPost();
443 return in_array($a_mode, $this->
getModes());
An exception for terminatinating execution or to throw for unit testing.
static getInstance()
Constructor.
static _getInstance()
get singleton instance
static lookupCalendarActivated($a_obj_id)
static _lookupContainerSetting($a_id, $a_keyword, $a_default_value=null)
Lookup a container setting.
static _writeContainerSetting($a_id, $a_keyword, $a_value)
static importFromForm($a_ref_id, ilPropertyFormGUI $a_form=null)
Import notification settings from form.
static addToSettingsForm($a_ref_id, ilPropertyFormGUI $a_form=null, ilFormPropertyGUI $a_input=null)
Add notification settings to form.
GUI class for service settings (calendar, notes, comments)
__construct($a_parent_gui, $a_obj_id, $a_modes)
Constructor.
const AUTO_RATING_NEW_OBJECTS
getModes()
Get active modes.
executeCommand()
Control class handling.
const ORGU_POSITION_ACCESS
static initServiceSettingsForm($a_obj_id, ilPropertyFormGUI $form, $services)
Init service settings form.
updateToolSettings()
Update settings.
editSettings(ilPropertyFormGUI $form=null)
Edit tool settings (calendar, news, comments, ...)
static updateServiceSettingsForm($a_obj_id, ilPropertyFormGUI $form, $services)
Update service settings.
isModeActive($a_mode)
Check if specific mode is active.
const INFO_TAB_VISIBILITY
const CALENDAR_VISIBILITY
static _getAllReferences($a_id)
get all reference ids of object
static _lookupType($a_id, $a_reference=false)
lookup object type
static getInstance()
Get instance.
Stores object activation status of orgunit position settings.
static sendSuccess($a_info="", $a_keep=false)
Send Success Message to Screen.
static sendFailure($a_info="", $a_keep=false)
Send Failure Message to Screen.
$GLOBALS['loaded']
Global hash that tracks already loaded includes.
if(function_exists( 'posix_getuid') &&posix_getuid()===0) if(!array_key_exists('t', $options)) $tag
if(isset($_POST['submit'])) $form