19declare(strict_types=1);
29 public function saveGeneral():
void
32 $settingsForm = $formFactory->getSettingsForm($this->obj_service, $this->gui->getObject());
34 if (!$settingsForm->checkInput()) {
35 $settingsForm->setValuesByPost();
38 $this->gui->getObject()->setTitle($settingsForm->getInput(
'title'));
39 $this->gui->getObject()->setDescription($settingsForm->getInput(
'desc'));
42 $period = $settingsForm->getItemByPostVar(
'access_period');
43 if ($period->getStart() && $period->getEnd()) {
45 $this->gui->getObject()->setAccessBegin($period->getStart()->get(
IL_CAL_UNIX));
46 $this->gui->getObject()->setAccessEnd($period->getEnd()->get(
IL_CAL_UNIX));
47 $this->gui->getObject()->setAccessVisibility((
int) $settingsForm->getInput(
'access_visibility'));
52 $this->gui->getObject()->update();
53 $this->obj_service->commonSettings()->legacyForm($settingsForm, $this->gui->getObject())->saveTileImage();
56 $requestSettings = $room->getSettings();
59 $requestSettings[
'object_id'] = $this->gui->getObject()->getId();
62 foreach ($requestSettings as $setting => &$value) {
63 if ($settingsForm->getItemByPostVar($setting) !==
null) {
64 $value = $settingsForm->getInput($setting);
68 $room->saveSettings($requestSettings);
70 $this->mainTpl->setOnScreenMessage(
'success', $this->ilLng->txt(
'saved_successfully'),
true);
82 $chatSettings =
new ilSetting(
'chatroom');
83 if (!$chatSettings->get(
'chat_enabled',
'0')) {
84 $this->mainTpl->setOnScreenMessage(
'info', $this->ilLng->txt(
'server_disabled'),
true);
87 $this->gui->switchToVisibleMode();
94 $settingsForm = $formFactory->getSettingsForm($this->obj_service, $this->gui->getObject());
97 'title' => $this->gui->getObject()->getTitle(),
98 'desc' => $this->gui->getObject()->getDescription(),
100 'start' => $this->gui->getObject()->getAccessBegin() ? (
new ilDateTime(
101 $this->gui->getObject()->getAccessBegin(),
104 'end' => $this->gui->getObject()->getAccessEnd() ? (
new ilDateTime(
105 $this->gui->getObject()->getAccessEnd(),
109 'access_visibility' => (bool) $this->gui->getObject()->getAccessVisibility()
115 array_merge(
$settings, $room->getSettings())
122 $settingsForm->setTitle($this->ilLng->txt(
'settings_title'));
123 $settingsForm->addCommandButton(
'settings-saveGeneral', $this->ilLng->txt(
'save'));
124 $settingsForm->setFormAction($this->
ilCtrl->
getFormAction($this->gui,
'settings-saveGeneral'));
126 $this->mainTpl->setVariable(
'ADM_CONTENT', $settingsForm->getHTML());
Class ilChatroomGUIHandler.
Class ilChatroomSettingsGUI.
executeDefault(string $requestedMethod)
general(ilPropertyFormGUI $settingsForm=null)
static checkUserPermissions($permissions, int $ref_id, bool $send_info=true)
Checks user permissions by given array and ref_id.
static byObjectId(int $object_id)
Class ilCtrl provides processing control methods.
redirectByClass( $a_class, string $a_cmd=null, string $a_anchor=null, bool $is_async=false)
@inheritDoc
redirect(object $a_gui_obj, string $a_cmd=null, string $a_anchor=null, bool $is_async=false)
@inheritDoc
getFormAction(object $a_gui_obj, string $a_fallback_cmd=null, string $a_anchor=null, bool $is_async=false, bool $has_xml_style=false)
@inheritDoc
setParameterByClass(string $a_class, string $a_parameter, $a_value)
@inheritDoc
@classDescription Date and time handling
const TIMINGS_DEACTIVATED
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...