202 : void
203 {
204 $mt = $this->gui->ui()->mainTemplate();
206 $ctrl = $this->gui->ctrl();
207 $lng = $this->domain->lng();
208
209 $old_settings = $this->domain->mediacastSettings()->getById($this->obj_id);
210
211 if ($form->isValid()) {
212
213 $form->saveStdTitleAndDescription($this->obj_id, "mcst");
214 $form->saveStdTile($this->obj_id, "mcst");
215 $form->saveOnline($this->obj_id, "mcst");
216
217 $settings = $this->data->settings(
218 $this->obj_id,
219 (bool) $form->getData("public_files"),
220 (bool) $form->getData("downloadable"),
221 (int) $form->getData("defaultaccess"),
222 (int) $form->getData("order"),
223 (string) $form->getData("viewmode"),
224 (bool) $form->getData("autoplaymode"),
225 (int) $form->getData("nr_videos"),
227 );
228 $this->domain->mediacastSettings()->update($settings);
229
230 if (!$this->global_settings->get('disable_comments')) {
231 $this->domain->notes()->activateComments(
232 $this->obj_id,
233 $form->getData("comments")
234 );
235 }
236
237 $news_set = new \ilSetting("news");
238 $enable_internal_rss = $news_set->get("enable_rss_for_internal");
239
240 if ($enable_internal_rss) {
242 "news",
243 "public_feed",
244 (string) $form->getData("extra_feed"),
245 0,
246 $this->obj_id
247 );
248
250 "news",
251 "keep_rss_min",
252 (string) $form->getData("keep_rss_min"),
253 0,
254 $this->obj_id
255 );
256 }
257
258 $mt->setOnScreenMessage(
"success",
$lng->txt(
"msg_obj_modified"),
true);
259 $ctrl->redirectByClass(self::class, "edit");
260 } else {
261 $mt = $this->gui->ui()->mainTemplate();
262 $mt->setContent($form->render());
263 }
264 }
static _write(string $a_type, string $a_setting, string $a_value, int $a_user=0, int $a_block_id=0)
Write setting to database.