ILIAS  release_5-3 Revision v5.3.23-19-g915713cf615
class.ilObjFileAccessSettingsGUI.php
Go to the documentation of this file.
1<?php
2/*
3 +-----------------------------------------------------------------------------+
4 | ILIAS open source |
5 +-----------------------------------------------------------------------------+
6 | Copyright (c) 1998-2001 ILIAS open source, University of Cologne |
7 | |
8 | This program is free software; you can redistribute it and/or |
9 | modify it under the terms of the GNU General Public License |
10 | as published by the Free Software Foundation; either version 2 |
11 | of the License, or (at your option) any later version. |
12 | |
13 | This program is distributed in the hope that it will be useful, |
14 | but WITHOUT ANY WARRANTY; without even the implied warranty of |
15 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
16 | GNU General Public License for more details. |
17 | |
18 | You should have received a copy of the GNU General Public License |
19 | along with this program; if not, write to the Free Software |
20 | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. |
21 +-----------------------------------------------------------------------------+
22*/
23include_once "./Services/Object/classes/class.ilObjectGUI.php";
24
38{
39 const INSTALL_README_PATH = '/docs/configuration/install.md';
40 const CMD_EDIT_DOWNLOADING_SETTINGS = 'editDownloadingSettings';
44 protected $folderSettings;
49
50
56 public function __construct($a_data, $a_id, $a_call_by_reference)
57 {
58 $this->type = "facs";
59 parent::__construct($a_data, $a_id, $a_call_by_reference, false);
60 $this->folderSettings = new ilSetting('fold');
61
62 // Load the disk quota settings object
63 require_once 'Services/WebDAV/classes/class.ilObjDiskQuotaSettings.php';
64 $this->disk_quota_obj = new ilObjDiskQuotaSettings($a_id, $a_call_by_reference);
65 $this->disk_quota_obj->read();
66 }
67
68
75 public function executeCommand()
76 {
77 global $DIC;
78 $ilAccess = $DIC['ilAccess'];
79 $ilias = $DIC['ilias'];
80 $lng = $DIC['lng'];
81
82 $lng->loadLanguageModule("file");
83
84 $next_class = $this->ctrl->getNextClass($this);
85 $cmd = $this->ctrl->getCmd();
86
87 $this->prepareOutput();
88
89 if (!$ilAccess->checkAccess('read', '', $this->object->getRefId())) {
90 $ilias->raiseError($lng->txt('no_permission'), $ilias->error_obj->MESSAGE);
91 }
92
93 switch ($next_class) {
94 case 'ilpermissiongui':
95 $this->tabs_gui->setTabActive('perm_settings');
96 include_once("Services/AccessControl/classes/class.ilPermissionGUI.php");
97 $perm_gui = new ilPermissionGUI($this);
98 $ret =&$this->ctrl->forwardCommand($perm_gui);
99 break;
100
101 case 'ilfmsettingsgui':
102 $this->tabs_gui->setTabActive('fm_settings_tab');
103 include_once './Services/WebServices/FileManager/classes/class.ilFMSettingsGUI.php';
104 $fmg = new ilFMSettingsGUI($this);
105 $this->ctrl->forwardCommand($fmg);
106 break;
107
108 default:
109 if (!$cmd || $cmd == 'view') {
111 }
112
113 $this->$cmd();
114 break;
115 }
116
117 return true;
118 }
119
120
127 public function getAdminTabs()
128 {
129 global $DIC;
130 $rbacsystem = $DIC['rbacsystem'];
131
132 $GLOBALS['DIC']['lng']->loadLanguageModule('fm');
133
134 if ($rbacsystem->checkAccess("visible,read", $this->object->getRefId())) {
135 $this->tabs_gui->addTarget(
136 'downloading_settings',
137 $this->ctrl->getLinkTarget($this, self::CMD_EDIT_DOWNLOADING_SETTINGS),
138 array(self::CMD_EDIT_DOWNLOADING_SETTINGS, "view")
139 );
140
141 $this->tabs_gui->addTarget(
142 'upload_settings',
143 $this->ctrl->getLinkTarget($this, "editUploadSettings"),
144 array("editUploadSettings", "view")
145 );
146
147 $this->tabs_gui->addTarget(
148 'preview_settings',
149 $this->ctrl->getLinkTarget($this, "editPreviewSettings"),
150 array("editPreviewSettings", "view")
151 );
152
153 $this->tabs_gui->addTarget('webdav', $this->ctrl->getLinkTarget($this, "editWebDAVSettings"), array("editWebDAVSettings", "view"));
154
155 $this->tabs_gui->addTarget(
156 'fm_settings_tab',
157 $this->ctrl->getLinkTargetByClass('ilFMSettingsGUI', 'settings'),
158 array(),
159 'ilfmsettingsgui'
160 );
161
162 $this->tabs_gui->addTarget("disk_quota", $this->ctrl->getLinkTarget($this, "editDiskQuotaSettings"), array("editDiskQuota", "view"));
163 }
164 if ($rbacsystem->checkAccess('edit_permission', $this->object->getRefId())) {
165 $this->tabs_gui->addTarget("perm_settings", $this->ctrl->getLinkTargetByClass('ilpermissiongui', "perm"), array(), 'ilpermissiongui');
166 }
167 }
168
169
173 protected function initDownloadingSettingsForm()
174 {
175 global $DIC;
176 $ilCtrl = $DIC['ilCtrl'];
177 $lng = $DIC['lng'];
178
179 require_once("./Services/Form/classes/class.ilPropertyFormGUI.php");
180 require_once("./Services/Form/classes/class.ilCheckboxInputGUI.php");
181 require_once("./Services/Form/classes/class.ilRadioGroupInputGUI.php");
182 require_once("./Services/Form/classes/class.ilRadioOption.php");
183 require_once("./Services/Form/classes/class.ilTextAreaInputGUI.php");
184
185 $form = new ilPropertyFormGUI();
186 $form->setFormAction($ilCtrl->getFormAction($this));
187 $form->setTitle($lng->txt("settings"));
188
189 // Backwards compatibility with ILIAS 3.9: Use the name of the
190 // uploaded file as the filename for the downloaded file instead
191 // of the title of the file object.
192 $dl_prop = new ilCheckboxInputGUI($lng->txt("download_with_uploaded_filename"), "download_with_uploaded_filename");
193 $dl_prop->setValue('1');
194 // default value should reflect previous behaviour (-> 0)
195 $dl_prop->setChecked($this->object->isDownloadWithUploadedFilename() == 1);
196 $dl_prop->setInfo($lng->txt('download_with_uploaded_filename_info'));
197 $form->addItem($dl_prop);
198
199 // Show download action for folder
200 $dl_prop = new ilCheckboxInputGUI($lng->txt("enable_download_folder"), "enable_download_folder");
201 $dl_prop->setValue('1');
202 // default value should reflect previous behaviour (-> 0)
203 $dl_prop->setChecked($this->folderSettings->get("enable_download_folder", 0) == 1);
204 $dl_prop->setInfo($lng->txt('enable_download_folder_info'));
205 $form->addItem($dl_prop);
206
207 // multi download
208 $dl_prop = new ilCheckboxInputGUI($lng->txt("enable_multi_download"), "enable_multi_download");
209 $dl_prop->setValue('1');
210 // default value should reflect previous behaviour (-> 0)
211 $dl_prop->setChecked($this->folderSettings->get("enable_multi_download", 0) == 1);
212 $dl_prop->setInfo($lng->txt('enable_multi_download_info'));
213 $form->addItem($dl_prop);
214
215 // background task
216
217 $lng->loadLanguageModule("bgtask");
218 $dl_bg = new ilCheckboxInputGUI($lng->txt("bgtask_setting"), "enable_bg");
219 $dl_bg->setInfo($lng->txt("bgtask_setting_info"));
220 $dl_bg->setChecked($this->folderSettings->get("bgtask_download", 0));
221 $form->addItem($dl_bg);
222
223 $dl_bgtc = new ilNumberInputGUI($lng->txt("bgtask_setting_threshold_count"), "bg_tcount");
224 $dl_bgtc->setInfo($lng->txt("bgtask_setting_threshold_count_info"));
225 $dl_bgtc->setRequired(true);
226 $dl_bgtc->setSize(10);
227 $dl_bgtc->setMinValue(1);
228 $dl_bgtc->setSuffix($lng->txt("files"));
229 $dl_bgtc->setValue($this->folderSettings->get("bgtask_download_tcount", null));
230 $dl_bg->addSubItem($dl_bgtc);
231
232 $dl_bgts = new ilNumberInputGUI($lng->txt("bgtask_setting_threshold_size"), "bg_tsize");
233 $dl_bgts->setInfo($lng->txt("bgtask_setting_threshold_size_info"));
234 $dl_bgts->setRequired(true);
235 $dl_bgts->setSize(10);
236 $dl_bgts->setMinValue(1);
237 $dl_bgts->setSuffix($lng->txt("lang_size_mb"));
238 $dl_bgts->setValue($this->folderSettings->get("bgtask_download_tsize", null));
239 $dl_bg->addSubItem($dl_bgts);
240
241 $dl_bgl = new ilNumberInputGUI($lng->txt("bgtask_setting_limit"), "bg_limit");
242 $dl_bgl->setInfo($lng->txt("bgtask_setting_limit_info"));
243 $dl_bgl->setRequired(true);
244 $dl_bgl->setSize(10);
245 $dl_bgl->setMinValue(1);
246 $dl_bgl->setSuffix($lng->txt("lang_size_mb"));
247 $dl_bgl->setValue($this->folderSettings->get("bgtask_download_limit", null));
248 $dl_bg->addSubItem($dl_bgl);
249
250 // Inline file extensions
251 $tai_prop = new ilTextAreaInputGUI($lng->txt('inline_file_extensions'), 'inline_file_extensions');
252 $tai_prop->setValue($this->object->getInlineFileExtensions());
253 $tai_prop->setInfo($lng->txt('inline_file_extensions_info'));
254 $tai_prop->setCols(80);
255 $tai_prop->setRows(5);
256 $form->addItem($tai_prop);
257
258 // command buttons
259 $form->addCommandButton('saveDownloadingSettings', $lng->txt('save'));
260 $form->addCommandButton('view', $lng->txt('cancel'));
261
262 return $form;
263 }
264
265
269 public function editDownloadingSettings(ilPropertyFormGUI $a_form = null)
270 {
271 global $rbacsystem, $ilErr, $tpl, $lng;
272
273 $this->tabs_gui->setTabActive('downloading_settings');
274
275 if (!$rbacsystem->checkAccess("visible,read", $this->object->getRefId())) {
276 $ilErr->raiseError($lng->txt("no_permission"), $ilErr->WARNING);
277 }
278
279 if (!$a_form) {
280 $a_form = $this->initDownloadingSettingsForm();
281 }
282
283 $tpl->setContent($a_form->getHTML());
284 }
285
286
290 public function saveDownloadingSettings()
291 {
292 global $DIC;
293 $rbacsystem = $DIC['rbacsystem'];
294
295 if (!$rbacsystem->checkAccess("write", $this->object->getRefId())) {
296 ilUtil::sendFailure($DIC->language()->txt("no_permission"), true);
297 $DIC->ctrl()->redirect($this, self::CMD_EDIT_DOWNLOADING_SETTINGS);
298 }
299
301 if ($form->checkInput()) {
302 $this->object->setDownloadWithUploadedFilename(ilUtil::stripSlashes($_POST['download_with_uploaded_filename']));
303 $this->object->setInlineFileExtensions(ilUtil::stripSlashes($_POST['inline_file_extensions']));
304 $this->object->update();
305
306 $this->folderSettings->set("enable_download_folder", $_POST["enable_download_folder"] == 1);
307 $this->folderSettings->set("enable_multi_download", $_POST["enable_multi_download"] == 1);
308
309 $this->folderSettings->set("bgtask_download", (bool) $_POST["enable_bg"]);
310 if ((bool) $_POST["enable_bg"]) {
311 $this->folderSettings->set("bgtask_download_limit", (int) $_POST["bg_limit"]);
312 $this->folderSettings->set("bgtask_download_tcount", (int) $_POST["bg_tcount"]);
313 $this->folderSettings->set("bgtask_download_tsize", (int) $_POST["bg_tsize"]);
314 }
315
316 ilUtil::sendSuccess($DIC->language()->txt('settings_saved'), true);
317 $DIC->ctrl()->redirect($this, self::CMD_EDIT_DOWNLOADING_SETTINGS);
318 }
319
320 $form->setValuesByPost();
322 }
323
324
328 public function editWebDAVSettings()
329 {
330 global $DIC;
331 $rbacsystem = $DIC['rbacsystem'];
332 $ilErr = $DIC['ilErr'];
333 $tpl = $DIC['tpl'];
334 $ilCtrl = $DIC['ilCtrl'];
335 $lng = $DIC['lng'];
336
337 $this->tabs_gui->setTabActive('webdav');
338
339 if (!$rbacsystem->checkAccess("visible,read", $this->object->getRefId())) {
340 $ilErr->raiseError($lng->txt("no_permission"), $ilErr->WARNING);
341 }
342
343 require_once("./Services/Form/classes/class.ilPropertyFormGUI.php");
344 require_once("./Services/Form/classes/class.ilCheckboxInputGUI.php");
345 require_once("./Services/Form/classes/class.ilRadioGroupInputGUI.php");
346 require_once("./Services/Form/classes/class.ilRadioOption.php");
347 require_once("./Services/Form/classes/class.ilTextAreaInputGUI.php");
348 require_once("./Services/WebDAV/classes/class.ilDAVServer.php");
349
350 $form = new ilPropertyFormGUI();
351 $form->setFormAction($ilCtrl->getFormAction($this));
352 $form->setTitle($lng->txt("settings"));
353
354 // Enable webdav
355 $ilDAVServer = ilDAVServer::getInstance();
356 $cb_prop = new ilCheckboxInputGUI($lng->txt("enable_webdav"), "enable_webdav");
357 $cb_prop->setValue('1');
358 $cb_prop->setChecked($this->object->isWebdavEnabled());
359 $cb_prop->setInfo($this->getAdditionalWebDAVInformation());
360 $form->addItem($cb_prop);
361
362 $rgi_prop = new ilRadioGroupInputGUI($lng->txt('webfolder_instructions'), 'custom_webfolder_instructions_choice');
363 $rgi_prop->addOption(new ilRadioOption($lng->txt('use_default_instructions'), 'default'));
364 $rgi_prop->addOption(new ilRadioOption($lng->txt('use_customized_instructions'), 'custom'));
365 $rgi_prop->setValue($this->object->isCustomWebfolderInstructionsEnabled() ? 'custom' : 'default');
366 $form->addItem($rgi_prop);
367 $tai_prop = new ilTextAreaInputGUI('', 'custom_webfolder_instructions');
368 $tai_prop->setValue($this->object->getCustomWebfolderInstructions());
369 $tai_prop->setInfo($lng->txt("webfolder_instructions_info"));
370 $tai_prop->setRows(20);
371 $form->addItem($tai_prop);
372
373 // command buttons
374 $form->addCommandButton('saveWebDAVSettings', $lng->txt('save'));
375 $form->addCommandButton('view', $lng->txt('cancel'));
376
377 $tpl->setContent($form->getHTML());
378 }
379
380
384 public function saveWebDAVSettings()
385 {
386 global $DIC;
387 $rbacsystem = $DIC['rbacsystem'];
388 $ilErr = $DIC['ilErr'];
389 $ilCtrl = $DIC['ilCtrl'];
390 $lng = $DIC['lng'];
391
392 if (!$rbacsystem->checkAccess("write", $this->object->getRefId())) {
393 $ilErr->raiseError($lng->txt("no_permission"), $ilErr->WARNING);
394 }
395
396 $this->object->setWebdavEnabled($_POST['enable_webdav'] == '1');
397 // $this->object->setWebdavActionsVisible($_POST['webdav_actions_visible'] == '1');
398 $this->object->setCustomWebfolderInstructionsEnabled($_POST['custom_webfolder_instructions_choice'] == 'custom');
399 $this->object->setCustomWebfolderInstructions(ilUtil::stripSlashes($_POST['custom_webfolder_instructions'], false));
400 $this->object->update();
401
402 ilUtil::sendInfo($lng->txt('settings_saved'), true);
403 $ilCtrl->redirect($this, "editWebDAVSettings");
404 }
405
407 {
408 global $DIC;
409 $lng = $DIC->language();
410 return $furtherInformation = sprintf($lng->txt('webdav_additional_information'), $this->getInstallationDocsLink());
411 }
412
413 public function getInstallationDocsLink()
414 {
416 }
417
421 public function setTitleAndDescription()
422 {
423 parent::setTitleAndDescription();
424 $this->tpl->setDescription($this->object->getDescription());
425 }
426
427
428 // DISK QUOTA --------------------------------------------------------------
429
430
434 public function addDiskQuotaSubtabs($a_active_subtab)
435 {
436 global $DIC;
437 $ilCtrl = $DIC['ilCtrl'];
438 $ilTabs = $DIC['ilTabs'];
439
440 include_once("./Services/COPage/classes/class.ilPageEditorSettings.php");
441
442 $ilTabs->addSubTabTarget("settings", $ilCtrl->getLinkTarget($this, "editDiskQuotaSettings"), array("editDiskQuotaSettings"));
443
444 require_once 'Services/WebDAV/classes/class.ilDiskQuotaActivationChecker.php';
446 $ilTabs->addSubTabTarget("disk_quota_report", $ilCtrl->getLinkTarget($this, "viewDiskQuotaReport"), array("viewDiskQuotaReport"));
447 }
448
449 $ilTabs->addSubTabTarget(
450 "disk_quota_reminder_mail",
451 $ilCtrl->getLinkTarget($this, "editDiskQuotaMailTemplate"),
452 array("editDiskQuotaMailTemplate")
453 );
454
455 $ilTabs->setSubTabActive($a_active_subtab);
456 }
457
458
462 public function editDiskQuotaSettings()
463 {
464 global $DIC;
465 $rbacsystem = $DIC['rbacsystem'];
466 $ilErr = $DIC['ilErr'];
467 $ilSetting = $DIC['ilSetting'];
468 $tpl = $DIC['tpl'];
469 $lng = $DIC['lng'];
470 $ilCtrl = $DIC['ilCtrl'];
471
472 if (!$rbacsystem->checkAccess("visible,read", $this->object->getRefId())) {
473 $ilErr->raiseError($lng->txt("no_permission"), $ilErr->WARNING);
474 }
475
476 $this->tabs_gui->setTabActive('disk_quota');
477 $this->addDiskQuotaSubtabs('settings');
478
479 require_once("./Services/Form/classes/class.ilPropertyFormGUI.php");
480 require_once("./Services/Form/classes/class.ilCheckboxInputGUI.php");
481 require_once("./Services/Form/classes/class.ilRadioGroupInputGUI.php");
482 require_once("./Services/Form/classes/class.ilRadioOption.php");
483 require_once("./Services/Form/classes/class.ilTextAreaInputGUI.php");
484 require_once("./Services/WebDAV/classes/class.ilDAVServer.php");
485
486 $lng->loadLanguageModule("file");
487
488 $form = new ilPropertyFormGUI();
489 $form->setFormAction($ilCtrl->getFormAction($this));
490 $form->setTitle($lng->txt("settings"));
491
492 include_once "Services/Administration/classes/class.ilAdministrationSettingsFormHandler.php";
494
495 /*
496 // command buttons
497 $form->addCommandButton('saveDiskQuotaSettings', $lng->txt('save'));
498 $form->addCommandButton('editDiskQuotaSettings', $lng->txt('cancel'));
499 */
500
501 $tpl->setContent($form->getHTML());
502 }
503
504
508 public function saveDiskQuotaSettings()
509 {
510 global $DIC;
511 $rbacsystem = $DIC['rbacsystem'];
512 $ilErr = $DIC['ilErr'];
513 $ilCtrl = $DIC['ilCtrl'];
514 $lng = $DIC['lng'];
515
516 if (!$rbacsystem->checkAccess("write", $this->object->getRefId())) {
517 $ilErr->raiseError($lng->txt("no_permission"), $ilErr->WARNING);
518 }
519
520 // ilUtil::sendInfo($lng->txt('settings_saved'),true);
521 $ilCtrl->redirect($this, "editDiskQuotaSettings");
522 }
523
524
529 public function viewDiskQuotaReport()
530 {
531 global $DIC;
532 $rbacsystem = $DIC['rbacsystem'];
533 $ilErr = $DIC['ilErr'];
534 $ilSetting = $DIC['ilSetting'];
535 $lng = $DIC['lng'];
536
537 if (!$rbacsystem->checkAccess("visible,read", $this->object->getRefId())) {
538 $ilErr->raiseError($lng->txt("no_permission"), $ilErr->WARNING);
539 }
540
541 $this->tabs_gui->setTabActive('disk_quota');
542 $this->addDiskQuotaSubtabs('disk_quota_report');
543
544 // nothing to do if disk quota is not active
545 require_once 'Services/WebDAV/classes/class.ilDiskQuotaActivationChecker.php';
547 return;
548 }
549
550 // get the form
551 $this->tpl->addBlockfile('ADM_CONTENT', 'adm_content', 'tpl.disk_quota_report.html', "Services/WebDAV");
552
553 // get the date of the last update
554 require_once("./Services/WebDAV/classes/class.ilDiskQuotaChecker.php");
556 if ($last_update == null) {
557 // nothing to do if disk usage report has not been run
558 $this->tpl->setVariable('LAST_UPDATE_TEXT', $lng->txt('disk_quota_report_not_run_yet'));
559
560 return;
561 } else {
562 $this->tpl->setVariable(
563 'LAST_UPDATE_TEXT',
564 $lng->txt('last_update') . ': ' . ilDatePresentation::formatDate(new ilDateTime($last_update, IL_CAL_DATETIME))
565 );
566 }
567
568 // Filter
569 $_SESSION['quota_usage_filter'] = isset($_POST['usage_filter']) ? $_POST['usage_filter'] : $_SESSION['quota_usage_filter'];
570 if ($_SESSION['quota_usage_filter'] == 0) {
571 $_SESSION['quota_usage_filter'] = 4;
572 }
573 $_SESSION['quota_access_filter'] = isset($_POST['access_filter']) ? $_POST['access_filter'] : $_SESSION['quota_access_filter'];
574 if ($_SESSION['quota_access_filter'] == 0) {
575 $_SESSION['quota_access_filter'] = 1;
576 }
577 $usage_action[1] = $lng->txt('all_users');
578 $usage_action[2] = $lng->txt('filter_users_without_disk_usage');
579 $usage_action[3] = $lng->txt('filter_users_with_disk_usage');
580 $usage_action[4] = $lng->txt('filter_users_with_exceeded_disk_quota');
581 $access_action[1] = $lng->txt('all_users');
582 $access_action[2] = $lng->txt('filter_users_with_access');
583 $access_action[3] = $lng->txt('filter_users_without_access');
584
585 $select_usage_filter = ilUtil::formSelect($_SESSION['quota_usage_filter'], "usage_filter", $usage_action, false, true);
586 $select_access_filter = ilUtil::formSelect($_SESSION['quota_access_filter'], "access_filter", $access_action, false, true);
587
588 $this->tpl->setCurrentBlock("filter");
589 $this->tpl->setVariable("FILTER_TXT_FILTER", $lng->txt('filter'));
590 $this->tpl->setVariable("SELECT_USAGE_FILTER", $select_usage_filter);
591 $this->tpl->setVariable("SELECT_ACCESS_FILTER", $select_access_filter);
592 $this->tpl->setVariable("FILTER_ACTION", $this->ctrl->getLinkTarget($this, 'viewDiskQuotaReport'));
593 $this->tpl->setVariable("FILTER_NAME", 'view');
594 $this->tpl->setVariable("FILTER_VALUE", $lng->txt('apply_filter'));
595 $this->tpl->parseCurrentBlock();
596
597 // load templates for table
598 $a_tpl = new ilTemplate('tpl.table.html', true, true);
599 $a_tpl->addBlockfile("TBL_CONTENT", "tbl_content", "tpl.obj_tbl_rows.html");
600
601 // create table
602 require_once './Services/Table/classes/class.ilTableGUI.php';
603 $tbl = new ilTableGUI(0, false);
604 $tbl->setTitle('');
605
606 // title & header columns
607 $header_vars = array('login', 'firstname', 'lastname', 'email', 'access_until', 'last_login', 'disk_quota', 'disk_usage', 'last_reminder');
608 $tbl->setHeaderNames(array(
609 $lng->txt('login'),
610 $lng->txt('firstname'),
611 $lng->txt('lastname'),
612 $lng->txt('email'),
613 $lng->txt('access_until'),
614 $lng->txt('last_login'),
615 $lng->txt('disk_quota'),
616 $lng->txt('disk_usage'),
617 $lng->txt('last_reminder'),
618 ));
619 $tbl->setHeaderVars($header_vars, $this->ctrl->getParameterArray($this, 'viewDiskQuotaReport', false));
620
621 $tbl->enable("numinfo_header");
622 $tbl->setFormName("cmd");
623 $tbl->setSelectAllCheckbox("id");
624
625 // sorting
626 $tbl->setOrderColumn($_GET["sort_by"]);
627 $tbl->setOrderDirection($_GET["sort_order"]);
628
629 // fetch the data
631 $_SESSION['quota_usage_filter'],
632 $_SESSION['quota_access_filter'],
633 $header_vars[$tbl->getOrderColumn()],
634 $tbl->getOrderDirection()
635 );
636
637 // paging
638 $tbl->setLimit($_GET["limit"]);
639 $tbl->setOffset($_GET["offset"]);
640 $tbl->setMaxCount(count($data));
641
642 // footer
643 $tbl->setFooter("tblfooter", $lng->txt("previous"), $lng->txt("next"));
644
645 // render table
646 $tbl->setTemplate($a_tpl);
647
648 // render rows
649 $count = 0;
650 for ($i = $tbl->getOffset(); $i < count($data) && $i < $tbl->getOffset() + $tbl->getLimit(); $i++) {
651 $row = $data[$i];
652
653 // build columns
654 foreach ($header_vars as $key) {
655 switch ($key) {
656 case 'login':
657 //build link
658 $this->ctrl->setParameterByClass("ilobjusergui", "ref_id", "7");
659 $this->ctrl->setParameterByClass("ilobjusergui", "obj_id", $row["usr_id"]);
660 $link = $this->ctrl->getLinkTargetByClass("ilobjusergui", "view");
661 $tbl_content_cell = '<a href="' . $link . '">' . htmlspecialchars($row[$key]) . '</a>';
662 break;
663 case 'disk_quota':
664 if ($row['role_id'] == SYSTEM_ROLE_ID) {
665 $tbl_content_cell = "<span class=\"smallgreen\">" . $lng->txt('access_unlimited') . '</span>';
666 } else {
667 $tbl_content_cell = ilUtil::formatSize($row[$key], 'short');
668 }
669 break;
670 case 'disk_usage':
671 if ($row['last_update'] == null) {
672 $tbl_content_cell = $lng->txt('unknown');
673 } else {
674 if ($row['disk_usage'] > $row['disk_quota']) {
675 $tbl_content_cell = "<span class=\"smallred\">" . ilUtil::formatSize($row[$key], 'short') . '</span>';
676 } else {
677 $tbl_content_cell = ilUtil::formatSize($row[$key], 'short');
678 }
679 }
680 break;
681 case 'access_until':
682 if (!$row['active']) {
683 $tbl_content_cell = "<span class=\"smallred\">" . $lng->txt('inactive') . '</span>';
684 } else {
685 if ($row['time_limit_unlimited']) {
686 $tbl_content_cell = "<span class=\"smallgreen\">" . $lng->txt('access_unlimited') . '</span>';
687 } else {
688 if ($row['expired']) {
689 $tbl_content_cell = "<span class=\"smallred\">" . $lng->txt('access_expired') . '</span>';
690 } else {
692 }
693 }
694 }
695 break;
696 case 'last_login':
697 case 'last_reminder':
698 if ($row[$key] == null) {
699 $tbl_content_cell = $lng->txt('no_date');
700 } else {
702 }
703 break;
704 default:
705 $tbl_content_cell = htmlspecialchars($row[$key]);
706 }
707
708 $tbl->getTemplateObject()->setCurrentBlock("tbl_content_cell");
709 $tbl->getTemplateObject()->setVariable("TBL_CONTENT_CELL", $tbl_content_cell);
710
711 $tbl->getTemplateObject()->parseCurrentBlock();
712 }
713
714 $tbl->getTemplateObject()->setCurrentBlock("tbl_content_row");
715 $rowcolor = ilUtil::switchColor($count, "tblrow1", "tblrow2");
716 $tbl->getTemplateObject()->setVariable("ROWCOLOR", $rowcolor);
717 $tbl->getTemplateObject()->parseCurrentBlock();
718
719 $count++;
720 }
721 $tbl->render();
722
723 // Add table to page
724 $this->tpl->setVariable("USER_TABLE", $a_tpl->get());
725 }
726
727
728 protected function initDiskQuotaMailTemplateForm()
729 {
730 global $DIC;
731 $lng = $DIC['lng'];
732
733 $lng->loadLanguageModule("meta");
734 $lng->loadLanguageModule("mail");
735
736 include_once "Services/Form/classes/class.ilPropertyFormGUI.php";
737 $form = new ilPropertyFormGUI();
738 $form->setFormAction($this->ctrl->getFormAction($this));
739
740 $form->setTitle($lng->txt("disk_quota_reminder_mail"));
741 $form->setDescription($lng->txt("disk_quota_reminder_mail_desc"));
742
743 foreach ($lng->getInstalledLanguages() as $lang_key) {
744 $lang_def = ($lang_key == $lng->getDefaultLanguage()) ? " (" . $lng->txt("default") . ")" : "";
745
746 $sec = new ilFormSectionHeaderGUI();
747 $sec->setTitle($lng->txt("meta_l_" . $lang_key) . $lang_def);
748 $form->addItem($sec);
749
750 $subj = new ilTextInputGUI($lng->txt("subject"), "subject_" . $lang_key);
751 $subj->setRequired(true);
752 $form->addItem($subj);
753
754 $sal_g = new ilTextInputGUI($lng->txt("mail_salutation_general"), "sal_g_" . $lang_key);
755 $sal_g->setRequired(true);
756 $form->addItem($sal_g);
757
758 $sal_f = new ilTextInputGUI($lng->txt("mail_salutation_female"), "sal_f_" . $lang_key);
759 $sal_f->setRequired(true);
760 $form->addItem($sal_f);
761
762 $sal_m = new ilTextInputGUI($lng->txt("mail_salutation_male"), "sal_m_" . $lang_key);
763 $sal_m->setRequired(true);
764 $form->addItem($sal_m);
765
766 $body = new ilTextAreaInputGUI($lng->txt("message_content"), "body_" . $lang_key);
767 $body->setRequired(true);
768 $body->setRows(10);
769 $form->addItem($body);
770
771 // current values
773 $subj->setValue($amail["subject"]);
774 $sal_g->setValue($amail["sal_g"]);
775 $sal_f->setValue($amail["sal_f"]);
776 $sal_m->setValue($amail["sal_m"]);
777 $body->setValue($amail["body"]);
778 }
779
780 $form->addCommandButton("saveDiskQuotaMailTemplate", $lng->txt("save"));
781 $form->addCommandButton("editDiskQuotaSettings", $lng->txt("cancel"));
782
783 return $form;
784 }
785
786
790 public function editDiskQuotaMailTemplate(ilPropertyFormGUI $a_form = null)
791 {
792 global $DIC;
793 $rbacsystem = $DIC['rbacsystem'];
794 $ilErr = $DIC['ilErr'];
795 $lng = $DIC['lng'];
796
797 if (!$rbacsystem->checkAccess("visible,read", $this->object->getRefId())) {
798 $ilErr->raiseError($lng->txt("no_permission"), $ilErr->WARNING);
799 }
800
801 $this->tabs_gui->setTabActive("disk_quota");
802 $this->addDiskQuotaSubtabs("disk_quota_reminder_mail");
803
804 if (!$a_form) {
805 $a_form = $this->initDiskQuotaMailTemplateForm();
806 }
807
808 $tpl = new ilTemplate("tpl.disk_quota_reminder_mail.html", true, true, "Services/WebDAV");
809 $tpl->setVariable("TXT_USE_PLACEHOLDERS", $lng->txt("mail_nacc_use_placeholder"));
810 $tpl->setVariable("TXT_MAIL_SALUTATION", $lng->txt("mail_nacc_salutation"));
811 $tpl->setVariable("TXT_FIRST_NAME", $lng->txt("firstname"));
812 $tpl->setVariable("TXT_LAST_NAME", $lng->txt("lastname"));
813 $tpl->setVariable("TXT_EMAIL", $lng->txt("email"));
814 $tpl->setVariable("TXT_LOGIN", $lng->txt("mail_nacc_login"));
815 $tpl->setVariable("TXT_DISK_QUOTA", $lng->txt("disk_quota"));
816 $tpl->setVariable("TXT_DISK_USAGE", $lng->txt("disk_usage"));
817 $tpl->setVariable("TXT_DISK_USAGE_DETAILS", $lng->txt("disk_usage_details"));
818 $tpl->setVariable("TXT_ADMIN_MAIL", $lng->txt("mail_nacc_admin_mail"));
819 $tpl->setVariable("TXT_ILIAS_URL", $lng->txt("mail_nacc_ilias_url"));
820 $tpl->setVariable("TXT_CLIENT_NAME", $lng->txt("mail_nacc_client_name"));
821
822 include_once "Services/UIComponent/Panel/classes/class.ilPanelGUI.php";
825 $legend->setHeading($lng->txt("mail_nacc_use_placeholder"));
826 $legend->setBody($tpl->get());
827
828 $this->tpl->setContent($a_form->getHTML() . $legend->getHTML());
829 }
830
831
833 {
834 global $DIC;
835 $lng = $DIC['lng'];
836
838 if ($form->checkInput()) {
839 foreach ($lng->getInstalledLanguages() as $lang_key) {
840 $this->disk_quota_obj->_writeReminderMailTemplate(
841 $lang_key,
842 $form->getInput("subject_" . $lang_key),
843 $form->getInput("sal_g_" . $lang_key),
844 $form->getInput("sal_f_" . $lang_key),
845 $form->getInput("sal_m_" . $lang_key),
846 $form->getInput("body_" . $lang_key)
847 );
848 }
849
850 ilUtil::sendSuccess($this->lng->txt("msg_obj_modified"), true);
851 $this->ctrl->redirect($this, "editDiskQuotaMailTemplate");
852 }
853
854 $form->setValuesByPost();
856 }
857
858
862 private function initUploadSettingsForm()
863 {
864 global $DIC;
865 $ilCtrl = $DIC['ilCtrl'];
866 $lng = $DIC['lng'];
867
868 require_once("./Services/Form/classes/class.ilPropertyFormGUI.php");
869 $form = new ilPropertyFormGUI();
870 $form->setFormAction($ilCtrl->getFormAction($this));
871 $form->setTitle($lng->txt("settings"));
872
873 require_once("Services/FileUpload/classes/class.ilFileUploadSettings.php");
874
875 // drag and drop file upload
876 $chk_enabled = new ilCheckboxInputGUI($lng->txt("enable_dnd_upload"), "enable_dnd_upload");
877 $chk_enabled->setValue('1');
878 $chk_enabled->setChecked(ilFileUploadSettings::isDragAndDropUploadEnabled());
879 $chk_enabled->setInfo($lng->txt('enable_dnd_upload_info'));
880 $form->addItem($chk_enabled);
881
882 // drag and drop file upload in repository
883 $chk_repo = new ilCheckboxInputGUI($lng->txt("enable_repository_dnd_upload"), "enable_repository_dnd_upload");
884 $chk_repo->setValue('1');
886 $chk_repo->setInfo($lng->txt('enable_repository_dnd_upload_info'));
887 $chk_enabled->addSubItem($chk_repo);
888
889 // concurrent uploads
890 $num_prop = new ilNumberInputGUI($lng->txt("concurrent_uploads"), "concurrent_uploads");
891 $num_prop->setDecimals(0);
892 $num_prop->setMinValue(1);
893 $num_prop->setMinvalueShouldBeGreater(false);
894 $num_prop->setMaxValue(ilFileUploadSettings::CONCURRENT_UPLOADS_MAX);
895 $num_prop->setMaxvalueShouldBeLess(false);
896 $num_prop->setMaxLength(5);
897 $num_prop->setSize(10);
898 $num_prop->setValue(ilFileUploadSettings::getConcurrentUploads());
899 $num_prop->setInfo($lng->txt('concurrent_uploads_info'));
900 $chk_enabled->addSubItem($num_prop);
901
902
903 include_once("./Services/Utilities/classes/class.ilFileUtils.php");
904
905 // default white list
906 $ne = new ilNonEditableValueGUI($this->lng->txt("file_suffix_default_white"), "");
907 $ne->setValue(implode(", ", ilFileUtils::getDefaultValidExtensionWhiteList()));
908 $ne->setInfo($this->lng->txt("file_suffix_default_white_info"));
909 $form->addItem($ne);
910
911 // file suffix custom black list
912 $ta = new ilTextAreaInputGUI($this->lng->txt("file_suffix_custom_black"), "suffix_repl_additional");
913 $ta->setInfo($this->lng->txt("file_suffix_custom_black_info"));
914 $ta->setRows(5);
915 $form->addItem($ta);
916
917 // file suffix custom white list
918 $ta = new ilTextAreaInputGUI($this->lng->txt("file_suffix_custom_white"), "suffix_custom_white_list");
919 $ta->setInfo($this->lng->txt("file_suffix_custom_white_info"));
920 $ta->setRows(5);
921 $form->addItem($ta);
922
923 // resulting overall white list
924 $ne = new ilNonEditableValueGUI($this->lng->txt("file_suffix_overall_white"), "");
925 $ne->setValue(implode(", ", ilFileUtils::getValidExtensions()));
926 $ne->setInfo($this->lng->txt("file_suffix_overall_white_info"));
927 $form->addItem($ne);
928
929 // command buttons
930 $form->addCommandButton('saveUploadSettings', $lng->txt('save'));
931 $form->addCommandButton('view', $lng->txt('cancel'));
932
933 return $form;
934 }
935
936
940 public function editUploadSettings()
941 {
942 global $DIC;
943 $rbacsystem = $DIC['rbacsystem'];
944 $ilErr = $DIC['ilErr'];
945 $tpl = $DIC['tpl'];
946 $lng = $DIC['lng'];
947 $ilSetting = $DIC['ilSetting'];
948
949 $this->tabs_gui->setTabActive('upload_settings');
950
951 if (!$rbacsystem->checkAccess("visible,read", $this->object->getRefId())) {
952 $ilErr->raiseError($lng->txt("no_permission"), $ilErr->WARNING);
953 }
954
955 // get form
956 $form = $this->initUploadSettingsForm();
957
958 require_once("Services/FileUpload/classes/class.ilFileUploadSettings.php");
959
960 // set current values
961 $val = array();
962 $val["enable_dnd_upload"] = ilFileUploadSettings::isDragAndDropUploadEnabled();
963 $val["enable_repository_dnd_upload"] = ilFileUploadSettings::isRepositoryDragAndDropUploadEnabled();
964 $val["concurrent_uploads"] = ilFileUploadSettings::getConcurrentUploads();
965 $val["suffix_repl_additional"] = $ilSetting->get("suffix_repl_additional");
966 $val["suffix_custom_white_list"] = $ilSetting->get("suffix_custom_white_list");
967 $form->setValuesByArray($val);
968
969 // set content
970 $tpl->setContent($form->getHTML());
971 }
972
973
977 public function saveUploadSettings()
978 {
979 global $DIC;
980 $rbacsystem = $DIC['rbacsystem'];
981 $ilErr = $DIC['ilErr'];
982 $ilCtrl = $DIC['ilCtrl'];
983 $lng = $DIC['lng'];
984 $tpl = $DIC['tpl'];
985 $ilSetting = $DIC['ilSetting'];
986
987 if (!$rbacsystem->checkAccess("write", $this->object->getRefId())) {
988 $ilErr->raiseError($lng->txt("no_permission"), $ilErr->WARNING);
989 }
990
991 // get form
992 $form = $this->initUploadSettingsForm();
993 if ($form->checkInput()) {
994 require_once("Services/FileUpload/classes/class.ilFileUploadSettings.php");
996 ilFileUploadSettings::setRepositoryDragAndDropUploadEnabled($_POST["enable_repository_dnd_upload"] == 1);
998
999 // file suffic replacements
1000 $ilSetting->set("suffix_repl_additional", $_POST["suffix_repl_additional"]);
1001 $ilSetting->set("suffix_custom_white_list", $_POST["suffix_custom_white_list"]);
1002
1003 ilUtil::sendSuccess($lng->txt('settings_saved'), true);
1004 $ilCtrl->redirect($this, "editUploadSettings");
1005 } else {
1006 $form->setValuesByPost();
1007 $tpl->setContent($form->getHTML());
1008 }
1009 }
1010
1011
1015 private function initPreviewSettingsForm()
1016 {
1017 global $DIC;
1018 $ilCtrl = $DIC['ilCtrl'];
1019 $lng = $DIC['lng'];
1020
1021 require_once("./Services/Form/classes/class.ilPropertyFormGUI.php");
1022 $form = new ilPropertyFormGUI();
1023 $form->setFormAction($ilCtrl->getFormAction($this));
1024 $form->setTitle($lng->txt("settings"));
1025
1026 require_once("Services/Preview/classes/class.ilPreviewSettings.php");
1027
1028 // drag and drop file upload in repository
1029 $chk_prop = new ilCheckboxInputGUI($lng->txt("enable_preview"), "enable_preview");
1030 $chk_prop->setValue('1');
1031 $chk_prop->setChecked(ilPreviewSettings::isPreviewEnabled());
1032 $chk_prop->setInfo($lng->txt('enable_preview_info'));
1033 $form->addItem($chk_prop);
1034
1035 $num_prop = new ilNumberInputGUI($lng->txt("max_previews_per_object"), "max_previews_per_object");
1036 $num_prop->setDecimals(0);
1037 $num_prop->setMinValue(1);
1038 $num_prop->setMinvalueShouldBeGreater(false);
1039 $num_prop->setMaxValue(ilPreviewSettings::MAX_PREVIEWS_MAX);
1040 $num_prop->setMaxvalueShouldBeLess(false);
1041 $num_prop->setMaxLength(5);
1042 $num_prop->setSize(10);
1043 $num_prop->setValue(ilPreviewSettings::getMaximumPreviews());
1044 $num_prop->setInfo($lng->txt('max_previews_per_object_info'));
1045 $form->addItem($num_prop);
1046
1047 // command buttons
1048 $form->addCommandButton('savePreviewSettings', $lng->txt('save'));
1049 $form->addCommandButton('view', $lng->txt('cancel'));
1050
1051 return $form;
1052 }
1053
1054
1058 public function editPreviewSettings()
1059 {
1060 global $DIC;
1061 $rbacsystem = $DIC['rbacsystem'];
1062 $ilErr = $DIC['ilErr'];
1063 $tpl = $DIC['tpl'];
1064 $lng = $DIC['lng'];
1065
1066 $this->tabs_gui->setTabActive('preview_settings');
1067
1068 if (!$rbacsystem->checkAccess("visible,read", $this->object->getRefId())) {
1069 $ilErr->raiseError($lng->txt("no_permission"), $ilErr->WARNING);
1070 }
1071
1072 // set warning if ghostscript not installed
1073 include_once("./Services/Preview/classes/class.ilGhostscriptRenderer.php");
1075 ilUtil::sendInfo($lng->txt("ghostscript_not_configured"));
1076 }
1077
1078 // get form
1079 $form = $this->initPreviewSettingsForm();
1080
1081 // set current values
1082 require_once("Services/Preview/classes/class.ilPreviewSettings.php");
1083
1084 $val = array();
1085 $val["enable_preview"] = ilPreviewSettings::isPreviewEnabled();
1086 $val["max_previews_per_object"] = ilPreviewSettings::getMaximumPreviews();
1087 $form->setValuesByArray($val);
1088
1089 $html = $form->getHTML();
1090
1091 // build renderer HTML
1092 require_once("Services/Preview/classes/class.ilRendererFactory.php");
1093 require_once("Services/Preview/classes/class.ilRendererTableGUI.php");
1094
1095 $renderers = ilRendererFactory::getRenderers();
1096
1097 $table = new ilRendererTableGUI($this, array("editPreviewSettings", "view"));
1098 $table->setMaxCount(sizeof($renderers));
1099 $table->setData($renderers);
1100
1101 $html .= "<br/>" . $table->getHTML();
1102
1103 // set content
1104 $tpl->setContent($html);
1105 }
1106
1107
1111 public function savePreviewSettings()
1112 {
1113 global $DIC;
1114 $rbacsystem = $DIC['rbacsystem'];
1115 $ilErr = $DIC['ilErr'];
1116 $ilCtrl = $DIC['ilCtrl'];
1117 $tpl = $DIC['tpl'];
1118 $lng = $DIC['lng'];
1119
1120 $this->tabs_gui->setTabActive('preview_settings');
1121
1122 if (!$rbacsystem->checkAccess("write", $this->object->getRefId())) {
1123 $ilErr->raiseError($lng->txt("no_permission"), $ilErr->WARNING);
1124 }
1125
1126 // get form
1127 $form = $this->initPreviewSettingsForm();
1128 if ($form->checkInput()) {
1129 require_once("Services/Preview/classes/class.ilPreviewSettings.php");
1130 ilPreviewSettings::setPreviewEnabled($_POST["enable_preview"] == 1);
1131 ilPreviewSettings::setMaximumPreviews($_POST["max_previews_per_object"]);
1132
1133 ilUtil::sendSuccess($lng->txt('settings_saved'), true);
1134 $ilCtrl->redirect($this, "editPreviewSettings");
1135 } else {
1136 $form->setValuesByPost();
1137 $tpl->setContent($form->getHTML());
1138 }
1139 }
1140
1141
1142 public function addToExternalSettingsForm($a_form_id)
1143 {
1144 global $DIC;
1145 $ilSetting = $DIC['ilSetting'];
1146
1147 switch ($a_form_id) {
1149
1150 $fields = array('file_suffix_repl' => $ilSetting->get("suffix_repl_additional"));
1151
1152 return array(array("editUploadSettings", $fields));
1153 }
1154 }
1155}
sprintf('%.4f', $callTime)
$_GET["client_id"]
$_POST["username"]
$_SESSION["AccountId"]
An exception for terminatinating execution or to throw for unit testing.
const IL_CAL_DATETIME
static addFieldsToForm($a_form_id, ilPropertyFormGUI $a_form, ilObjectGUI $a_parent_gui)
This class represents a checkbox property in a property form.
static getInstance()
Get singelton instance.
static formatDate(ilDateTime $date, $a_skip_day=false, $a_include_wd=false)
Format a date @access public.
@classDescription Date and time handling
static _lookupDiskUsageReportLastUpdate()
Returns the SQL datetime of the last update of the disk usage report.
static _fetchDiskQuotaReport($a_usage_filter=3, $a_access_filter=1, $a_order_column='disk_usage', $a_order_by='desc')
Reads disk quota/disk usage report of the user accounts.
File manager settings.
static setRepositoryDragAndDropUploadEnabled($newValue)
Sets whether drag and drop file upload in the repository is enabled.
static isRepositoryDragAndDropUploadEnabled()
Gets whether drag and drop file upload in the repository is enabled.
static isDragAndDropUploadEnabled()
Gets whether drag and drop file upload is enabled.
static setConcurrentUploads($newValue)
Sets the number of files that can be uploaded at the same time.
static setDragAndDropUploadEnabled($newValue)
Sets whether drag and drop file upload is enabled.
static getConcurrentUploads()
Gets the number of files that can be uploaded at the same time.
static getDefaultValidExtensionWhiteList()
Valid extensions.
static getValidExtensions()
Valid extensions.
This class represents a section header in a property form.
static isGhostscriptInstalled()
Determines whether Ghostscript is installed.
This class represents a non editable value in a property form.
This class represents a number property in a property form.
static _lookupReminderMailTemplate($a_lang)
Looks up the mail template for the specified language.
addDiskQuotaSubtabs($a_active_subtab)
Add disk quota subtabs.
setTitleAndDescription()
called by prepare output
initPreviewSettingsForm()
Initializes the preview settings form.
initUploadSettingsForm()
Initializes the upload settings form.
editDownloadingSettings(ilPropertyFormGUI $a_form=null)
Edit settings.
saveDiskQuotaSettings()
Save disk quota settings.
editDiskQuotaSettings()
Edit disk quota settings.
viewDiskQuotaReport()
The disk quota report list shows user accounts, their disk quota and their disk usage,...
editDiskQuotaMailTemplate(ilPropertyFormGUI $a_form=null)
Edit disk quota settings.
__construct($a_data, $a_id, $a_call_by_reference)
Constructor.
Class ilObjectGUI Basic methods of all Output classes.
prepareOutput($a_show_subobjects=true)
prepare output
const HEADING_STYLE_BLOCK
static getInstance()
Get instance.
New PermissionGUI (extends from old ilPermission2GUI) RBAC related output.
static isPreviewEnabled()
Gets whether the preview functionality is enabled.
static setMaximumPreviews($a_value)
Sets the maximum number of preview pictures per object.
static getMaximumPreviews()
Gets the maximum number of preview pictures per object.
static setPreviewEnabled($a_value)
Sets whether the preview functionality is enabled.
This class represents a property form user interface.
This class represents a property in a property form.
This class represents an option in a radio group.
static getRenderers()
Gets an array containing all available preview renderers.
Displays an overview of all loaded preview renderers.
ILIAS Setting Class.
Class ilTableGUI.
special template class to simplify handling of ITX/PEAR
This class represents a text area property in a property form.
This class represents a text property in a property form.
static sendSuccess($a_info="", $a_keep=false)
Send Success Message to Screen.
static sendFailure($a_info="", $a_keep=false)
Send Failure Message to Screen.
static _getHttpPath()
static switchColor($a_num, $a_css1, $a_css2)
switches style sheets for each even $a_num (used for changing colors of different result rows)
static formatSize($size, $a_mode='short', $a_lng=null)
Returns the specified file size value in a human friendly form.
static stripSlashes($a_str, $a_strip_html=true, $a_allow="")
strip slashes if magic qoutes is enabled
static formSelect( $selected, $varname, $options, $multiple=false, $direct_text=false, $size="0", $style_class="", $attribs="", $disabled=false)
Builds a select form field with options and shows the selected option first.
static sendInfo($a_info="", $a_keep=false)
Send Info Message to Screen.
$key
Definition: croninfo.php:18
$i
Definition: disco.tpl.php:19
$html
Definition: example_001.php:87
$tbl
Definition: example_048.php:81
$GLOBALS['loaded']
Global hash that tracks already loaded includes.
global $ilCtrl
Definition: ilias.php:18
$ret
Definition: parser.php:6
global $ilSetting
Definition: privfeed.php:17
if(empty($password)) $table
Definition: pwgen.php:24
if(isset($_POST['submit'])) $form
global $DIC
Definition: saml.php:7