form; $editArticleForm->update(); if ($editArticleForm->validate() && !($editArticleForm->setNextPage())) { $editArticleForm->freeze(); // Ajout de l'article $articles = new Articles(); $where = $articles->getAdapter()->quoteInto('perm = ?', $editArticleForm->getValue('perm')); $data = array( 'title' => $editArticleForm->getValue('title'), 'body' => nl2br($editArticleForm->getValue('body')), 'date' => fr2mysql($editArticleForm->getValue('date')), 'time' => $editArticleForm->getValue('time'), 'author' => $editArticleForm->getValue('author'), 'url' => $editArticleForm->getValue('url'), ); $articles->update($data, $where); $this->_redirect(ROOT_URL.'/'); } else { $this->view->css[] = 'Formosite'; $this->view->form = $editArticleForm; } } else { if (isset($_GET['perm'])) { $articles = new Articles(); $where = $articles->getAdapter()->quoteInto('perm = ?', $_GET['perm']); $order = array('date desc', 'time desc'); $row = $articles->fetchRow($where, $order); if (!is_null($row)) { $item = $row->toArray(); $editArticleForm = new FormositeBuilder('editArticle'); $editArticleForm->addPage(); $editArticleForm->addField('','Hidden', 'editArticle-submitted','yes'); $editArticleForm->addField('','Hidden', 'perm', $_GET['perm']); $editArticleForm->addField('Titre','Text', 'title', $item['title'],'elem_Text','','max150','',true); $editArticleForm->addField('Texte','Textarea', 'body', br2nl($item['body']),'elem_Textarea','','max1000','',false); $editArticleForm->addField('Date','Text', 'date',mysql2fr($item['date']),'elem_Text','','max10','',true); $editArticleForm->addField('Heure','Text', 'time',$item['time'],'elem_Text','','max8','',true); $editArticleForm->addField('Auteur','Text', 'author',$item['author'],'elem_Text','','max50','',true); $editArticleForm->addField('Url','Text', 'url',$item['url'],'elem_Text','','max100','',true); $editArticleForm->addField('Enregistrer les modifications','Submit', 'valid'); $this->view->css[] = 'Formosite'; Zend_Registry::get('formositeNamespace')->form = $editArticleForm; $this->view->form = $editArticleForm; } else { $this->_redirect(ROOT_URL.'/'); } } else { $this->_redirect(ROOT_URL.'/'); } } } // Détail d'un billet public function detailAction() { if (isset($_GET['perm'])) { $articles = new Articles(); $where = $articles->getAdapter()->quoteInto('perm = ?', $_GET['perm']); $order = array('date desc', 'time desc'); $row = $articles->fetchRow($where, $order); if (!is_null($row)) { $item = $row->toArray(); $this->view->item = $item; } else { $this->_redirect(ROOT_URL.'/notfound'); } } else { $this->_redirect(ROOT_URL.'/'); } } // Ajouter un billet public function addAction() { if ($_POST['addArticle-submitted'] == 'yes') { $addArticleForm = Zend_Registry::get('formositeNamespace')->form; $addArticleForm->update(); if ($addArticleForm->validate() && !($addArticleForm->setNextPage())) { $addArticleForm->freeze(); // Ajout de l'article $articles = new Articles(); $data = array( 'title' => $addArticleForm->getValue('title'), 'body' => nl2br($addArticleForm->getValue('body')), 'date' => date('Y').'-'.date('m').'-'.date('d'), 'time' => date('H').':'.date('i').':'.date('s'), 'author' => $addArticleForm->getValue('author'), 'url' => $addArticleForm->getValue('url'), 'perm' => str2unix($addArticleForm->getValue('title')) ); $articles->insert($data); $rss = new RssFeed(RSS_FILE, APP_NAME, ROOT_URL, APP_DESCRIPTION); if ($rss->refresh() === true) { $this->_redirect(ROOT_URL.'/'); } } else { $this->view->css[] = 'Formosite'; $this->view->form = $addArticleForm; } } else { $addArticleForm = new FormositeBuilder('addArticle'); $addArticleForm->addPage(); $addArticleForm->addField('','Hidden', 'addArticle-submitted','yes'); $addArticleForm->addField('Titre','Text', 'title','','elem_Text','','max150','',true); $addArticleForm->addField('Texte','Textarea', 'body','','elem_Textarea','','max1000','',false); $addArticleForm->addField('Auteur','Text', 'author','admin','elem_Text','','max50','',true); $addArticleForm->addField('Url','Text', 'url','http://','elem_Text','','max100','',true); $addArticleForm->addField('Publier','Submit', 'valid'); $this->view->css[] = 'Formosite'; Zend_Registry::get('formositeNamespace')->form = $addArticleForm; $this->view->form = $addArticleForm; } } } ?>