ILIAS  release_5-4 Revision v5.4.26-12-gabc799a52e6
class.ilObjMailGUI.php
Go to the documentation of this file.
1<?php
2/* Copyright (c) 1998-2017 ILIAS open source, Extended GPL, see docs/LICENSE */
3
10{
13
14 const PASSWORD_PLACE_HOLDER = '***********************';
15
19 protected $tabs;
20
24 protected $rbacsystem;
25
29 protected $settings;
30
37 public function __construct($a_data, $a_id, $a_call_by_reference)
38 {
39 global $DIC;
40
41 $this->type = 'mail';
42 parent::__construct($a_data, $a_id, $a_call_by_reference, false);
43
44 $this->tabs = $DIC->tabs();
45 $this->rbacsystem = $DIC->rbac()->system();
46 $this->settings = $DIC['ilSetting'];
47
48 $this->lng->loadLanguageModule('mail');
49 }
50
54 public function executeCommand()
55 {
56 $next_class = $this->ctrl->getNextClass($this);
57 $cmd = $this->ctrl->getCmd();
58 $this->prepareOutput();
59
60 switch ($next_class) {
61 case 'ilpermissiongui':
62 $perm_gui = new ilPermissionGUI($this);
63 $this->ctrl->forwardCommand($perm_gui);
64 break;
65
66 case 'ilmailtemplategui':
67 if (!$this->isViewAllowed()) {
68 $this->ilias->raiseError($this->lng->txt('msg_no_perm_write'), $this->ilias->error_obj->WARNING);
69 }
70
71 $this->ctrl->forwardCommand(new ilMailTemplateGUI($this->object));
72 break;
73
74 default:
75 if (!$cmd) {
76 $cmd = 'view';
77 }
78 $cmd .= 'Object';
79 $this->$cmd();
80 break;
81 }
82
83 return true;
84 }
85
89 private function isEditingAllowed()
90 {
91 return $this->rbacsystem->checkAccess('write', $this->object->getRefId());
92 }
93
97 private function isViewAllowed()
98 {
99 return $this->rbacsystem->checkAccess('read', $this->object->getRefId());
100 }
101
105 private function isPermissionChangeAllowed()
106 {
107 return $this->rbacsystem->checkAccess('edit_permission', $this->object->getRefId());
108 }
109
113 public function getAdminTabs()
114 {
115 $this->getTabs();
116 }
117
121 protected function getTabs()
122 {
123 if ($this->isViewAllowed()) {
124 $this->tabs->addTarget(
125 'settings',
126 $this->ctrl->getLinkTarget($this, 'view'),
127 array(
128 'view',
129 'save',
130 '',
131 'showExternalSettingsForm',
132 'saveExternalSettingsForm',
133 'sendTestUserMail',
134 'sendTestSystemMail'
135 ),
136 '',
137 ''
138 );
139 }
140
141 if ($this->isViewAllowed()) {
142 $this->tabs->addTarget(
143 'mail_templates',
144 $this->ctrl->getLinkTargetByClass('ilmailtemplategui', 'showTemplates'),
145 '',
146 'ilmailtemplategui'
147 );
148 }
149
150 if ($this->isPermissionChangeAllowed()) {
151 $this->tabs->addTarget(
152 'perm_settings',
153 $this->ctrl->getLinkTargetByClass(array(get_class($this), 'ilpermissiongui'), 'perm'),
154 array('perm', 'info', 'owner'),
155 'ilpermissiongui'
156 );
157 }
158 }
159
163 protected function buildSettingsSubTabs($activeSubTab)
164 {
165 if ($this->isViewAllowed()) {
166 $this->tabs->addSubTab(
167 self::SETTINGS_SUB_TAB_ID_GENERAL,
168 $this->lng->txt('mail_settings_general_tab'),
169 $this->ctrl->getLinkTarget($this, 'view')
170 );
171
172 if ($this->settings->get('mail_allow_external')) {
173 $this->tabs->addSubTab(
174 self::SETTINGS_SUB_TAB_ID_EXTERNAL,
175 $this->lng->txt('mail_settings_external_tab'),
176 $this->ctrl->getLinkTarget($this, 'showExternalSettingsForm')
177 );
178 }
179
180 $this->tabs->activateSubTab($activeSubTab);
181 }
182 }
183
187 public function viewObject()
188 {
190 }
191
196 {
197 if (!$this->isViewAllowed()) {
198 $this->ilias->raiseError($this->lng->txt('msg_no_perm_write'), $this->ilias->error_obj->WARNING);
199 }
200
201 $this->buildSettingsSubTabs(self::SETTINGS_SUB_TAB_ID_GENERAL);
202
203 if ($form === null) {
204 $form = $this->getGeneralSettingsForm();
206 }
207
208 $this->tpl->setContent($form->getHTML());
209 }
210
214 protected function getGeneralSettingsForm()
215 {
216 $form = new ilPropertyFormGUI();
217
218 $form->setFormAction($this->ctrl->getFormAction($this, 'save'));
219 $form->setTitle($this->lng->txt('general_settings'));
220
221 $cb = new ilCheckboxInputGUI($this->lng->txt('mail_allow_external'), 'mail_allow_external');
222 $cb->setInfo($this->lng->txt('mail_allow_external_info'));
223 $cb->setValue(1);
224 $cb->setDisabled(!$this->isEditingAllowed());
225 $form->addItem($cb);
226
227 include_once 'Services/Mail/classes/Form/class.ilIncomingMailInputGUI.php';
228 $incoming_mail_gui = new ilIncomingMailInputGUI($this->lng->txt('mail_incoming'), 'incoming_type');
229 $incoming_mail_gui->setDisabled(!$this->isEditingAllowed());
230 $this->ctrl->setParameterByClass('ilobjuserfoldergui', 'ref_id', USER_FOLDER_ID);
231 $incoming_mail_gui->setInfo(sprintf(
232 $this->lng->txt('mail_settings_incoming_type_see_also'),
233 $this->ctrl->getLinkTargetByClass('ilobjuserfoldergui', 'settings')
234 ));
235 $this->ctrl->clearParametersByClass('ilobjuserfoldergui');
236 $form->addItem($incoming_mail_gui);
237
238 $show_mail_settings_gui = new ilCheckboxInputGUI($this->lng->txt('show_mail_settings'), 'show_mail_settings');
239 $show_mail_settings_gui->setInfo($this->lng->txt('show_mail_settings_info'));
240 $show_mail_settings_gui->setValue(1);
241 $form->addItem($show_mail_settings_gui);
242
243 $ti = new ilNumberInputGUI($this->lng->txt('mail_maxsize_attach'), 'mail_maxsize_attach');
244 $ti->setSuffix($this->lng->txt('kb'));
245 $ti->setInfo($this->lng->txt('mail_max_size_attachments_total'));
246 $ti->setMaxLength(10);
247 $ti->setSize(10);
248 $ti->setDisabled(!$this->isEditingAllowed());
249 $form->addItem($ti);
250
251 $mn = new ilFormSectionHeaderGUI();
252 $mn->setTitle($this->lng->txt('mail_member_notification'));
253 $form->addItem($mn);
254
255 $cron_mail = new ilSelectInputGUI($this->lng->txt('cron_mail_notification'), 'mail_notification');
256 $cron_options = array(
257 0 => $this->lng->txt('cron_mail_notification_never'),
258 1 => $this->lng->txt('cron_mail_notification_cron')
259 );
260 $cron_mail->setOptions($cron_options);
261 $cron_mail->setInfo(sprintf(
262 $this->lng->txt('cron_mail_notification_desc'),
263 $this->lng->txt('mail_allow_external')
264 ));
265 $cron_mail->setDisabled(!$this->isEditingAllowed());
266 $form->addItem($cron_mail);
267
270 $form,
271 $this
272 );
273
274 if ($this->isEditingAllowed()) {
275 $form->addCommandButton('save', $this->lng->txt('save'));
276 }
277
278 return $form;
279 }
280
285 {
286 $form->setValuesByArray(array(
287 'mail_allow_external' => $this->settings->get('mail_allow_external'),
288 'incoming_type' => (int) $this->settings->get('mail_incoming_mail'),
289 'mail_address_option' => strlen($this->settings->get('mail_address_option')) ? $this->settings->get('mail_address_option') : ilMailOptions::FIRST_EMAIL,
290 'mail_address_option_both' => strlen($this->settings->get('mail_address_option')) ? $this->settings->get('mail_address_option') : ilMailOptions::FIRST_EMAIL,
291 'show_mail_settings' => $this->settings->get('show_mail_settings', 1),
292 'mail_maxsize_attach' => $this->settings->get('mail_maxsize_attach'),
293 'mail_notification' => $this->settings->get('mail_notification')
294 ));
295 }
296
300 public function saveObject()
301 {
302 if (!$this->isEditingAllowed()) {
303 $this->ilias->raiseError($this->lng->txt('msg_no_perm_write'), $this->ilias->error_obj->WARNING);
304 }
305
306 $form = $this->getGeneralSettingsForm();
307 if ($form->checkInput()) {
308 $incoming_type = (int) $form->getInput('incoming_type');
309
310 $mail_address_option = ilMailOptions::FIRST_EMAIL;
311 if ($incoming_type == ilMailOptions::INCOMING_EMAIL) {
312 $mail_address_option = (int) $form->getInput('mail_address_option');
313 } else {
314 if ($incoming_type == ilMailOptions::INCOMING_BOTH) {
315 $mail_address_option = (int) $form->getInput('mail_address_option_both');
316 }
317 }
318
319 $this->settings->set('mail_allow_external', (int) $form->getInput('mail_allow_external'));
320 $this->settings->set('mail_incoming_mail', $incoming_type);
321 $this->settings->set('show_mail_settings', (int) $form->getInput('show_mail_settings'));
322
323 $this->settings->set('mail_address_option', $mail_address_option);
324 $this->settings->set('mail_maxsize_attach', $form->getInput('mail_maxsize_attach'));
325 $this->settings->set('mail_notification', (int) $form->getInput('mail_notification'));
326
327 ilUtil::sendSuccess($this->lng->txt('saved_successfully'), true);
328 $this->ctrl->redirect($this);
329 }
330
331 $form->setValuesByPost();
333 }
334
339 {
340 if (!$this->isViewAllowed()) {
341 $this->ilias->raiseError($this->lng->txt('msg_no_perm_write'), $this->ilias->error_obj->WARNING);
342 }
343
344 $this->buildSettingsSubTabs(self::SETTINGS_SUB_TAB_ID_EXTERNAL);
345
346 if ($form === null) {
349 }
350
351 if (strlen($GLOBALS['DIC']->user()->getEmail()) > 0) {
353 $btn->setUrl($this->ctrl->getLinkTarget($this, 'sendTestUserMail'));
354 $btn->setCaption('mail_external_send_test_usr');
355 $GLOBALS['DIC']->toolbar()->addButtonInstance($btn);
356
358 $btn->setUrl($this->ctrl->getLinkTarget($this, 'sendTestSystemMail'));
359 $btn->setCaption('mail_external_send_test_sys');
360 $GLOBALS['DIC']->toolbar()->addButtonInstance($btn);
361 }
362
363 $this->tpl->setContent($form->getHTML());
364 }
365
366 protected function sendTestUserMailObject()
367 {
368 $this->sendTestMail(true);
369 }
370
371 protected function sendTestSystemMailObject()
372 {
373 $this->sendTestMail();
374 }
375
379 protected function sendTestMail($is_manual_mail = false)
380 {
381 if (!$this->isViewAllowed()) {
382 $this->ilias->raiseError($this->lng->txt('msg_no_perm_write'), $this->ilias->error_obj->WARNING);
383 }
384
385 if (strlen($GLOBALS['DIC']->user()->getEmail()) == 0) {
386 return $this->showExternalSettingsFormObject();
387 }
388
389 if ($is_manual_mail) {
390 $mail = new ilMail($GLOBALS['DIC']->user()->getId());
391 $type = array('normal');
392 } else {
393 $mail = new ilMail(ANONYMOUS_USER_ID);
394 $type = array('system');
395 }
396
397 $mail->setSaveInSentbox(false);
398 $mail->appendInstallationSignature(true);
399 $mail->sendMail($GLOBALS['DIC']->user()->getEmail(), '', '', 'Test Subject', 'Test Body', array(), $type);
400
401 ilUtil::sendSuccess($this->lng->txt('mail_external_test_sent'));
403 }
404
408 protected function getExternalSettingsForm()
409 {
410 $form = new ilPropertyFormGUI();
411
412 $form->setFormAction($this->ctrl->getFormAction($this, 'saveExternalSettingsForm'));
413 $form->setTitle($this->lng->txt('mail_settings_external_frm_head'));
414
415 $smtp = new ilCheckboxInputGUI($this->lng->txt('mail_smtp_status'), 'mail_smtp_status');
416 $smtp->setInfo($this->lng->txt('mail_smtp_status_info'));
417 $smtp->setValue(1);
418 $smtp->setDisabled(!$this->isEditingAllowed());
419 $form->addItem($smtp);
420
421 $host = new ilTextInputGUI($this->lng->txt('mail_smtp_host'), 'mail_smtp_host');
422 $host->setInfo($this->lng->txt('mail_smtp_host_info'));
423 $host->setRequired(true);
424 $host->setDisabled(!$this->isEditingAllowed());
425 $smtp->addSubItem($host);
426
427 $port = new ilNumberInputGUI($this->lng->txt('mail_smtp_port'), 'mail_smtp_port');
428 $port->setInfo($this->lng->txt('mail_smtp_port_info'));
429 $port->allowDecimals(false);
430 $port->setMinValue(0);
431 $port->setMinValue(0);
432 $port->setRequired(true);
433 $port->setDisabled(!$this->isEditingAllowed());
434 $smtp->addSubItem($port);
435
436 $encryption = new ilSelectInputGUI($this->lng->txt('mail_smtp_encryption'), 'mail_smtp_encryption');
437 $encryptionOptions = array(
438 '' => $this->lng->txt('please_choose'),
439 'tls' => $this->lng->txt('mail_smtp_encryption_tls'),
440 'ssl' => $this->lng->txt('mail_smtp_encryption_ssl')
441 );
442
443 $encryption->setOptions($encryptionOptions);
444 $encryption->setDisabled(!$this->isEditingAllowed());
445 $smtp->addSubItem($encryption);
446
447 $user = new ilTextInputGUI($this->lng->txt('mail_smtp_user'), 'mail_smtp_user');
448 $user->setDisabled(!$this->isEditingAllowed());
449 $smtp->addSubItem($user);
450
451 $password = new ilPasswordInputGUI($this->lng->txt('mail_smtp_password'), 'mail_smtp_password');
452 $password->setRetype(false);
453 $password->setSkipSyntaxCheck(true);
454 $password->setDisabled(!$this->isEditingAllowed());
455 $smtp->addSubItem($password);
456
457 $pre = new ilTextInputGUI($this->lng->txt('mail_subject_prefix'), 'mail_subject_prefix');
458 $pre->setSize(12);
459 $pre->setMaxLength(32);
460 $pre->setInfo($this->lng->txt('mail_subject_prefix_info'));
461 $pre->setDisabled(!$this->isEditingAllowed());
462 $form->addItem($pre);
463
464 $send_html = new ilCheckboxInputGUI($this->lng->txt('mail_send_html'), 'mail_send_html');
465 $send_html->setInfo($this->lng->txt('mail_send_html_info'));
466 $send_html->setValue(1);
467 $send_html->setDisabled(!$this->isEditingAllowed());
468 $form->addItem($send_html);
469
470 $sh = new ilFormSectionHeaderGUI();
471 $sh->setTitle($this->lng->txt('mail_settings_user_frm_head'));
472 $form->addItem($sh);
473
474 $user_from_address = new ilEMailInputGUI(
475 $this->lng->txt('mail_system_usr_from_addr'),
476 'mail_system_usr_from_addr'
477 );
478 $user_from_address->setInfo($this->lng->txt('mail_system_usr_from_addr_info'));
479 $user_from_address->setRequired(true);
480 $user_from_address->setDisabled(!$this->isEditingAllowed());
481 $form->addItem($user_from_address);
482
483 $user_from_name = new ilTextInputGUI($this->lng->txt('mail_system_usr_from_name'), 'mail_system_usr_from_name');
484 $user_from_name->setInfo($this->lng->txt('mail_system_usr_from_name_info'));
485 $user_from_name->setRequired(true);
486 $user_from_name->setDisabled(!$this->isEditingAllowed());
487 $form->addItem($user_from_name);
488
489 $user_envelope_from_addr = new ilEMailInputGUI(
490 $this->lng->txt('mail_system_usr_env_from_addr'),
491 'mail_system_usr_env_from_addr'
492 );
493 $user_envelope_from_addr->setInfo($this->lng->txt('mail_system_usr_env_from_addr_info'));
494 $user_envelope_from_addr->setDisabled(!$this->isEditingAllowed());
495 $form->addItem($user_envelope_from_addr);
496
497 $sh = new ilFormSectionHeaderGUI();
498 $sh->setTitle($this->lng->txt('mail_settings_system_frm_head'));
499 $form->addItem($sh);
500
501 $system_from_addr = new ilEMailInputGUI(
502 $this->lng->txt('mail_system_sys_from_addr'),
503 'mail_system_sys_from_addr'
504 );
505 $system_from_addr->setInfo($this->lng->txt('mail_system_sys_from_addr_info'));
506 $system_from_addr->setRequired(true);
507 $system_from_addr->setDisabled(!$this->isEditingAllowed());
508 $form->addItem($system_from_addr);
509
510 $system_from_name = new ilTextInputGUI(
511 $this->lng->txt('mail_system_sys_from_name'),
512 'mail_system_sys_from_name'
513 );
514 $system_from_name->setRequired(true);
515 $system_from_name->setDisabled(!$this->isEditingAllowed());
516 $form->addItem($system_from_name);
517
518 $system_reply_to_addr = new ilEMailInputGUI(
519 $this->lng->txt('mail_system_sys_reply_to_addr'),
520 'mail_system_sys_reply_to_addr'
521 );
522 $system_reply_to_addr->setRequired(true);
523 $system_reply_to_addr->setDisabled(!$this->isEditingAllowed());
524 $form->addItem($system_reply_to_addr);
525
526 $system_return_path = new ilEMailInputGUI(
527 $this->lng->txt('mail_system_sys_env_from_addr'),
528 'mail_system_sys_env_from_addr'
529 );
530 $system_return_path->setInfo($this->lng->txt('mail_system_sys_env_from_addr_info'));
531 $system_return_path->setDisabled(!$this->isEditingAllowed());
532 $form->addItem($system_return_path);
533
534 $signature = new ilTextAreaInputGUI($this->lng->txt('mail_system_sys_signature'), 'mail_system_sys_signature');
535 $signature->setRows(8);
536 $signature->setDisabled(!$this->isEditingAllowed());
537 $form->addItem($signature);
538
539 $placeholders = new ilManualPlaceholderInputGUI('mail_system_sys_signature');
540 foreach (array(
541 array('placeholder' => 'CLIENT_NAME', 'label' => $this->lng->txt('mail_nacc_client_name')),
542 array('placeholder' => 'CLIENT_DESC', 'label' => $this->lng->txt('mail_nacc_client_desc')),
543 array('placeholder' => 'CLIENT_URL', 'label' => $this->lng->txt('mail_nacc_ilias_url'))
544 ) as $key => $value) {
545 $placeholders->addPlaceholder($value['placeholder'], $value['label']);
546 }
547 $placeholders->setDisabled(!$this->isEditingAllowed());
548 $form->addItem($placeholders);
549
550 if ($this->isEditingAllowed()) {
551 $form->addCommandButton('saveExternalSettingsForm', $this->lng->txt('save'));
552 }
553
554 return $form;
555 }
556
561 {
562 $subjectPrefix = $this->settings->get('mail_subject_prefix');
563 if (false === $subjectPrefix) {
564 $subjectPrefix = ilMail::MAIL_SUBJECT_PREFIX;
565 }
566
567 $form->setValuesByArray(array(
568 'mail_smtp_status' => (bool) $this->settings->get('mail_smtp_status'),
569 'mail_smtp_host' => $this->settings->get('mail_smtp_host'),
570 'mail_smtp_port' => (int) $this->settings->get('mail_smtp_port'),
571 'mail_smtp_user' => $this->settings->get('mail_smtp_user'),
572 'mail_smtp_password' => strlen($this->settings->get('mail_smtp_password')) > 0 ? self::PASSWORD_PLACE_HOLDER : '',
573 'mail_smtp_encryption' => $this->settings->get('mail_smtp_encryption'),
574 'mail_subject_prefix' => $subjectPrefix,
575 'mail_send_html' => (int) $this->settings->get('mail_send_html'),
576 'mail_system_usr_from_addr' => $this->settings->get('mail_system_usr_from_addr'),
577 'mail_system_usr_from_name' => $this->settings->get('mail_system_usr_from_name'),
578 'mail_system_usr_env_from_addr' => $this->settings->get('mail_system_usr_env_from_addr'),
579 'mail_system_sys_from_addr' => $this->settings->get('mail_system_sys_from_addr'),
580 'mail_system_sys_from_name' => $this->settings->get('mail_system_sys_from_name'),
581 'mail_system_sys_reply_to_addr' => $this->settings->get('mail_system_sys_reply_to_addr'),
582 'mail_system_sys_env_from_addr' => $this->settings->get('mail_system_sys_env_from_addr'),
583 'mail_system_sys_signature' => $this->settings->get('mail_system_sys_signature')
584 ));
585 }
586
591 {
592 if (!$this->isEditingAllowed()) {
593 $this->ilias->raiseError($this->lng->txt('msg_no_perm_write'), $this->ilias->error_obj->WARNING);
594 }
595
597 $isFormValid = $form->checkInput();
598
599 if (!$isFormValid) {
600 $form->setValuesByPost();
602 return;
603 }
604
605 $isSmtpEnabled = (bool) $form->getInput('mail_smtp_status');
606 if ($isSmtpEnabled && $form->getInput('mail_smtp_user') && !$form->getInput('mail_smtp_password')) {
607 $form->getItemByPostVar('mail_smtp_password')->setRequired(true);
608 $form->getItemByPostVar('mail_smtp_password')->setAlert($this->lng->txt('mail_smtp_password_req'));
609 $form->setValuesByPost();
611 return;
612 }
613
614 $this->settings->set('mail_smtp_status', (int) $form->getInput('mail_smtp_status'));
615 $this->settings->set('mail_smtp_host', $form->getInput('mail_smtp_host'));
616 $this->settings->set('mail_smtp_port', (int) $form->getInput('mail_smtp_port'));
617 $this->settings->set('mail_smtp_user', $form->getInput('mail_smtp_user'));
618 if ($form->getInput('mail_smtp_password') != self::PASSWORD_PLACE_HOLDER) {
619 $this->settings->set('mail_smtp_password', $form->getInput('mail_smtp_password'));
620 }
621 $this->settings->set('mail_smtp_encryption', $form->getInput('mail_smtp_encryption'));
622
623 $this->settings->set('mail_send_html', $form->getInput('mail_send_html'));
624 $this->settings->set('mail_subject_prefix', $form->getInput('mail_subject_prefix'));
625 $this->settings->set('mail_system_usr_from_addr', $form->getInput('mail_system_usr_from_addr'));
626 $this->settings->set('mail_system_usr_from_name', $form->getInput('mail_system_usr_from_name'));
627 $this->settings->set('mail_system_usr_env_from_addr', $form->getInput('mail_system_usr_env_from_addr'));
628 $this->settings->set('mail_system_sys_from_addr', $form->getInput('mail_system_sys_from_addr'));
629 $this->settings->set('mail_system_sys_from_name', $form->getInput('mail_system_sys_from_name'));
630 $this->settings->set('mail_system_sys_reply_to_addr', $form->getInput('mail_system_sys_reply_to_addr'));
631 $this->settings->set('mail_system_sys_env_from_addr', $form->getInput('mail_system_sys_env_from_addr'));
632 $this->settings->set('mail_system_sys_signature', $form->getInput('mail_system_sys_signature'));
633
634 ilUtil::sendSuccess($this->lng->txt('saved_successfully'), true);
635 $this->ctrl->redirect($this, 'showExternalSettingsForm');
636 }
637
641 public static function _goto($a_target)
642 {
643 global $DIC;
644
645 $mail = new ilMail($DIC->user()->getId());
646
647 if ($DIC->rbac()->system()->checkAccess('internal_mail', $mail->getMailObjectReferenceId())) {
648 ilUtil::redirect('ilias.php?baseClass=ilMailGUI');
649 } else {
650 if ($DIC->access()->checkAccess('read', '', ROOT_FOLDER_ID)) {
651 $_GET['cmd'] = 'frameset';
652 $_GET['target'] = '';
653 $_GET['ref_id'] = ROOT_FOLDER_ID;
654 $_GET['baseClass'] = 'ilRepositoryGUI';
656 sprintf(
657 $DIC->language()->txt('msg_no_perm_read_item'),
659 ),
660 true
661 );
662
663 include 'ilias.php';
664 exit();
665 }
666 }
667
668 $DIC['ilErr']->raiseError($DIC->language()->txt('msg_no_perm_read'), $DIC['ilErr']->FATAL);
669 }
670}
user()
Definition: user.php:4
exit
Definition: backend.php:16
$_GET["client_id"]
An exception for terminatinating execution or to throw for unit testing.
const USER_FOLDER_ID
Class ilObjUserFolder.
static addFieldsToForm($a_form_id, ilPropertyFormGUI $a_form, ilObjectGUI $a_parent_gui)
This class represents a checkbox property in a property form.
This class represents a email property in a property form.
This class represents a section header in a property form.
Class ilIncomingMailInputGUI.
static getInstance()
Factory.
Class ilMailTemplateGUI.
const MAIL_SUBJECT_PREFIX
Class ilManualPlaceholderInputGUI.
This class represents a number property in a property form.
viewObject()
list childs of current object@access public
__construct($a_data, $a_id, $a_call_by_reference)
ilObjMailGUI constructor.
saveObject()
save object@access public
const SETTINGS_SUB_TAB_ID_GENERAL
populateGeneralSettingsForm(ilPropertyFormGUI $form)
const SETTINGS_SUB_TAB_ID_EXTERNAL
getAdminTabs()
administration tabs show only permissions and trash folder
static _goto($a_target)
sendTestMail($is_manual_mail=false)
showExternalSettingsFormObject(ilPropertyFormGUI $form=null)
getTabs()
get tabs abstract method.@abstract overwrite in derived GUI class of your object type @access public
buildSettingsSubTabs($activeSubTab)
showGeneralSettingsForm(ilPropertyFormGUI $form=null)
executeCommand()
execute command
populateExternalSettingsForm(ilPropertyFormGUI $form)
Class ilObjectGUI Basic methods of all Output classes.
prepareOutput($a_show_subobjects=true)
prepare output
static _lookupObjId($a_id)
static _lookupTitle($a_id)
lookup object title
This class represents a password property in a property form.
New PermissionGUI (extends from old ilPermission2GUI) RBAC related output.
This class represents a property form user interface.
This class represents a selection list property in a property form.
This class represents a text area property in a property form.
This class represents a text property in a property form.
static redirect($a_script)
static sendFailure($a_info="", $a_keep=false)
Send Failure Message to Screen.
$password
Definition: cron.php:14
$key
Definition: croninfo.php:18
$GLOBALS['JPEG_Segment_Names']
Global Variable: XMP_tag_captions.
redirection script todo: (a better solution should control the processing via a xml file)
$type
if(isset($_POST['submit'])) $form
global $DIC
Definition: saml.php:7
settings()
Definition: settings.php:2