コード例 #1
0
 /**
  * Creates a new model.
  * If creation is successful, the browser will be redirected to the 'view' page.
  */
 public function actionAjaxManage($id)
 {
     $model = AlbumPhoto::getPhoto($id);
     $setting = AlbumSetting::model()->findByPk(1, array('select' => 'photo_limit'));
     $data = '';
     if ($model != null) {
         foreach ($model as $key => $val) {
             $image = Yii::app()->request->baseUrl . '/public/album/' . $val->album_id . '/' . $val->media;
             $url = Yii::app()->controller->createUrl('ajaxdelete', array('id' => $val->media_id));
             $urlCover = Yii::app()->controller->createUrl('ajaxcover', array('id' => $val->media_id));
             $data .= '<li>';
             if ($val->cover == 0) {
                 $data .= '<a id="set-cover" href="' . $urlCover . '" title="' . Phrase::trans(26108, 1) . '">' . Phrase::trans(26108, 1) . '</a>';
             }
             $data .= '<a id="set-delete" href="' . $url . '" title="' . Phrase::trans(24012, 1) . '">' . Phrase::trans(24012, 1) . '</a>';
             $data .= '<img src="' . Utility::getTimThumb($image, 320, 250, 1) . '" alt="' . $val->album->title . '" />';
             $data .= '</li>';
         }
     }
     if (isset($_GET['replace'])) {
         // begin.Upload Button
         $class = count($model) == $setting->photo_limit ? 'class="hide"' : '';
         $url = Yii::app()->controller->createUrl('ajaxadd', array('id' => $id));
         $data .= '<li id="upload" ' . $class . '>';
         $data .= '<a id="upload-gallery" href="' . $url . '" title="' . Phrase::trans(26054, 1) . '">' . Phrase::trans(26054, 1) . '</a>';
         $data .= '<img src="' . Utility::getTimThumb(Yii::app()->request->baseUrl . '/public/album/album_default.png', 320, 250, 1) . '" alt="" />';
         $data .= '</li>';
         // end.Upload Button
     }
     $data .= '';
     $result['data'] = $data;
     echo CJSON::encode($result);
 }
コード例 #2
0
 /**
  * Displays a particular model.
  * @param integer $id the ID of the model to be displayed
  */
 public function actionView($id)
 {
     $setting = AlbumSetting::model()->findByPk(1, array('select' => 'meta_keyword'));
     $model = $this->loadModel($id);
     Albums::model()->updateByPk($id, array('view' => $model->view + 1));
     $photo = AlbumPhoto::model()->findAll(array('condition' => 'album_id = :id', 'params' => array(':id' => $model->album_id), 'order' => 'media_id DESC'));
     $this->pageTitleShow = true;
     $this->pageTitle = $model->title;
     $this->pageDescription = Utility::shortText(Utility::hardDecode($model->body), 300);
     $this->pageMeta = $setting->meta_keyword;
     $this->render('front_view', array('model' => $model, 'photo' => $photo));
 }
コード例 #3
0
 /**
  * Displays a particular model.
  * @param integer $id the ID of the model to be displayed
  */
 public function actionView($id)
 {
     $setting = AlbumSetting::model()->findByPk(1, array('select' => 'meta_keyword'));
     $model = $this->loadModel($id);
     Albums::model()->updateByPk($id, array('view' => $model->view + 1));
     $photo = AlbumPhoto::model()->findAll(array('condition' => 'album_id = :id', 'params' => array(':id' => $model->album_id), 'order' => 'media_id DESC'));
     //Random Article
     $criteria = new CDbCriteria();
     $criteria->condition = 'publish = :publish AND album_id <> :id';
     $criteria->params = array(':publish' => 1, ':id' => $id);
     $criteria->order = 'RAND()';
     $criteria->limit = 4;
     $random = Albums::model()->findAll($criteria);
     $this->pageTitleShow = true;
     $this->pageTitle = $model->title;
     $this->pageDescription = Utility::shortText(Utility::hardDecode($model->body), 300);
     $this->pageMeta = $setting->meta_keyword;
     if ($model->media_id != 0 && $model->cover->media != '') {
         $media = Yii::app()->request->baseUrl . '/public/album/' . $id . '/' . $model->cover->media;
         $this->pageImage = $media;
     }
     $this->render('front_view', array('model' => $model, 'photo' => $photo, 'random' => $random));
 }
コード例 #4
0
 /**
  * Returns the data model based on the primary key given in the GET variable.
  * If the data model is not found, an HTTP exception will be raised.
  * @param integer the ID of the model to be loaded
  */
 public function loadModel($id)
 {
     $model = AlbumSetting::model()->findByPk($id);
     if ($model === null) {
         throw new CHttpException(404, Yii::t('phrase', 'The requested page does not exist.'));
     }
     return $model;
 }
コード例 #5
0
 /**
  * Updates a particular model.
  * If update is successful, the browser will be redirected to the 'view' page.
  * @param integer $id the ID of the model to be updated
  */
 public function actionEdit($id)
 {
     $model = $this->loadModel($id);
     $setting = AlbumSetting::model()->findByPk(1, array('select' => 'photo_limit, meta_keyword'));
     $tag = AlbumTag::model()->findAll(array('condition' => 'album_id = :id', 'params' => array(':id' => $model->album_id)));
     // Uncomment the following line if AJAX validation is needed
     $this->performAjaxValidation($model);
     if (isset($_POST['Albums'])) {
         $model->attributes = $_POST['Albums'];
         $jsonError = CActiveForm::validate($model);
         if (strlen($jsonError) > 2) {
             $errors = $model->getErrors();
             $summary['msg'] = "<div class='errorSummary'><strong>" . Yii::t('phrase', 'Please fix the following input errors:') . "</strong>";
             $summary['msg'] .= "<ul>";
             foreach ($errors as $key => $value) {
                 $summary['msg'] .= "<li>{$value[0]}</li>";
             }
             $summary['msg'] .= "</ul></div>";
             $message = json_decode($jsonError, true);
             $merge = array_merge_recursive($summary, $message);
             $encode = json_encode($merge);
             echo $encode;
         } else {
             if (isset($_GET['enablesave']) && $_GET['enablesave'] == 1) {
                 if ($model->save()) {
                     echo CJSON::encode(array('type' => 0, 'msg' => '<div class="errorSummary success"><strong>' . Yii::t('phrase', 'Album success updated.') . '</strong></div>'));
                 } else {
                     print_r($model->getErrors());
                 }
             }
         }
         Yii::app()->end();
     } else {
         $this->pageTitle = Yii::t('phrase', 'Update Album') . ': ' . $model->title;
         $this->pageDescription = '';
         $this->pageMeta = '';
         $this->render('admin_edit', array('model' => $model, 'setting' => $setting, 'tag' => $tag));
     }
 }