setPageTitle(WT_I18N::translate('Add/edit a journal/news entry')) ->restrictAccess(Auth::isMember()) ->pageHeader(); $action = WT_Filter::get('action', 'compose|save', 'compose'); $news_id = WT_Filter::getInteger('news_id'); $user_id = WT_Filter::get('user_id', WT_REGEX_INTEGER, WT_Filter::post('user_id', WT_REGEX_INTEGER)); $gedcom_id = WT_Filter::get('gedcom_id', WT_REGEX_INTEGER, WT_Filter::post('gedcom_id', WT_REGEX_INTEGER)); $date = WT_Filter::postInteger('date', 0, PHP_INT_MAX, WT_TIMESTAMP); $title = WT_Filter::post('title'); $text = WT_Filter::post('text'); switch ($action) { case 'compose': if (array_key_exists('ckeditor', WT_Module::getActiveModules())) { ckeditor_WT_Module::enableEditor($controller); } echo '

' . WT_I18N::translate('Add/edit a journal/news entry') . '

'; echo '
'; if ($news_id) { $news = WT_DB::prepare("SELECT SQL_CACHE news_id AS id, user_id, gedcom_id, UNIX_TIMESTAMP(updated) AS date, subject, body FROM `##news` WHERE news_id=?")->execute(array($news_id))->fetchOneRow(PDO::FETCH_ASSOC); } else { $news = array(); $news['user_id'] = $user_id; $news['gedcom_id'] = $gedcom_id; $news['date'] = WT_TIMESTAMP; $news['subject'] = ''; $news['body'] = ''; } echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo ''; echo '
' . WT_I18N::translate('Title:') . '
' . WT_I18N::translate('Entry text:') . '
'; echo ''; echo '
'; echo '
'; break; case 'save': if ($news_id) { WT_DB::prepare("UPDATE `##news` SET subject=?, body=?, updated=FROM_UNIXTIME(?) WHERE news_id=?")->execute(array($title, $text, $date, $news_id)); } else { WT_DB::prepare("INSERT INTO `##news` (user_id, gedcom_id, subject, body) VALUES (NULLIF(?, ''), NULLIF(?, '') ,? ,?)")->execute(array($user_id, $gedcom_id, $title, $text)); } $controller->addInlineJavascript('window.opener.location.reload();window.close();'); break; }