Esempio n. 1
0
 public function listApprobationRequestAction()
 {
     if ($this->view->aclIsAllowed('news', 'publish')) {
         $tables = array('NewsData' => array('ND_ID', 'ND_CategoryID', 'ND_ReleaseDate'), 'NewsIndex' => array('NI_NewsDataID', 'NI_LanguageID', 'NI_Title', 'NI_Status'), 'CategoriesIndex' => array('CI_Title'));
         $field_list = array('NI_Title' => array('width' => '400px'), 'CI_Title' => array(), 'ND_ReleaseDate' => array('width' => '120px'));
         $news = new NewsData();
         $select = $news->select()->from('NewsData')->setIntegrityCheck(false)->join('NewsIndex', 'NewsData.ND_ID = NewsIndex.NI_NewsDataID')->joinRight('CategoriesIndex', 'NewsData.ND_CategoryID = CategoriesIndex.CI_CategoryID')->joinRight('Languages', 'Languages.L_ID = NewsIndex.NI_LanguageID')->where('NewsData.ND_ToApprove = ?', 1)->where('NewsIndex.NI_LanguageID = CategoriesIndex.CI_LanguageID')->order('NI_Title');
         $options = array('disable-export-to-excel' => 'true', 'filters' => array('filter_1' => array('default_value' => null, 'associatedTo' => 'CI_Title', 'choices' => Cible_FunctionsCategories::getFilterCategories($this->_moduleID)), 'filter_2' => array('default_value' => null, 'associatedTo' => 'CI_LanguageID', 'choices' => Cible_FunctionsGeneral::getFilterLanguages())), 'action_panel' => array('width' => '50', 'actions' => array('edit' => array('label' => $this->view->getCibleText('button_edit'), 'url' => "{$this->view->baseUrl()}/news/index/edit/newsID/%ID%/lang/%LANG%/approbation/true", 'findReplace' => array(array('search' => '%ID%', 'replace' => 'ND_ID'), array('search' => '%LANG%', 'replace' => 'L_Suffix'))))));
         $mylist = new Cible_Paginator($select, $tables, $field_list, $options);
         $this->view->assign('mylist', $mylist);
     }
 }
Esempio n. 2
0
 public static function indexationBuild()
 {
     set_time_limit(0);
     /*         * ****** PAGE ******* */
     $pageSelect = new PagesIndex();
     $select = $pageSelect->select()->where('PI_Status = 1');
     $pageData = $pageSelect->fetchAll($select)->toArray();
     $cpt = count($pageData);
     for ($i = 0; $i < $cpt; $i++) {
         $indexData['action'] = "add";
         $indexData['pageID'] = $pageData[$i]['PI_PageID'];
         $indexData['moduleID'] = 0;
         $indexData['contentID'] = $pageData[$i]['PI_PageID'];
         $indexData['languageID'] = $pageData[$i]['PI_LanguageID'];
         $indexData['title'] = $pageData[$i]['PI_PageTitle'];
         $indexData['text'] = '';
         $indexData['link'] = '';
         $indexData['contents'] = $pageData[$i]['PI_PageTitle'];
         Cible_FunctionsIndexation::indexation($indexData);
     }
     /*         * ****** TEXT ******* */
     if (class_exists('Text', false)) {
         $textSelect = new Text();
         $select = $textSelect->select()->setIntegrityCheck(false)->from('TextData', array('ID' => 'TD_ID', 'LanguageID' => 'TD_LanguageID', 'Text' => 'TD_OnlineText'))->join('Blocks', 'B_ID = TD_BlockID', array('BlockID' => 'B_ID', 'ModuleID' => 'B_ModuleID'))->where('B_Online = 1')->join('PagesIndex', 'PI_PageID = B_PageID', array('PageID' => 'PI_PageID', 'Title' => 'PI_PageTitle'))->where('PI_Status = 1')->where('PI_LanguageID = TD_LanguageID');
         $textData = $textSelect->fetchAll($select)->toArray();
         $cpt = count($textData);
         for ($i = 0; $i < $cpt; $i++) {
             $indexData['action'] = "add";
             $indexData['pageID'] = $textData[$i]['PageID'];
             $indexData['moduleID'] = $textData[$i]['ModuleID'];
             $indexData['contentID'] = $textData[$i]['ID'];
             $indexData['languageID'] = $textData[$i]['LanguageID'];
             $indexData['title'] = $textData[$i]['Title'];
             $indexData['text'] = '';
             $indexData['link'] = '';
             $indexData['contents'] = $textData[$i]['Title'] . " " . $textData[$i]['Text'];
             Cible_FunctionsIndexation::indexation($indexData);
         }
     }
     /*         * ********************* */
     /*         * ****** NEWS ******* */
     if (class_exists('NewsData', false)) {
         $newsSelect = new NewsData();
         $select = $newsSelect->select()->setIntegrityCheck(false)->from('NewsData', array('NewsID' => 'ND_ID', 'CategoryID' => 'ND_CategoryID'))->join('NewsIndex', 'NI_NewsDataID = ND_ID', array('LanguageID' => 'NI_LanguageID', 'NewsTitle' => 'NI_Title', 'NewsBrief' => 'NI_Brief', 'NewsText' => 'NI_Text', 'NewsImageAlt' => 'NI_ImageAlt'))->where('NI_Status = 1');
         $newsData = $newsSelect->fetchAll($select);
         $cpt = count($newsData);
         for ($i = 0; $i < $cpt; $i++) {
             $indexData['action'] = "add";
             $indexData['pageID'] = $newsData[$i]['CategoryID'];
             $indexData['moduleID'] = 2;
             $indexData['contentID'] = $newsData[$i]['NewsID'];
             $indexData['languageID'] = $newsData[$i]['LanguageID'];
             $indexData['title'] = $newsData[$i]['NewsTitle'];
             $indexData['text'] = '';
             $indexData['link'] = '';
             $indexData['contents'] = $newsData[$i]['NewsTitle'] . " " . $newsData[$i]['NewsBrief'] . " " . $newsData[$i]['NewsText'] . " " . $newsData[$i]['NewsImageAlt'];
             Cible_FunctionsIndexation::indexation($indexData);
         }
     }
     /*         * ********************* */
     /*         * ****** EVENTS ******* */
     if (class_exists('EventsIndex', false)) {
         $eventsSelect = new EventsIndex();
         $select = $eventsSelect->select()->setIntegrityCheck(false)->from('EventsIndex', array('ID' => 'EI_EventsDataID', 'LanguageID' => 'EI_LanguageID', 'Title' => 'EI_Title', 'Brief' => 'EI_Brief', 'Text' => 'EI_Text', 'ImageAlt' => 'EI_ImageAlt'))->join('EventsData', 'ED_ID = EI_EventsDataID', array('CategoryID' => 'ED_CategoryID'))->where('EI_Status = 1');
         $eventsData = $eventsSelect->fetchAll($select)->toArray();
         $cpt = count($eventsData);
         for ($i = 0; $i < $cpt; $i++) {
             $indexData['action'] = "add";
             $indexData['pageID'] = $eventsData[$i]['CategoryID'];
             $indexData['moduleID'] = 7;
             $indexData['contentID'] = $eventsData[$i]['ID'];
             $indexData['languageID'] = $eventsData[$i]['LanguageID'];
             $indexData['title'] = $eventsData[$i]['Title'];
             $indexData['text'] = '';
             $indexData['link'] = '';
             $indexData['contents'] = $eventsData[$i]['Title'] . " " . $eventsData[$i]['Brief'] . " " . $eventsData[$i]['Text'] . " " . $eventsData[$i]['ImageAlt'];
             Cible_FunctionsIndexation::indexation($indexData);
         }
     }
     /*         * ********************* */
     /*         * ****** GALLERY ******* */
     if (class_exists('Galleries', false)) {
         $gallerySelect = new Galleries();
         $select = $gallerySelect->select()->setIntegrityCheck(false)->from('Galleries', array('ID' => 'G_ID', 'CategoryID' => 'G_CategoryID'))->where('G_Online = 1')->join('GalleriesIndex', 'GI_GalleryID = G_ID', array('LanguageID' => 'GI_LanguageID', 'Title' => 'GI_Title', 'Description' => 'GI_Description'))->join('ImagesIndex', 'II_ImageID = G_ImageID', array('ImageTitle' => 'II_Title', 'ImageDescription' => 'II_Description'))->where('II_LanguageID = GI_LanguageID');
         $galleryData = $gallerySelect->fetchAll($select);
         $cpt = count($galleryData);
         for ($i = 0; $i < $cpt; $i++) {
             $indexData['action'] = "add";
             $indexData['pageID'] = $galleryData[$i]['CategoryID'];
             $indexData['moduleID'] = 9;
             $indexData['contentID'] = $galleryData[$i]['ID'];
             $indexData['languageID'] = $galleryData[$i]['LanguageID'];
             $indexData['title'] = $galleryData[$i]['Title'];
             $indexData['text'] = '';
             $indexData['link'] = 'gallery';
             $indexData['contents'] = $galleryData[$i]['Title'] . " " . $galleryData[$i]['Description'] . " " . $galleryData[$i]['ImageTitle'] . " " . $galleryData[$i]['ImageDescription'];
             Cible_FunctionsIndexation::indexation($indexData);
             $imagesSelect = new GalleriesImages();
             $select = $imagesSelect->select()->setIntegrityCheck(false)->from('Galleries_Images', array('ID' => 'GI_ImageID'))->where('GI_GalleryID = ?', $galleryData[$i]['ID'])->where('GI_Online = 1')->join('ImagesIndex', 'II_ImageID = GI_ImageID', array('LanguageID' => 'II_LanguageID', 'Title' => 'II_Title', 'Description' => 'II_Description'));
             $imagesData = $imagesSelect->fetchAll($select);
             $cptImage = count($imagesData);
             for ($y = 0; $y < $cptImage; $y++) {
                 $indexData['action'] = "add";
                 $indexData['pageID'] = $galleryData[$i]['CategoryID'];
                 $indexData['moduleID'] = 9;
                 $indexData['contentID'] = $galleryData[$i]['ID'];
                 $indexData['languageID'] = $imagesData[$y]['LanguageID'];
                 $indexData['title'] = $imagesData[$y]['Title'];
                 $indexData['text'] = '';
                 $indexData['link'] = 'image';
                 $indexData['contents'] = $imagesData[$y]['Title'] . " " . $imagesData[$y]['Description'];
                 Cible_FunctionsIndexation::indexation($indexData);
             }
         }
     }
     /*         * ********************* */
     /*         * ****** NEWSLETTERS ******* */
     if (class_exists('NewsletterRelease', false)) {
         $newsletterSelect = new NewsletterReleases();
         $select = $newsletterSelect->select()->from('Newsletter_Releases', array('ID' => 'NR_ID', 'LanguageID' => 'NR_LanguageID', 'Title' => 'NR_Title'))->where('NR_Online = 1');
         $newsletterData = $newsletterSelect->fetchAll($select)->toArray();
         $cpt = count($newsletterData);
         for ($i = 0; $i < $cpt; $i++) {
             $indexData['action'] = "add";
             $indexData['pageID'] = $newsletterData[$i]['ID'];
             $indexData['moduleID'] = 8;
             $indexData['contentID'] = $newsletterData[$i]['ID'];
             $indexData['languageID'] = $newsletterData[$i]['LanguageID'];
             $indexData['title'] = $newsletterData[$i]['Title'];
             $indexData['text'] = '';
             $indexData['link'] = 'release';
             $indexData['contents'] = $newsletterData[$i]['Title'];
             Cible_FunctionsIndexation::indexation($indexData);
             $articlesSelect = new NewsletterArticles();
             $select = $articlesSelect->select()->from('Newsletter_Articles', array('ID' => 'NA_ID', 'Title' => 'NA_Title', 'Resume' => 'NA_Resume', 'Text' => 'NA_Text'))->where('NA_ReleaseID = ?', $newsletterData[$i]['ID']);
             $articlesData = $articlesSelect->fetchAll($select);
             $cptArticle = count($articlesData);
             for ($y = 0; $y < $cptArticle; $y++) {
                 $indexData['action'] = "add";
                 $indexData['pageID'] = $newsletterData[$i]['ID'];
                 $indexData['moduleID'] = 8;
                 $indexData['contentID'] = $articlesData[$y]['ID'];
                 $indexData['languageID'] = $newsletterData[$i]['LanguageID'];
                 $indexData['title'] = $articlesData[$y]['Title'];
                 $indexData['text'] = '';
                 $indexData['link'] = 'article';
                 $indexData['contents'] = $articlesData[$y]['Title'] . " " . $articlesData[$y]['Resume'] . " " . $articlesData[$y]['Text'];
                 Cible_FunctionsIndexation::indexation($indexData);
             }
         }
     }
     /*         * ********************* */
 }
Esempio n. 3
0
 public function indexAction()
 {
     $params['keywords'] = $searchParams['words'] = $searchWords = $this->_getParam('words');
     $this->view->assign('words', $searchParams['words']);
     $languageID = $lang = Zend_Registry::get('languageID');
     $db = Zend_Registry::get("db");
     $searchResults = array();
     $searchCount = 0;
     $searchResult = Cible_FunctionsIndexation::indexationSearch($searchParams);
     //$this->view->dump($searchResult);
     /*         * ********* TEXT ************* */
     $moduleID = 1;
     $i = 0;
     $y = 0;
     $pageSelect = new PagesIndex();
     $searchPage = array();
     $pageIDArray = array();
     foreach ($searchResult as $result) {
         if ($result['moduleID'] == $moduleID && $result['languageID'] == $languageID || $result['moduleID'] == 0 && $result['languageID'] == $languageID) {
             $select = $pageSelect->select()->where('PI_PageID = ?', $result['pageID'])->where('PI_LanguageID = ?', $result['languageID'])->where('PI_Status = 1');
             $pageData = $pageSelect->fetchRow($select);
             if ($pageData && !in_array($result['pageID'], $pageIDArray)) {
                 $pageIDArray[] = $result['pageID'];
                 $searchPage[$y]['moduleID'] = $result['moduleID'];
                 $searchPage[$y]['pageID'] = $result['pageID'];
                 $searchPage[$y]['contentID'] = $result['contentID'];
                 $searchPage[$y]['languageID'] = $result['languageID'];
                 $searchPage[$y]['title'] = $result['title'];
                 $searchPage[$y]['text'] = $result['text'];
                 $searchPage[$y]['link'] = $result['link'];
                 $searchPage[$y]['pageTitle'] = $pageData['PI_PageTitle'];
                 $searchPage[$y]['pageIndex'] = $pageData['PI_PageIndex'];
                 $y++;
                 $searchCount++;
             }
             array_splice($searchResult, $i, 1);
         } else {
             $i++;
         }
     }
     $this->view->assign('searchPage', $searchPage);
     /*         * *************************** */
     /*         * ********* NEWS ************* */
     $moduleID = 2;
     $i = 0;
     $y = 0;
     $searchNews = array();
     foreach ($searchResult as $result) {
         if ($result['moduleID'] == $moduleID && $result['languageID'] == $languageID) {
             $newsSelect = new NewsData();
             $select = $newsSelect->select()->where('ND_ID = ?', $result['contentID']);
             $newsData = $newsSelect->fetchRow($select);
             $link = Cible_FunctionsCategories::getPagePerCategoryView($result['pageID'], 'details');
             if ($newsData['ND_ReleaseDate'] <= date('Y-m-d') && $link != '') {
                 $searchNews[$y]['moduleID'] = $result['moduleID'];
                 $searchNews[$y]['pageID'] = $result['pageID'];
                 $searchNews[$y]['contentID'] = $result['contentID'];
                 $searchNews[$y]['languageID'] = $result['languageID'];
                 $searchNews[$y]['title'] = $result['title'];
                 $searchNews[$y]['text'] = $result['text'];
                 $searchNews[$y]['link'] = $link;
                 $y++;
                 $searchCount++;
             }
             array_splice($searchResult, $i, 1);
         } else {
             $i++;
         }
     }
     $this->view->assign('searchNews', $searchNews);
     /*         * *************************** */
     /*         * ********* EVENTS ************* */
     $moduleID = 7;
     $i = 0;
     $y = 0;
     $searchEvents = array();
     foreach ($searchResult as $result) {
         if ($result['moduleID'] == $moduleID && $result['languageID'] == $languageID) {
             $link = Cible_FunctionsCategories::getPagePerCategoryView($result['pageID'], 'details');
             if ($link != '') {
                 $searchEvents[$y]['moduleID'] = $result['moduleID'];
                 $searchEvents[$y]['pageID'] = $result['pageID'];
                 $searchEvents[$y]['contentID'] = $result['contentID'];
                 $searchEvents[$y]['languageID'] = $result['languageID'];
                 $searchEvents[$y]['title'] = $result['title'];
                 $searchEvents[$y]['text'] = $result['text'];
                 $searchEvents[$y]['link'] = $link;
                 $y++;
                 $searchCount++;
             }
             array_splice($searchResult, $i, 1);
         } else {
             $i++;
         }
     }
     $this->view->assign('searchEvents', $searchEvents);
     /*         * *************************** */
     /*         * ********* NEWSLETTERS ************* */
     $moduleID = 8;
     $i = 0;
     $y = 0;
     $searchNewsletters = array();
     foreach ($searchResult as $result) {
         if ($result['moduleID'] == $moduleID && $result['languageID'] == $languageID) {
             $searchNewsletters[$y]['moduleID'] = $result['moduleID'];
             $searchNewsletters[$y]['pageID'] = $result['pageID'];
             $searchNewsletters[$y]['contentID'] = $result['contentID'];
             $searchNewsletters[$y]['languageID'] = $result['languageID'];
             $searchNewsletters[$y]['title'] = $result['title'];
             $searchNewsletters[$y]['text'] = $result['text'];
             if ($result['link'] == 'release') {
                 $searchNewsletters[$y]['link'] = Cible_FunctionsCategories::getPagePerCategoryView(0, 'details_release', 8) . "/ID/" . $result['contentID'];
             } else {
                 $searchNewsletters[$y]['link'] = Cible_FunctionsCategories::getPagePerCategoryView(0, 'details_article', 8) . "/ID/" . $result['contentID'];
             }
             $y++;
             $searchCount++;
             array_splice($searchResult, $i, 1);
         } else {
             $i++;
         }
     }
     $this->view->assign('searchNewsletters', $searchNewsletters);
     /*         * *************************** */
     /*         * ********* GALLERY ************* */
     $moduleID = 9;
     $i = 0;
     $y = 0;
     $searchGalleries = array();
     $galleryID = array();
     foreach ($searchResult as $result) {
         if ($result['moduleID'] == $moduleID && $result['languageID'] == $languageID) {
             $link = Cible_FunctionsCategories::getPagePerCategoryView($result['pageID'], 'details', 9);
             if ($link != '' && !in_array($result['contentID'], $galleryID)) {
                 $searchGalleries[$y]['moduleID'] = $result['moduleID'];
                 $searchGalleries[$y]['pageID'] = $result['pageID'];
                 $searchGalleries[$y]['contentID'] = $result['contentID'];
                 $searchGalleries[$y]['languageID'] = $result['languageID'];
                 $searchGalleries[$y]['title'] = $result['title'];
                 $searchGalleries[$y]['text'] = $result['text'];
                 $galleryID[] = $result['contentID'];
                 /*
                  if($result['link'] == 'image')
                  $searchGalleries[$y]['link']     = $link."/ID/{$result['pageID']}";
                  else
                  $searchGalleries[$y]['link']     = $link."/ID/{$result['contentID']}";
                 */
                 $searchGalleries[$y]['link'] = $link . "/ID/{$result['contentID']}";
                 $y++;
                 $searchCount++;
             }
             array_splice($searchResult, $i, 1);
         } else {
             $i++;
         }
     }
     $this->view->assign('searchGalleries', $searchGalleries);
     $this->view->assign('searchCount', $searchCount);
 }