Exemplo n.º 1
0
 public function detailsreleaseAction()
 {
     // $this->view->jQuery()->addJavascriptFile($this->view->locateFile('jquery.prettyPhoto.js', 'jquery'));
     //  $this->view->headLink()->appendStylesheet($this->view->locateFile('prettyPhoto.css'), 'screen');
     $userId = 0;
     $id = $this->_getParam('ID');
     $newsletterSelect = new NewsletterReleases();
     $url = $this->_request->getPathInfo();
     $fromEmail = (bool) preg_match('/-uid-[0-9]+/', $url);
     $user = Zend_Registry::get('user');
     $memberId = 0;
     $blockID = $this->_getParam('BlockID');
     $blockParams = Cible_FunctionsBlocks::getBlockParameters($blockID)->toArray();
     $newsletterCategoryID = $blockParams[0]['P_Value'];
     if ($id == 0) {
         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'];
         }
         $titleUrl = Cible_FunctionsGeneral::getTitleFromPath($url);
         if ($titleUrl != "") {
             $id = $newsletterSelect->getNewsletterIdByName($titleUrl);
         }
     }
     if (!empty($id)) {
         // release info
         $select = $newsletterSelect->select()->setIntegrityCheck(false);
         $select->from('Newsletter_Releases')->join('Languages', 'L_ID = NR_LanguageID', array())->join('CategoriesIndex', 'CI_CategoryID = NR_CategoryID', array())->join('Newsletter_Models_Index', 'NMI_NewsletterModelID = NR_ModelID', array())->join('Newsletter_Models', 'NM_ID = NMI_NewsletterModelID', array())->where('NR_LanguageID = ?', Zend_Registry::get("languageID"))->where('NR_CategoryID = ?', $newsletterCategoryID)->where('NR_Online = ?', 1)->where('NR_ID = ?', $id)->order('NR_Date DESC');
         $newsletterData = $newsletterSelect->fetchRow($select);
     } else {
         $newsletterSelect = new NewsletterReleases();
         $select = $newsletterSelect->select()->setIntegrityCheck(false);
         $select->from('Newsletter_Releases')->join('Languages', 'L_ID = NR_LanguageID', array())->join('CategoriesIndex', 'CI_CategoryID = NR_CategoryID', array())->join('Newsletter_Models_Index', 'NMI_NewsletterModelID = NR_ModelID', array())->join('Newsletter_Models', 'NM_ID = NMI_NewsletterModelID', array())->where('NR_LanguageID = ?', Zend_Registry::get("languageID"))->where('NR_CategoryID = ?', $newsletterCategoryID)->where('NR_Online = ?', 1)->order('NR_Date DESC');
         $newsletterData = $newsletterSelect->fetchRow($select);
         $id = $newsletterData['NR_ID'];
     }
     if ($id != '' && $newsletterData['NR_Online'] == 1) {
         // articles info
         $newsletterArticlesSelect = new NewsletterArticles();
         $select = $newsletterArticlesSelect->select();
         $select->where('NA_ReleaseID = ?', $id)->order('NA_ZoneID')->order('NA_PositionID');
         $newsletterArticlesData = $newsletterArticlesSelect->fetchAll($select);
         $this->view->articles = $newsletterArticlesData->toArray();
     } else {
         $this->view->articles = array();
     }
     $titleParution = $newsletterData['NR_Title'];
     $blockID = $this->_getParam('BlockID');
     $blockParams = Cible_FunctionsBlocks::getBlockParameters($blockID)->toArray();
     $newsletterCategoryID = $blockParams[0]['P_Value'];
     $details_page = Cible_FunctionsCategories::getPagePerCategoryView($newsletterCategoryID, 'details_article', 8);
     $this->view->assign('parution_title', $titleParution);
     $this->view->assign('parution_date', $newsletterData['NR_Date']);
     $this->view->assign('details_page', $details_page);
     $this->view->assign('back_to_release', $this->view->baseUrl() . "/" . Cible_FunctionsCategories::getPagePerCategoryView($newsletterCategoryID, 'details_release', 8));
     $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('archivesLink', $this->view->baseUrl() . "/" . Cible_FunctionsCategories::getPagePerCategoryView($newsletterCategoryID, 'list_archives', 8) . '/categoryID/' . $newsletterCategoryID);
 }