public function process() { if (!parent::process()) { return false; } $eventResult = $this->events->runEvent('articleReplaceEditorPlugin'); if (is_a($eventResult, '\\fpcm\\model\\abstracts\\articleEditor')) { $this->editorPlugin = $eventResult; } elseif ($this->config->system_editor) { $this->editorPlugin = new \fpcm\model\editor\htmlEditor(); } else { $this->editorPlugin = new \fpcm\model\editor\tinymceEditor(); } $this->view->setViewJsFiles($this->editorPlugin->getJsFiles()); $this->view->setViewCssFiles($this->editorPlugin->getCssFiles()); $viewVars = $this->editorPlugin->getViewVars(); foreach ($viewVars as $key => $value) { $this->view->assign($key, $value); } $changeAuthor = $this->permissions->check(array('article' => 'authors')); $this->view->assign('changeAuthor', $changeAuthor); if ($changeAuthor) { $userlist = new \fpcm\model\users\userList(); $changeuserList = array($this->lang->translate('EDITOR_CHANGEAUTHOR') => '') + $userlist->getUsersNameList(); $this->view->assign('changeuserList', $changeuserList); } $this->view->assign('editorFile', $this->editorPlugin->getEditorTemplate()); $this->view->assign('article', $this->article); $this->view->assign('categories', $this->categoryList->getCategoriesCurrentUser()); $this->view->assign('commentEnabledGlobal', $this->config->system_comments_enabled); $this->view->assign('showArchiveStatus', true); $this->view->assign('showDraftStatus', true); $this->view->assign('isRevision', false); $this->view->assign('timesMode', false); $this->view->assign('userfields', $this->getUserFields()); $twitter = new \fpcm\model\system\twitter(); $this->view->assign('showTwitter', $twitter->checkRequirements()); $this->jsVars = $this->editorPlugin->getJsVars(); $this->jsVars += array('fpcmFileManagerUrl' => \fpcm\classes\baseconfig::$rootPath . 'index.php?module=files/list&mode=', 'fpcmFileManagerUrlMode' => 2); $jsLangVars = array('fileManagerHeadline' => $this->lang->translate('HL_FILES_MNG')); $this->view->addJsLangVars(array_merge($jsLangVars, $this->editorPlugin->getJsLangVars())); $this->view->addJsVars($this->jsVars); return true; }
/** * Controller-Processing * @return boolean */ public function process() { if (!parent::process()) { return false; } $timezones = array(); foreach ($this->getTimeZones() as $area => $zones) { foreach ($zones as $zone) { $timezones[$area][$zone] = $zone; } } $this->view->assign('timezoneAreas', $timezones); $modes = array($this->lang->translate('SYSTEM_OPTIONS_USEMODE_IFRAME') => 0, $this->lang->translate('SYSTEM_OPTIONS_USEMODE_PHPINCLUDE') => 1); $this->view->assign('systemModes', $modes); $editor = array($this->lang->translate('SYSTEM_OPTIONS_NEWS_EDITOR_STD') => 0, $this->lang->translate('SYSTEM_OPTIONS_NEWS_EDITOR_CLASSIC') => 1); $this->view->assign('editors', $editor); $sorts = array($this->lang->translate('SYSTEM_OPTIONS_NEWS_BYINTERNALID') => 'id', $this->lang->translate('SYSTEM_OPTIONS_NEWS_BYAUTHOR') => 'createuser', $this->lang->translate('SYSTEM_OPTIONS_NEWS_BYWRITTENTIME') => 'createtime', $this->lang->translate('SYSTEM_OPTIONS_NEWS_BYEDITEDTIME') => 'changetime'); $this->view->assign('sorts', $sorts); $sortOrders = array($this->lang->translate('SYSTEM_OPTIONS_NEWS_ORDERASC') => 'ASC', $this->lang->translate('SYSTEM_OPTIONS_NEWS_ORDERDESC') => 'DESC'); $this->view->assign('sortsOrders', $sortOrders); $templates = new \fpcm\model\pubtemplates\templatelist(); $this->view->assign('articleTemplates', $templates->getArticleTemplates()); $this->view->assign('commentTemplates', $templates->getCommentTemplates()); $this->view->assign('globalConfig', $this->config->getData()); $this->view->assign('languages', array_flip($this->lang->getLanguages())); $notify = array($this->lang->translate('SYSTEM_OPTIONS_COMMENT_NOTIFY_GLOBAL') => 0, $this->lang->translate('SYSTEM_OPTIONS_COMMENT_NOTIFY_AUTHOR') => 1, $this->lang->translate('SYSTEM_OPTIONS_COMMENT_NOTIFY_ALL') => 2); $this->view->assign('notify', $notify); $this->view->assign('articleLimitList', \fpcm\model\system\config::getArticleLimits()); $this->view->assign('articleLimitListAcp', \fpcm\model\system\config::getAcpArticleLimits()); $this->view->assign('defaultFontsizes', \fpcm\model\system\config::getDefaultFontsizes()); $this->view->addJsVars(array('fpcmDtMasks' => \fpcm\classes\baseconfig::$dateTimeMasks)); $twitter = new \fpcm\model\system\twitter(); $showTwitter = $twitter->checkRequirements(); $this->view->assign('showTwitter', $showTwitter); $this->view->assign('twitterIsActive', $twitter->checkConnection()); $this->view->assign('twitterScreenName', $twitter->getUsername()); $this->view->setViewJsFiles(array(\fpcm\classes\baseconfig::$jsPath . 'options.js')); $this->view->addJsVars(array('showTwitter' => $showTwitter ? 1 : 0, 'syscheck' => $this->syscheck)); $this->view->render(); }
/** * Erzeugt einen Tweet bei Twitter, wenn Verbindung aktiv und Events ausgewählt * @return boolean */ public function createTweet() { if (!\fpcm\classes\baseconfig::canConnect() || !$this->config->twitter_events['create'] && !$this->config->twitter_events['update']) { return false; } /* @var $eventResult article */ $eventResult = $this->events->runEvent('articleCreateTweet', $this); $author = new \fpcm\model\users\author($eventResult->getCreateuser()); $tpl = new \fpcm\model\pubtemplates\tweet(); $tpl->setReplacementTags(array('{{headline}}' => $eventResult->getTitle(), '{{author}}' => $author->getDisplayname(), '{{date}}' => date($this->config->system_dtmask), '{{permaLink}}' => $eventResult->getArticleLink(), '{{shortLink}}' => $eventResult->getArticleShortLink())); if ($this->tweetOverride !== false) { $tpl->setContent($this->tweetOverride); } $twitter = new \fpcm\model\system\twitter(); return $twitter->updateStatus($tpl->parse()); }