Beispiel #1
0
 public function detailsarticleAction()
 {
     //$this->view->jQuery()->addJavascriptFile($this->view->locateFile('jquery.prettyPhoto.js', 'jquery'));
     //$this->view->headLink()->appendStylesheet($this->view->locateFile('prettyPhoto.css'), 'screen');
     // Article ID and Newsletter ID
     $newsletterArticlesSelect = new NewsletterArticles();
     $id = 0;
     $newsletterID = 0;
     $url = $this->_request->getPathInfo();
     $fromEmail = (bool) preg_match('/-uid-[0-9]+/', $url);
     $user = Zend_Registry::get('user');
     $memberId = 0;
     $titleUrl = Cible_FunctionsGeneral::getTitleFromPath($url);
     if ($titleUrl != "") {
         $id = $newsletterArticlesSelect->getArticleIdByName($titleUrl);
         $newsletterID = $newsletterArticlesSelect->getNewsletterIdByName($titleUrl);
     }
     if ($fromEmail) {
         $pos = strpos($url, '-uid-');
         $uid = explode('-', substr($url, $pos));
         $memberId = end($uid);
         $url = substr_replace($url, '', $pos);
         $path = Zend_Registry::get('web_root') . '/';
         setcookie('uid_newsletter', (string) $memberId, 0, $path);
     } else {
         if (isset($_COOKIE['uid_newsletter'])) {
             $memberId = $_COOKIE['uid_newsletter'];
         }
     }
     if ($memberId == 0 && $user) {
         $oMember = new MemberProfile();
         $member = $oMember->findMember(array('email' => $user['email']));
         $memberId = $member['member_id'];
     }
     $back_to_newsletter = !empty($newsletterID) ? "/ID/{$newsletterID}" : '';
     $blockID = $this->_getParam('BlockID');
     $blockParams = Cible_FunctionsBlocks::getBlockParameters($blockID)->toArray();
     $newsletterCategoryID = $blockParams[0]['P_Value'];
     if (!empty($id)) {
         $this->_params = array('moduleId' => $this->_moduleID, 'releaseId' => $newsletterID, 'memberId' => $memberId, 'articleId' => $id);
         $this->logDetailsread();
         $newsletterSelect = new NewsletterReleases();
         $select = $newsletterSelect->select();
         $select->from('Newsletter_Releases')->where('NR_LanguageID = ?', Zend_Registry::get("languageID"))->where('NR_ID = ?', $newsletterID);
         $newsletterData = $newsletterSelect->fetchRow($select);
         $titleParution = $newsletterData['NR_Title'];
         $titleURLParution = $newsletterData['NR_ValUrl'];
         //var_dump($newsletterData);
         if ($newsletterData['NR_Online'] == 1) {
             // article info
             $select = $newsletterArticlesSelect->select();
             $select->where('NA_ID = ?', $id);
             //$select->where('NA_ReleaseID = ?', $newsletterID);
             $newsletterArticlesData = $newsletterArticlesSelect->fetchAll($select);
             if (count($newsletterArticlesData) < 0) {
                 $this->_redirect(Cible_FunctionsCategories::getPagePerCategoryView($newsletterCategoryID, 'details_release', 8));
             }
             $this->view->articles = $newsletterArticlesData->toArray();
             $blockID = $this->_getParam('BlockID');
             $blockParams = Cible_FunctionsBlocks::getBlockParameters($blockID)->toArray();
             $newsletterCategoryID = $blockParams[0]['P_Value'];
             $this->view->assign('parution_title', $titleParution);
             $this->view->assign('parution_date', $newsletterData['NR_Date']);
             $this->view->assign('subscribeLink', $this->view->baseUrl() . "/" . Cible_FunctionsCategories::getPagePerCategoryView($newsletterCategoryID, 'subscribe', 8));
             $this->view->assign('unsubscribeLink', $this->view->baseUrl() . "/" . Cible_FunctionsCategories::getPagePerCategoryView($newsletterCategoryID, 'unsubscribe', 8));
             $this->view->assign('parutionURL', $titleURLParution);
             $this->view->assign('back_to_release', Cible_FunctionsCategories::getPagePerCategoryView($newsletterCategoryID, 'details_release', 8));
             //$this->view->assign('back_to_release', $this->view->baseUrl()."/".Cible_FunctionsCategories::getPagePerCategoryView($newsletterCategoryID, 'details_release', 8) . $back_to_newsletter);
             $this->view->assign('archivesLink', $this->view->baseUrl() . "/" . Cible_FunctionsCategories::getPagePerCategoryView($newsletterCategoryID, 'list_archives', 8) . '/categoryID/' . $newsletterCategoryID);
         } else {
             $this->view->articles = array();
             $this->view->assign('parutionURL', $titleURLParution);
             $this->view->assign('subscribeLink', $this->view->baseUrl() . "/" . Cible_FunctionsCategories::getPagePerCategoryView($newsletterCategoryID, 'subscribe', 8));
             $this->view->assign('unsubscribeLink', $this->view->baseUrl() . "/" . Cible_FunctionsCategories::getPagePerCategoryView($newsletterCategoryID, 'unsubscribe', 8));
             $this->view->assign('back_to_release', $this->view->baseUrl() . "/" . Cible_FunctionsCategories::getPagePerCategoryView($newsletterCategoryID, 'details_release', 8) . $back_to_newsletter);
             $this->view->assign('archivesLink', $this->view->baseUrl() . "/" . Cible_FunctionsCategories::getPagePerCategoryView($newsletterCategoryID, 'list_archives', 8) . '/categoryID/' . $newsletterCategoryID);
         }
     } else {
         $this->view->assign('subscribeLink', $this->view->baseUrl() . "/" . Cible_FunctionsCategories::getPagePerCategoryView($newsletterCategoryID, 'subscribe', 8));
         $this->view->assign('unsubscribeLink', $this->view->baseUrl() . "/" . Cible_FunctionsCategories::getPagePerCategoryView($newsletterCategoryID, 'unsubscribe', 8));
         $this->view->assign('back_to_release', $this->view->baseUrl() . "/" . Cible_FunctionsCategories::getPagePerCategoryView($newsletterCategoryID, 'details_release', 8) . $back_to_newsletter);
         $this->view->assign('parutionURL', $titleURLParution);
         $this->view->assign('archivesLink', $this->view->baseUrl() . "/" . Cible_FunctionsCategories::getPagePerCategoryView($newsletterCategoryID, 'list_archives', 8) . '/categoryID/' . $newsletterCategoryID);
         $this->view->articles = array();
     }
 }