public function publish($id, $data)
 {
     $articleDAO = _dao('blog|blogarticle');
     $article = _record('blog|blogarticle');
     $article->id_blog = $id;
     $article->name_bact = $data['title'];
     $article->format_bact = 'wiki';
     $article->sumary_bact = $data['body'];
     $article->sumary_html_bact = smarty_modifier_blog_format_article($article->sumary_bact, $article->format_bact);
     $article->content_bact = '';
     $article->content_html_bact = smarty_modifier_blog_format_article($article->content_bact, $article->format_bact);
     $article->author_bact = 'Publication par mail...';
     $article->date_bact = CopixDateTime::dateToTimestamp(date('d/m/Y'));
     $article->time_bact = timeToBD(date('H:i'));
     $article->url_bact = killBadUrlChars($article->name_bact);
     $article->sticky_bact = 0;
     $article->is_online = 1;
     $articleDAO->insert($article);
     $article->url_bact = killBadUrlChars($article->id_bact . '-' . $article->name_bact);
     $articleDAO->update($article);
     return "yo" . print_r($article, true) . "yo";
 }
 /**
  * Validation d'un article.
  */
 public function doValidArticle()
 {
     CopixHTMLHeader::addJSLink(_resource("js/jquery/jquery.ui.datepicker-fr.js"));
     $id_blog = $this->getRequest('id_blog', null);
     $go = $this->getRequest('go', 'preview');
     //die ("go=$go");
     if ($id_blog == null) {
         return CopixActionGroup::process('genericTools|Messages::getError', array('message' => CopixI18N::get('blog.error.param'), 'back' => CopixUrl::get('blog|admin|listBlog')));
     }
     if (!BlogAuth::canMakeInBlog('ADMIN_ARTICLES', create_blog_object($id_blog))) {
         return CopixActionGroup::process('genericTools|Messages::getError', array('message' => CopixI18N::get('blog.error.cannotManageCategory'), 'back' => CopixUrl::get('blog|admin|listBlog')));
     }
     $tpl = new CopixTpl();
     // On r�cup�re l'utilisateur connect�
     $user = BlogAuth::getUserInfos();
     $articleDAO = CopixDAOFactory::create('blog|blogarticle');
     // Cat�gories coch�es...
     $tabSelectCat = array();
     if (_request('tabSelectCat')) {
         $tabSelectCat = (array) _request('tabSelectCat');
     }
     $id_bact = $this->getRequest('id_bact', null);
     if (strlen($id_bact) == 0) {
         $id_bact = null;
     }
     $showErrors = false;
     if ($id_bact != null) {
         // EDITION D'UN ARTICLE
         $article = $articleDAO->get($id_bact);
         $this->_validFromPostProperties($article);
         if (!$article->date_bact) {
             $article->date_bact = date('d/m/Y');
         }
         if (!$article->time_bact) {
             $article->time_bact = date('H:i');
         }
         $article->date_bact = CopixDateTime::dateToTimestamp($article->date_bact);
         $article->time_bact = timeToBD($article->time_bact);
         $article->author_bact = $user->userId;
         $tpl->assign('TITLE_PAGE', CopixI18N::get('blog.get.edit.article.title'));
         //print_r($article);
         $errors = $articleDAO->check($article);
         if (count($tabSelectCat) == 0) {
             $errors = array();
             array_push($errors, CopixI18N::get('blog.error.nocategoryselect'));
         }
         if ($errors != 1) {
             // Traitement des erreurs
             $showErrors = true;
         } elseif ($go == 'save') {
             // Modification dans la base
             $article->url_bact = killBadUrlChars($article->id_bact . '-' . $article->name_bact);
             $article->sumary_html_bact = smarty_modifier_blog_format_article($article->sumary_bact, $article->format_bact);
             $article->content_html_bact = smarty_modifier_blog_format_article($article->content_bact, $article->format_bact);
             $articleDAO->update($article);
             // Insertion dans la base blogarticle_blogarticlecategory
             $artctgDAO = CopixDAOFactory::create('blog|blogarticle_blogarticlecategory');
             $artctgDAO->deleteAndInsert($article->id_bact, $tabSelectCat);
             return new CopixActionReturn(COPIX_AR_REDIRECT, CopixUrl::get('blog|admin|showBlog', array("id_blog" => $id_blog, "kind" => $this->getRequest('kind', '0'))));
         }
     } else {
         // CREATION D'UN ARTICLE
         $article = CopixDAOFactory::createRecord('blogarticle');
         $this->_validFromPostProperties($article);
         if (!$article->date_bact) {
             $article->date_bact = date('d/m/Y');
         }
         if (!$article->time_bact) {
             $article->time_bact = date('H:i');
         }
         $article->date_bact = CopixDateTime::dateToTimestamp($article->date_bact);
         $article->time_bact = timeToBD($article->time_bact);
         $article->author_bact = $user->userId;
         $tpl->assign('TITLE_PAGE', CopixI18N::get('blog.get.create.article.title'));
         $errors = $articleDAO->check($article);
         if (count($tabSelectCat) == 0) {
             $errors = array();
             array_push($errors, CopixI18N::get('blog.error.nocategoryselect'));
         }
         if ($errors != 1) {
             // Traitement des erreurs
             $showErrors = true;
         } elseif ($go == 'save') {
             // Insertion dans la base
             $article->sumary_html_bact = smarty_modifier_blog_format_article($article->sumary_bact, $article->format_bact);
             $article->content_html_bact = smarty_modifier_blog_format_article($article->content_bact, $article->format_bact);
             $articleDAO->insert($article);
             $article->url_bact = killBadUrlChars($article->id_bact . '-' . $article->name_bact);
             $articleDAO->update($article);
             // Insertion dans la base blogarticle_blogarticlecategory
             $artctgDAO = CopixDAOFactory::create('blog|blogarticle_blogarticlecategory');
             $artctgDAO->deleteAndInsert($article->id_bact, $tabSelectCat);
             return new CopixActionReturn(COPIX_AR_REDIRECT, CopixUrl::get('blog|admin|showBlog', array("id_blog" => $id_blog, "kind" => $this->getRequest('kind', '0'))));
         }
     }
     // Pr�paration du filtre CATEGORIES
     $blogArticleCategoryDAO = CopixDAOFactory::create('blog|blogarticlecategory');
     $resArticleCategory = $blogArticleCategoryDAO->findAllOrder($id_blog);
     $tabArticleCategory = array();
     foreach ($resArticleCategory as $cat) {
         if (in_array($cat->id_bacg, $tabSelectCat)) {
             $cat->selected = true;
         } else {
             $cat->selected = false;
         }
         array_push($tabArticleCategory, $cat);
     }
     $article->time_bact = BDToTime($article->time_bact);
     $tpl->assign('BODY_ON_LOAD', "setDatePicker('#date_bact')");
     $tpl->assign('MAIN', CopixZone::process('EditArticle', array('id_blog' => $id_blog, 'id_bact' => $id_bact, 'article' => $article, 'kind' => $this->getRequest('kind', '0'), 'errors' => $errors, 'showErrors' => $showErrors, 'tabArticleCategory' => $tabArticleCategory, 'preview' => $go == 'preview' ? 1 : 0)));
     return new CopixActionReturn(COPIX_AR_DISPLAY, $tpl);
 }