private function setArticleHandler(MetaArticle $p_oldArticle, MetaArticle $p_newArticle) { static $articleHandlerRunning = false; if (!$this->m_readonlyProperties['preview'] && (!$p_newArticle->is_published || !$p_newArticle->issue->is_published) && $p_newArticle->defined()) { return; } if ($articleHandlerRunning || $p_newArticle->same_as($p_oldArticle)) { return; } $articleHandlerRunning = true; if ($p_newArticle->defined() && !$this->getSection()->same_as($p_newArticle->section)) { $this->setSectionHandler($this->getSection(), $p_newArticle->section); } unset($this->m_objects['subtitle']); unset($this->m_objects['image']); unset($this->m_objects['attachment']); unset($this->m_objects['comment']); unset($this->m_objects['location']); $this->m_readonlyProperties['url']->article = $p_newArticle; $formParameters = $this->m_readonlyProperties['url']->form_parameters; foreach ($formParameters as $parameter) { if (strncmp($parameter['name'], 'st-', strlen('st-')) == 0) { $this->m_readonlyProperties['url']->reset_parameter($parameter['name']); } } $this->m_objects['article'] = $p_newArticle; $articleHandlerRunning = false; }