コード例 #1
0
     // Data
     $news = $newsDb->getAllWithDescById($id, $this->_languageId);
     //        $author = $newsDb->getAuthor($id,$this->_languageId)->toArray();
     //        $authorName = (empty($author))? '' : $author['name'];
     //if content is empty, will be redirecting to list of news
     if ($news['content']) {
         //update viewer
         //hanya increamen 1 saja setiap kali content detaul di load
         //            $newsDb->updateField($id,array('viewer'=>$news['viewer']+1));
         // View
         $this->view->news = $news;
         $this->view->id = $id;
         //            $this->view->author = $authorName;
     } else {
         $this->_redirector->gotoUrl($this->view->baseUrl('/news/index/'));
     }
 }
 /**
  * IS : -
  * FS : -
  * Desc : controller untuk ! form
  */
 /**
  * IS: -
  * FS: -
  * Desc: Fungsi untuk generate RSS
  */
 public function rssAction()
 {
     // Tidak pake layout
     //$this->getResponse()->setHeader('Content-Type', 'text/xml');
     $this->_helper->layout->disableLayout();
     // Model
     $newsDb = new Model_DbTable_News();
コード例 #2
0
 public function indexAction()
 {
     //      params
     $limit = 3;
     //      model
     $destinationDb = new Model_DbTable_Destination();
     $newsDb = new Model_DbTable_News();
     $eventDb = new Model_DbTable_Event();
     //      data
     $latestculture = $destinationDb->getLatestPost($limit);
     $latestdraft = $destinationDb->getLatestDraft($limit);
     $latestnews = $newsDb->getLatestPost($limit);
     $latestnewsdraft = $newsDb->getLatestPost($limit);
     $latestevent = $eventDb->getLatestPost($limit);
     $latesteventdraft = $eventDb->getLatestDraft($limit);
     $messages = $this->_helper->flashMessenger->getMessages();
     //      view
     $this->view->latestdraft = $latestdraft;
     $this->view->latestculture = $latestculture;
     $this->view->latestnews = $latestnews;
     $this->view->latestnewsdraft = $latestnewsdraft;
     $this->view->latestevent = $latestevent;
     $this->view->latesteventdraft = $latesteventdraft;
     $this->view->messages = $messages;
 }
コード例 #3
0
 /**
  * IS: -
  * FS: Mengirimkan ke viewer: destination, news, event, destSearchForm, 
  *     activitySearchForm, highlight, video
  * Desc: Fungsi untuk menampilkan halaman depan
  */
 public function indexAction()
 {
     $this->_helper->layout->setLayout('kebudayaan');
     // Form
     $destSearchForm = new Form_DestSearchHomeForm();
     $activitySearchForm = new Form_ActivitySearchHomeForm();
     $destSearchForm->setNameLabel($this->view->translate('name'));
     // Model
     $destinationDb = new Model_DbTable_Destination();
     $eventDb = new Model_DbTable_Event();
     $highlightDb = new Model_DbTable_Highlight();
     //    $videoModel = new Model_Video;
     $galleryModel = new Model_DbTable_Image();
     // Data
     $galleryHeader = $highlightDb->getGalleryHeader();
     $featured_culture = $destinationDb->getFeaturedCulture($this->_languageId, 4);
     //generate news
     $news = $this->news->getLastNews($this->_languageId, 4);
     $event = $eventDb->getFourClosestEvent($this->_languageId);
     $highlightMed = $highlightDb->getMainType(2, $this->_languageId);
     //    $videos = $videoModel->getMostViewedVideos($startIndexVideo, $maxResultVideo);
     $latestImage = $galleryModel->getTenLastImage(1, false, true);
     $this->view->activeHeaders = $highlightDb->getActiveHeaders();
     // Passing ke view
     $this->view->galleryHeader = $galleryHeader;
     $this->view->latestImage = $latestImage;
     $this->view->featured_culture = $featured_culture;
     $this->view->news = $news->toArray();
     $this->view->event = $event;
     $this->view->destSearchForm = $destSearchForm;
     $this->view->useFeaturedSlideshow = true;
     $this->view->featuredCulture = $featured_culture;
     $this->view->activitySearchForm = $activitySearchForm;
     $this->view->highlight = $highlightMed;
     //    $this->view->videos = $videos;
     $this->view->languageID = $this->_languageId;
     $this->view->useGoogleExperiment = true;
     $this->view->langId = $this->_languageId;
     $this->view->homepage = true;
     $this->view->figures = $this->figure->findAll($this->_languageId, 2)->toArray();
 }
コード例 #4
0
 /**
  * IS: -
  * FS: Mengirimkan ke viewer: destination, news, event, destSearchForm, 
  *     activitySearchForm, highlight, video
  * Desc: Fungsi untuk menampilkan halaman depan
  */
 public function indexAction()
 {
     $this->_helper->layout->setLayout('kebudayaan');
     // Model
     $destinationDb = new Model_DbTable_Destination();
     $eventDb = new Model_DbTable_Event();
     $highlightDb = new Model_DbTable_Highlight();
     //    $videoModel = new Model_Video;
     $galleryModel = new Model_DbTable_Image();
     // Data
     $galleryHeader = $highlightDb->getGalleryHeader();
     $featured_culture = $destinationDb->getFeaturedCulture($this->_languageId, 4);
     //generate news
     $news = $this->news->getLastNews($this->_languageId, 4);
     $event = $eventDb->getFourClosestEvent($this->_languageId);
     $highlightMed = $highlightDb->getMainType(2, $this->_languageId);
     //    $videos = $videoModel->getMostViewedVideos($startIndexVideo, $maxResultVideo);
     $latestImage = $galleryModel->getTenLastImage(1, false, true);
     $activeHeaders = $highlightDb->getActiveHeaders($this->_languageId);
     if (count($activeHeaders) == 0) {
         $activeHeaders = $highlightDb->getActiveHeaders();
     }
     $this->view->activeHeaders = $activeHeaders;
     // Passing ke view
     $this->view->galleryHeader = $galleryHeader;
     $this->view->latestImage = $latestImage;
     $this->view->featured_culture = $featured_culture;
     $this->view->news = $news->toArray();
     $this->view->event = $event;
     $this->view->useFeaturedSlideshow = true;
     $this->view->featuredCulture = $featured_culture;
     $this->view->highlight = $highlightMed;
     //    $this->view->videos = $videos;
     $this->view->languageID = $this->_languageId;
     $this->view->useGoogleExperiment = true;
     $this->view->langId = $this->_languageId;
     $this->view->homepage = true;
     $this->view->figures = $this->figure->findAll($this->_languageId, 2)->toArray();
     $this->view->headMeta()->appendName('keywords', join(', ', $this->_meta));
     $this->view->headMeta()->appendName('description', "kebudayaanindonesia.net adalah laman referensi kebudayaan Indonesia untuk mewujudkan bangsa Indonesia yang cerdas dan berbudaya");
 }
コード例 #5
0
    public function newsWidget($news_limit, $show_thumbnails = false, $side_space = true)
    {
        $language_id = Zend_Registry::get('languageId');
        $cache = Zend_Registry::get('cache');
        if (($widget = $cache->load('widget_news')) === false) {
            $title = $this->view->translate('recent_news');
            $tbl_news = new Model_DbTable_News();
            $arr_news = $tbl_news->getLastNews($language_id, $news_limit)->toArray();
            $list = "<ul>";
            $thumbnails = '';
            foreach ($arr_news as $news) {
                $link = $this->view->baseUrl('news/detail/' . $news['id'] . '/' . $this->view->makeUrlFormat($news['title']));
                if ($show_thumbnails) {
                    $source = 'default.jpg';
                    if (file_exists(UPLOAD_FOLDER . "news/{$news['image']}") && !empty($news['image'])) {
                        $source = "upload/news/{$news['image']}";
                    }
                    $thumbs = $this->view->imageUrl("timthumb.php?src={$source}&w=50&h=50&q=100");
                    $thumbnails = "<img src='{$thumbs}' class='thumbnail' alt='{$news['title']}' />";
                }
                $list .= "<li>{$thumbnails}<a href='{$link}'><span class='desc'>{$news['title']}</span></a></li>";
            }
            $list .= "</ul>";
            $list .= "<div class='clear'></div>";
            if ($side_space) {
                $side_space_class = 'side-space';
            }
            $widget = <<<HTML
    <div class="widget-half-list {$side_space_class}">      
      <h2>{$title}</h2>            
      {$list}      
    </div>
HTML;
            $cache->save($widget);
        }
        return $widget;
    }
コード例 #6
0
 public function newspagingAction()
 {
     $this->_helper->layout->disableLayout();
     /* disable layout */
     $this->_helper->viewRenderer->setNoRender(true);
     /* supaya tidak render view */
     $limit = $this->_getParam(urldecode('paramLimit'));
     $offset = $this->_getParam(urldecode('paramOffset'));
     $param = $this->_getParam(urldecode('paramKey'));
     $generateNews = new Model_DbTable_News();
     $getResultNews = $generateNews->searchNewsBaru($param, $limit, $offset, $this->_languageId);
     //$getResultNews = $generateNews->searchNews($param,$limit,$offset,$this->_languageId);
     $data['result'] = '';
     foreach ($getResultNews as $rowNews) {
         $title = $this->view->boldStyle(strtolower($rowNews['title']), $param);
         $data['result'] .= '<li>';
         $data['result'] .= '<a href="' . $this->_request->getBaseUrl() . '/' . $this->lang . '/news/detail/' . $rowNews['id'] . '/' . $this->view->makeUrlFormat($rowNews['title']) . '" title="' . $rowNews['title'] . '">' . ltrim($title) . '</a>';
         $data['result'] .= '<br /><br />' . substr(strip_tags($this->view->htmlDecode($rowNews['content'])), 0, 225) . ' ...';
         $data['result'] .= '</li>';
     }
     /* - - - - - - - - - - - link pages - - - - - - - - - -  - - - - -  - -*/
     $action_query = $this->_getParam(urldecode('actionQuery'));
     switch ($action_query) {
         case 'next':
             $curpageNews = $this->_getParam(urldecode('paramPage')) + 1;
             break;
         case 'prev':
             $curpageNews = $this->_getParam(urldecode('paramPage')) - 1;
             break;
         default:
             $curpageNews = $this->_getParam(urldecode('paramPage')) + 1;
             break;
     }
     $num_linkNews = NUM_LINKS;
     $per_pageNews = $limit;
     $getTotalNews = $generateNews->numbRowsNews($param, $this->_languageId);
     $num_pageNews = ceil($getTotalNews / $limit);
     $startNews = $curpageNews - $num_linkNews > 0 ? $curpageNews - ($num_linkNews - 1) : 1;
     $endNews = $curpageNews + $num_linkNews < $num_pageNews ? $curpageNews + $num_linkNews : $num_pageNews;
     $data['start'] = $startNews;
     $data['end'] = $endNews;
     $data['per_pages'] = $per_pageNews;
     $data['cur_pages'] = $curpageNews;
     $data['all_page'] = $getTotalNews;
     /* - - - - - - - - - - - end link pages - - - - - - - -  - - - - -  - -*/
     $data['offset'] = $offset + $limit;
     $data['curpages'] = $curpageNews;
     echo json_encode($data);
 }
コード例 #7
0
 /**
  * IS: Parameter id terdeklarasi
  * FS: Mengirimkan ke viewer: form, image, require_image, news_id
  * Desc: Mengatur aksi yang dilakukan untuk halaman edit
  */
 public function editAction()
 {
     $language_id = $this->_getParam('lang');
     $news_id = $this->_getParam('id');
     $form = new Admin_Form_NewsForm();
     $table_news = new Model_DbTable_News();
     $table_newsDesc = new Model_DbTable_NewsDesc();
     $table_poitonews = new Model_DbTable_PoiToNews();
     if ($this->getRequest()->isPost()) {
         if ($form->isValid($_POST)) {
             /** Preparing the date insert */
             if ($language_id != 1) {
                 $indo = $table_newsDesc->checkForIndo($news_id);
                 if ($indo) {
                     $title = preg_replace("/'/", "&#39;", $_POST['newsTitle']);
                     $content = preg_replace("/'/", "&#39;", $_POST['newsContent']);
                     $data = array('news_id' => $news_id, 'language_id' => $language_id, 'title' => $title, 'content' => $content);
                     $table_newsDesc->updateNewsDescription($data, $news_id, $language_id);
                 } else {
                     $title = preg_replace("/'/", "&#39;", $_POST['newsTitle']);
                     $content = preg_replace("/'/", "&#39;", $_POST['newsContent']);
                     $data = array('news_id' => $news_id, 'language_id' => $language_id, 'title' => $title, 'content' => $content);
                     $table_newsDesc->insertNewsDescription($data);
                 }
             } else {
                 $tUnixTime = time();
                 date_default_timezone_set('Asia/Jakarta');
                 $GMTMySqlString = date("Y-m-d H:i:s", $tUnixTime);
                 $GMTMySqlTimeString = date("H:i:s", $tUnixTime);
                 $publish_date = $_POST['newsPublishDate'] . ' ' . $GMTMySqlTimeString;
                 if ($_POST['newsImage']['name'] == '') {
                     $data = array('news_date' => $GMTMySqlString, 'publish_date' => $publish_date, 'showing' => $_POST['newsStatus']);
                     $this->_flash->addMessage('3\\Warning: Data is saved without image!');
                 } else {
                     $image = preg_replace("/'/", "&#39;", $_POST['newsImage']);
                     $data = array('picture' => $image, 'news_date' => $GMTMySqlString, 'publish_date' => $publish_date, 'showing' => $_POST['newsStatus']);
                 }
                 $table_news->updateNews($data, $news_id);
                 $title = preg_replace("/'/", "&#39;", $_POST['newsTitle']);
                 $content = preg_replace("/'/", "&#39;", $_POST['newsContent']);
                 $data = array('title' => $title, 'content' => $content);
                 $table_newsDesc->updateNewsDescription($data, $news_id, $language_id);
                 $poi_count = $_POST['PoiCounter'];
                 $poi_stack = array();
                 for ($i = 0; $i < $poi_count; $i++) {
                     if (!empty($_POST['poiValue' . $i])) {
                         array_push($poi_stack, $_POST['poiValue' . $i]);
                     }
                 }
                 /**
                  * Get related poi list from the database
                  * and convert to a NON ASSOC Array
                  */
                 $poi_list = $table_poitonews->getAllPoiByNewsId($news_id, $language_id);
                 $saved_poi = array();
                 if (!empty($poi_list)) {
                     foreach ($poi_list as $temp) {
                         array_push($saved_poi, $temp['poi_id']);
                     }
                 }
                 /**
                  * Check from the post list, compare with saved poi;
                  * if not exist then insert the new poi
                  */
                 foreach ($poi_stack as $poi_id) {
                     if (!in_array($poi_id, $saved_poi)) {
                         $data = array('poi_id' => $poi_id, 'news_id' => $news_id);
                         $table_poitonews->insertPoiNews($data);
                     }
                 }
                 /**
                  * Do the complementary process,
                  * if the old poi did not exist in the new list
                  * then delete the old one
                  */
                 foreach ($saved_poi as $old_poi) {
                     if (!in_array($old_poi, $poi_stack)) {
                         $table_poitonews->deletePoiNews($news_id, $old_poi);
                     }
                 }
             }
             $this->loggingaction('news', 'edit', $news_id, $language_id);
             $this->_flash->addMessage("1\\News Update Success!");
             $this->_redirect($this->view->rootUrl('/admin/news/'));
         }
     }
     $image = $table_news->getPictureById($news_id);
     if ($image == '') {
         $this->view->require_image = TRUE;
     } else {
         $this->view->image = $image;
     }
     if ($language_id != 1) {
         $indo = $table_newsDesc->checkForIndo($news_id);
         if ($indo) {
             $data = $table_news->getAllWithDescById($news_id, $language_id);
         }
     } else {
         $data = $table_news->getAllWithDescById($news_id, $language_id);
     }
     $news_count = $table_poitonews->countPoiNewsByNewsId($news_id);
     $date = explode(' ', $data['publish_date']);
     $form->newsTitle->setValue($data['title']);
     $form->newsContent->setValue($data['content']);
     $form->newsImage->setValue($data['picture']);
     $form->newsPublishDate->setValue($date[0]);
     $form->PoiCounter->setValue($news_count);
     $this->view->language_id = $language_id;
     $this->view->form = $form;
     $this->view->news_id = $news_id;
 }
コード例 #8
0
 /**
  * 内容查询
  *
  */
 public function searchAction()
 {
     //获取页面提交参数
     $keyWord = urldecode($this->_request->getParam('keyWord'));
     $page = $this->_request->getParam('page');
     $this->view->keyWord = urlencode($keyWord);
     //关键字数组
     $keywordsStrArray = explode(' ', $keyWord);
     $this->view->keywordsStrArray = $keywordsStrArray;
     //开始查询
     $array = array();
     //新闻
     $model = new Model_DbTable_News();
     $infos = $model->findByLike($keyWord);
     $tmpArray = array();
     foreach ($infos as $info) {
         $tmpArray['flag'] = 0;
         $tmpArray['id'] = $info['id'];
         $tmpArray['title'] = $info['title'];
         $tmpArray['uncontent'] = $info['uncontent'];
         $tmpArray['addtime'] = $info['addtime'];
         array_push($array, $tmpArray);
     }
     //分页参数
     if ($page == null) {
         $page = 1;
     }
     $pageRange = 10;
     $itemCountPerPage = 10;
     //实例并构建Zend_Paginator对象
     $paginatorAdapter = new Zend_Paginator_Adapter_Array($array);
     $paginator = new Zend_Paginator($paginatorAdapter);
     $paginator->setPageRange($pageRange)->setItemCountPerPage($itemCountPerPage)->setCurrentPageNumber($page);
     $this->view->paginator = $paginator;
     //设置布局
     $this->_helper->layout->disableLayout();
     //页面信息
     $this->view->title = '内容查询-' . $this->_config['pageInfo']['default']['title'];
 }
コード例 #9
0
     $table_highlight = new Model_DbTable_Highlight();
     $table_highlight_desc = new Model_DbTable_HighlightDescription();
     $table_highlight_desc->deleteHighlight2($highlight_id);
     $this->loggingaction('highlight', 'delete', $highlight_id);
     $this->_flash->addMessage("1\\Highlight Indonesian Translation Delete Success!");
 }
 public function deletehighlightenglishAction()
 {
     $highlight_id = $this->_getParam('highlightid');
     $table_highlight = new Model_DbTable_Highlight();
     $table_highlight_desc = new Model_DbTable_HighlightDescription();
     $table_highlight_desc->deleteHighlightenglish($highlight_id);
     $this->loggingaction('highlight', 'delete', $highlight_id);
     $this->_flash->addMessage("1\\Highlight Indonesian Translation Delete Success!");
 }
 /**
  * IS: News ada
  * FS: News tidak ada
  * Desc: Fungsi untuk menghapus news dari basis data
  */
 public function deletenewsAction()
コード例 #10
0
 public function contestmoreAction()
 {
     $uid = Zend_Registry::get('uid');
     $id = $this->_request->getParam('id');
     $this->view->dugaar = $id;
     $q = $this->_request->getParam('q');
     if ($q == 'signup') {
         $this->view->is = 'signup';
     }
     if ($q == 'rating') {
         $this->view->is = 'rating';
     }
     if ($q == 'davaa') {
         $this->view->is = 'davaa';
     }
     $tmp = 0;
     $davaas = new Model_DbTable_Davaa();
     $this->view->davaa = $davaas->fetchAll($davaas->select()->where('fantasy_id =' . $id . ' AND active =' . $tmp));
     $tmp = 1;
     $this->view->davaaduussan = $davaas->fetchAll($davaas->select()->where('fantasy_id =' . $id . ' AND active =' . $tmp));
     $fantasys = new Model_DbTable_Fantasy();
     $fantasy = $fantasys->fetchAll($fantasys->select()->where('id=' . $id));
     foreach ($fantasy as $key => $value) {
         $this->view->fantasyname = $value['name'];
     }
     $users = new Model_DbTable_Users();
     $this->view->user = $users->fetchAll($users->select());
     $gals = new Model_DbTable_Gal();
     $this->view->galuud = $gals->fetchAll($gals->select());
     $this->view->gal = $gals->fetchAll($gals->select()->where('ezen_id =' . $uid));
     $gald = $gals->fetchAll($gals->select()->where('ezen_id =' . $uid));
     $gid = 0;
     foreach ($gald as $key => $value) {
         $gid = $value['id'];
     }
     $scores = new Model_DbTable_Score();
     $this->view->rating = $scores->fetchAll($scores->select()->where('fantasyid =' . $id)->order('total_score DESC'));
     $this->view->score = $scores->fetchAll($scores->select()->where('galid =' . $gid . ' AND fantasyid=' . $id));
     $form = new Form_Comment();
     $request = $this->getRequest();
     if ($request->isPost()) {
         if ($form->isValid($this->_request->getPost())) {
             $content = $this->_request->getParam('commentbody');
             $content = $this->check($content);
             $uid = Zend_Registry::get('uid');
             $date = date("Y-m-d H:i:s");
             $uri = 'index/index/id/' . $id;
             $comments = new Model_DbTable_Comment();
             $comments->insert(array('uri' => $uri, 'content' => $content, 'uid' => $uid, 'date' => $date));
             $this->_redirect('news/more/id/' . $id);
         }
     }
     $form->setAction('../../index/index');
     $this->view->form = $form;
     $news = new Model_DbTable_News();
     $this->view->news = $news->fetchAll($news->select()->where('isactive = 1')->order('isping DESC')->order('date DESC'));
     $this->view->news1 = $news->fetchAll($news->select()->where('isactive = 0')->order('date DESC'));
     $page = 0;
     if ($this->_request->getParam("page") != null) {
         $page = $this->_request->getParam("page");
     }
     $this->view->page = $page;
     $q = $news->fetchAll($news->select()->where('isactive = 1')->order('isping DESC')->order('date DESC'));
     $id = $this->_request->getParam('id');
     $this->view->dugaar = $id;
     $paginator = Zend_Paginator::factory($q);
     $paginator->setItemCountPerPage("6")->setCurrentPageNumber($this->_getParam('page', 1));
     $this->view->medee = $paginator;
     $comments = new Model_DbTable_Comment();
     $this->view->comment = $comments->fetchAll($comments->select()->order('date DESC'));
 }
コード例 #11
0
 /**
  * IS: Parameter id terdeklarasi
  * FS: Mengirimkan ke viewer: form, image, require_image, news_id
  * Desc: Mengatur aksi yang dilakukan untuk halaman edit
  */
 public function editAction()
 {
     $language_id = $this->_getParam('lang');
     $news_id = $this->_getParam('id');
     $form = new Admin_Form_NewsForm();
     $table_news = new Model_DbTable_News();
     $table_newsDesc = new Model_DbTable_NewsDesc();
     $table_poitonews = new Model_DbTable_PoiToNews();
     $table_related_article_news = new Model_DbTable_RelatedArticleNews();
     // untuk menampilkan list related link article yang berhubungan dengan
     // content news
     $related_news = $table_related_article_news->getByNewsId($news_id, $language_id);
     $this->view->edit = 1;
     $this->view->ralated_news = $related_news;
     $this->view->news_id = $news_id;
     if ($this->getRequest()->isPost()) {
         if ($form->isValid($_POST)) {
             /** Preparing the date insert */
             if ($language_id == 1) {
                 // echo 'SINI';
                 // exit;
                 $indo = $table_newsDesc->checkForIndo($news_id, $language_id);
                 if ($indo) {
                     $title = preg_replace("/'/", "&#39;", $_POST['newsTitle']);
                     $content = preg_replace("/'/", "&#39;", $_POST['newsContent']);
                     $data = array('news_id' => $news_id, 'language_id' => $language_id, 'title' => $title, 'content' => $content);
                     $table_newsDesc->updateNewsDescription($data, $news_id, $language_id);
                 } else {
                     $title = preg_replace("/'/", "&#39;", $_POST['newsTitle']);
                     $content = preg_replace("/'/", "&#39;", $_POST['newsContent']);
                     $data = array('news_id' => $news_id, 'language_id' => $language_id, 'title' => $title, 'content' => $content);
                     $table_newsDesc->insertNewsDescription($data);
                 }
             } else {
                 $tUnixTime = time();
                 date_default_timezone_set('Asia/Jakarta');
                 $GMTMySqlString = date("Y-m-d H:i:s", $tUnixTime);
                 $GMTMySqlTimeString = date("H:i:s", $tUnixTime);
                 $publish_date = $_POST['newsPublishDate'] . ' ' . $GMTMySqlTimeString;
                 if ($_POST['newsImage']['name'] == '') {
                     $data = array('news_date' => $GMTMySqlString, 'publish_date' => $publish_date, 'showing' => $_POST['newsStatus']);
                     $this->_flash->addMessage('3\\Warning: Data is saved without image!');
                 } else {
                     $image = preg_replace("/'/", "&#39;", $_POST['newsImage']);
                     $data = array('picture' => $image, 'news_date' => $GMTMySqlString, 'publish_date' => $publish_date, 'showing' => $_POST['newsStatus']);
                 }
                 $table_news->updateNews($data, $news_id);
                 $title = preg_replace("/'/", "&#39;", $_POST['newsTitle']);
                 $content = preg_replace("/'/", "&#39;", $_POST['newsContent']);
                 $hasIndoDesc = $table_newsDesc->checkForIndo($news_id, $language_id);
                 if (empty($hasIndoDesc)) {
                     $data = array('news_id' => $news_id, 'language_id' => $language_id, 'title' => $title, 'content' => $content);
                     $table_newsDesc->insertNewsDescription($data);
                 } else {
                     $data = array('title' => $title, 'content' => $content);
                     $table_newsDesc->updateNewsDescription($data, $news_id, $language_id);
                 }
                 $poi_count = $_POST['PoiCounter'];
                 $poi_stack = array();
                 for ($i = 0; $i < $poi_count; $i++) {
                     if (!empty($_POST['poiValue' . $i])) {
                         array_push($poi_stack, $_POST['poiValue' . $i]);
                     }
                 }
                 /**
                  * Get related poi list from the database
                  * and convert to a NON ASSOC Array
                  */
                 $poi_list = $table_poitonews->getAllPoiByNewsId($news_id, $language_id);
                 $saved_poi = array();
                 if (!empty($poi_list)) {
                     foreach ($poi_list as $temp) {
                         array_push($saved_poi, $temp['poi_id']);
                     }
                 }
                 /**
                  * Check from the post list, compare with saved poi;
                  * if not exist then insert the new poi
                  */
                 foreach ($poi_stack as $poi_id) {
                     if (!in_array($poi_id, $saved_poi)) {
                         $data = array('poi_id' => $poi_id, 'news_id' => $news_id);
                         $table_poitonews->insertPoiNews($data);
                     }
                 }
                 /**
                  * Do the complementary process,
                  * if the old poi did not exist in the new list
                  * then delete the old one
                  */
                 foreach ($saved_poi as $old_poi) {
                     if (!in_array($old_poi, $poi_stack)) {
                         $table_poitonews->deletePoiNews($news_id, $old_poi);
                     }
                 }
             }
             /* update related article */
             // this part add related
             if ($_POST['counterRelated'] > 0) {
                 $counter = $_POST['counterRelated'];
                 for ($i = 1; $i <= $counter; $i++) {
                     if (isset($_POST['label' . $i])) {
                         //cek existing data ke database
                         // jika data link dan label yang dikirim dari viwer blm ada di database, maka akan di simpan sebagai data baru
                         //cek akan bernilai true jika data blm ada didatabase
                         $cek = $table_related_article_news->cek_existing($_POST['label' . $i], $_POST['link' . $i], $language_id);
                         // print_r($cek);
                         if (!$cek or $cek == false) {
                             $data = array('news_id' => $news_id, 'label' => $_POST['label' . $i], 'link' => $_POST['link' . $i], 'language_id' => $language_id);
                             //print_r($data);
                             $table_related_article_news->insertRelated($data);
                         }
                     }
                 }
                 //exit;
             }
             // part untuk menghapus data dari database
             // bagian inin akan dijalankan apabila ada request
             // delete dari viewer
             if ($_POST['counterDel'] > 0) {
                 $counterDel = $_POST['counterDel'];
                 for ($i = 1; $i <= $counterDel; $i++) {
                     if (isset($_POST['labeldel' . $i])) {
                         // cek terlebih dahulu ke database
                         // jika data yang sesuai dengan data yg dikirmkan ada
                         // maka lakukan penghapusan
                         $cek = $table_related_article_news->cek_existing_forDel($_POST['labeldel' . $i], $_POST['linkdel' . $i], $language_id);
                     }
                 }
             }
             $this->loggingaction('news', 'edit', $news_id, $language_id);
             $this->_flash->addMessage("1\\News Update Success!");
             $this->_redirect($this->view->rootUrl('/admin/newsindo/'));
         }
     }
     $image = $table_news->getPictureById($news_id);
     if ($image == '') {
         $this->view->require_image = TRUE;
     } else {
         $this->view->image = $image;
     }
     //        di uncomment
     $setContent = true;
     if ($language_id == 1) {
         $indo = $table_newsDesc->checkForIndo($news_id, $language_id);
         if ($indo) {
             $data = $table_news->getAllWithDescById($news_id, $language_id);
             //                di uncomment
             $setContent = true;
         } else {
             $data = $table_news->getAllWithDescById($news_id, 2);
         }
     } else {
         $data = $table_news->getAllWithDescById($news_id, $language_id);
         //                        di uncomment
         if (empty($data)) {
             $setContent = true;
             //karena belum ada terjemahan dlm bahasa ini jadi form deskripsi dikosongkan
             $data = $table_news->getAllWithDescById($news_id, 1);
         }
     }
     $news_count = $table_poitonews->countPoiNewsByNewsId($news_id);
     $date = explode(' ', $data['publish_date']);
     $form->newsTitle->setValue($data['title']);
     //        if($setContent)
     if ($language_id == 2) {
         $form->newsContent->setValue($data['content']);
     } else {
         $form->newsContent->setValue('');
     }
     $form->newsImage->setValue($data['picture']);
     $form->newsPublishDate->setValue($date[0]);
     $form->PoiCounter->setValue($news_count);
     //        $this->view->language_id = $language_id;
     $this->view->form = $form;
     $this->view->news_id = $news_id;
 }
コード例 #12
0
 public function approveAction()
 {
     $this->_helper->viewRenderer->setNoRender(true);
     if ($this->_userInfo->canApprove) {
         $tbl_news = new Model_DbTable_News();
         $id = $this->_getParam('id');
         $data = array("status" => Model_DbTable_News::PUBLISH);
         $tbl_news->fetchRow(array("news_id = ?" => $id))->setFromArray($data)->save();
         $this->_flashMessenger->addMessage('News approved successfully');
     }
     $this->_helper->redirector('index');
 }
コード例 #13
0
ファイル: IndexController.php プロジェクト: MonCoder189/Work
 public function moreAction()
 {
     $id = $this->_request->getParam('id');
     $this->view->iid = $id;
     $news = new Model_DbTable_News();
     $this->view->news = $news->fetchAll($news->select()->where('id = ' . $id . ' AND isactive = 1'));
 }