'default', 'descr' => 'Výchozí', ]; $vars['body']['info_panel_types'] = $infoPanelsData['types'] ?? []; $vars['body']['info_panel_colors'] = $infoPanelsData['colors'] ?? []; $vars['body']['info_panelTranslationsFigure'] = $this->getTranslationUtil()?->getTranslationsFigure(InfoPanelTranslation::class, $this->getID(), 'active'); return $vars; } public function handleUpdate() { $SQL = parent::handleUpdate(); if ($SQL) { $data = $this->getData(); $this->getTranslationUtil()?->updateTranslationsFigure(InfoPanelTranslation::class, $this->getID(), $data['translation_figure'], 'active'); } return $SQL; } public function getData() { $data = parent::getData(); if (getVal('Submit')) { if (empty($data['name'])) { $this->returnError('Nejsou správně vyplněny údaje'); } $data['date_from'] = $this->prepareDateTime($data['date_from']); $data['date_to'] = $this->prepareDateTime($data['date_to']); $body = sqlQueryBuilder() ->select('body') ->from('info_panels') ->andWhere(Operator::equals(['id' => $data['ID']])) ->execute() ->fetchOne(); if (!empty($data['body']) && trim($data['body']) != $body) { $data['version'] = empty($data['version']) ? 1 : $data['version'] + 1; } $data['data'] = json_encode($data['data'], true); } return $data; } } return InfoPanel::class;