Пример #1
0
 public function deleteAction()
 {
     // web page title
     $this->view->title = "Suppression d'une parution";
     if ($this->view->aclIsAllowed('newsletter', 'manage', true)) {
         // variables
         $pageID = (int) $this->_getParam('pageID');
         $blockID = (int) $this->_getParam('blockID');
         $newsletterID = (int) $this->_getParam('newsletterID');
         // generate the form
         if (empty($pageID) && empty($blockID)) {
             $returnUrl = "/newsletter/index/list-all/";
         } else {
             $returnUrl = "/newsletter/index/list/blockID/{$blockID}/pageID/{$pageID}";
         }
         $this->view->assign('return', "{$this->view->baseUrl()}{$returnUrl}");
         $newsletterSelect = new NewsletterReleases();
         $select = $newsletterSelect->select();
         $select->where('NR_ID = ?', $newsletterID);
         $newsletterData = $newsletterSelect->fetchRow($select);
         $this->view->newsletter = $newsletterData->toArray();
         if ($this->_request->isPost()) {
             $del = $this->_request->getPost('delete');
             if ($del && $newsletterData) {
                 // get all article in the release
                 $articlesSelect = new NewsletterArticles();
                 $select = $articlesSelect->select()->where('NA_ReleaseID = ?', $newsletterID);
                 $articlesData = $articlesSelect->fetchAll($select);
                 $indexData['pageID'] = $pageID;
                 $indexData['moduleID'] = 8;
                 $indexData['languageID'] = $newsletterData['NR_LanguageID'];
                 $indexData['action'] = 'delete';
                 foreach ($articlesData as $article) {
                     $indexData['contentID'] = $article['NA_ID'];
                     Cible_FunctionsIndexation::indexation($indexData);
                 }
                 $newsletterData->delete();
                 $newsletterArticleDelete = new NewsletterArticles();
                 $where = "NA_ReleaseID = " . $newsletterID;
                 $newsletterArticleDelete->delete($where);
                 Cible_FunctionsGeneral::delFolder("../../{$this->_config->document_root}/data/images/newsletter/{$newsletterID}");
             }
             $this->_redirect($returnUrl);
         }
     }
 }