4 require_once 
"./Services/Object/classes/class.ilObjectGUI.php";
 
    5 require_once 
"./Services/Notifications/classes/class.ilObjNotificationAdmin.php";
 
    6 require_once 
"./Services/Notifications/classes/class.ilObjNotificationAdminAccess.php";
 
   25         function __construct($a_data,$a_id,$a_call_by_reference = 
true, $a_prepare_output = 
true) {
 
   27                 $this->
ilObjectGUI($a_data,$a_id,$a_call_by_reference, 
false);
 
   28                 $this->lng->loadLanguageModule(
'notification');
 
   40                 $next_class = $this->ctrl->getNextClass($this);
 
   41                 $cmd = $this->ctrl->getCmd();
 
   47                         case 'ilpermissiongui':
 
   49                                 include_once(
"Services/AccessControl/classes/class.ilPermissionGUI.php");
 
   51                                 $ret =& $this->ctrl->forwardCommand($perm_gui);
 
   56                                 $ilTabs->activateTab(
"view");
 
   77                 require_once 
'Services/Notifications/classes/class.ilObjNotificationAdmin.php';
 
   79                 $fileObj->setTitle(
'notification admin');
 
   81                 $fileObj->createReference();
 
   82                 $fileObj->putInTree(SYSTEM_FOLDER_ID);
 
   88                 global $ilAccess, $ilTabs, 
$lng;
 
   90                 $this->ctrl->setParameter($this,
"ref_id",$this->ref_id);
 
   92                 if ($ilAccess->checkAccess(
"visible", 
"", $this->ref_id))
 
   94                         $ilTabs->addTab(
"id_info",
 
   95                                 $lng->txt(
"info_short"),
 
   96                                 $this->ctrl->getLinkTargetByClass(array(
"ilobjfilegui", 
"ilinfoscreengui"), 
"showSummary"));
 
   99                 if ($ilAccess->checkAccess(
"edit_permission", 
"", $this->ref_id))
 
  101                                 $ilTabs->addTab(
"id_permissions",
 
  102                                 $lng->txt(
"perm_settings"),
 
  103                                 $this->ctrl->getLinkTargetByClass(array(get_class($this),
'ilpermissiongui'), 
"perm"));
 
  111                 $ilTabs->addSubTabTarget(
"notification_general", $this->ctrl->getLinkTargetByClass(
'ilObjNotificationAdminGUI', 
"showGeneralSettings"));
 
  113                 $ilTabs->addSubTabTarget(
"notification_admin_types", $this->ctrl->getLinkTargetByClass(
'ilObjNotificationAdminGUI', 
"showTypes"));
 
  114                 $ilTabs->addSubTabTarget(
"notification_admin_matrix", $this->ctrl->getLinkTargetByClass(
'ilObjNotificationAdminGUI', 
"showConfigMatrix"));
 
  121                 if (is_object($this->
object)) {
 
  122                         $ilLocator->addItem($this->object->getTitle(), $this->ctrl->getLinkTarget($this, 
""), 
"", 
$_GET[
"ref_id"]);
 
  127             require_once 
'Services/Notifications/classes/class.ilNotificationAdminSettingsForm.php';
 
  131                 $settings = 
new ilSetting(
'notifications');
 
  139                 $form->setValuesByArray(array_merge($settings->getAll(), $form->restored_values));
 
  142             $form->setFormAction($this->ctrl->getFormAction($this, 
'saveGeneralSettings'));
 
  143             $form->addCommandButton(
'saveGeneralSettings', 
'save');
 
  144             $form->addCommandButton(
'showGeneralSettings', 
'cancel');
 
  146             $this->tpl->setContent($form->getHtml());
 
  150             require_once 
'Services/Notifications/classes/class.ilNotificationAdminSettingsForm.php';
 
  151             #require_once 'Services/Administration/classes/class.ilSetting.php'; 
  153             $settings = 
new ilSetting(
'notifications');
 
  156             $form->setValuesByPost();
 
  157             if (!$form->checkInput()) {
 
  167                 $values = $form->store_values;
 
  170                 foreach($values as $v) {
 
  171                     $settings->set($v, 
$_POST[$v]);
 
  174                 foreach(
$_REQUEST[
'notifications'] as $type => $value) {
 
  186             $ilTabs->activateSubTab(
'notification_admin_types');
 
  188             require_once 
'Services/Notifications/classes/class.ilNotificationDatabaseHelper.php';
 
  189             require_once 
'Services/Notifications/classes/class.ilNotificationAdminSettingsForm.php';
 
  192             $form->setFormAction($this->ctrl->getFormAction($this, 
'showTypes'));
 
  193             $form->addCommandButton(
'saveTypes', $this->lng->txt(
'save'));
 
  194             $form->addCommandButton(
'showTypes', $this->lng->txt(
'cancel'));
 
  195             $this->tpl->setContent($form->getHtml());
 
  202             $ilTabs->activateSubTab(
'notification_admin_channels');
 
  204             require_once 
'Services/Notifications/classes/class.ilNotificationDatabaseHelper.php';
 
  205             require_once 
'Services/Notifications/classes/class.ilNotificationAdminSettingsForm.php';
 
  208             $form->setFormAction($this->ctrl->getFormAction($this, 
'showChannels'));
 
  209             $form->addCommandButton(
'saveChannels', $this->lng->txt(
'save'));
 
  210             $form->addCommandButton(
'showChannels', $this->lng->txt(
'cancel'));
 
  211             $this->tpl->setContent($form->getHtml());
 
  216             require_once 
'Services/Notifications/classes/class.ilNotificationDatabaseHelper.php';
 
  217             foreach(
$_REQUEST[
'notifications'] as $type => $value) {
 
  224             require_once 
'Services/Notifications/classes/class.ilNotificationDatabaseHelper.php';
 
  225             foreach(
$_REQUEST[
'notifications'] as $type => $value) {
 
  234             $ilTabs->activateSubTab(
'notification_admin_matrix');
 
  236             require_once 
'Services/Notifications/classes/class.ilNotificationDatabaseHelper.php';
 
  237             require_once 
'Services/Notifications/classes/class.ilNotificationSettingsTable.php';
 
  244             $table->setFormAction($ilCtrl->getFormAction($this, 
'saveConfigMatrix'));
 
  246             $table->setDescription($lng->txt(
'notification_admin_matrix_settings_table_desc'));
 
  247             $table->addCommandButton(
'saveConfigMatrix', $lng->txt(
'save'));
 
  248             $table->addCommandButton(
'showConfigMatrix', $lng->txt(
'cancel'));
 
  250             $this->tpl->setContent($table->getHtml());
 
  255             require_once 
'Services/Notifications/classes/class.ilNotificationDatabaseHelper.php';