public function actionDelete_bookmark()
 {
     if (Yii::app()->user->isGuest) {
         $this->redirect($this->createAbsoluteUrl('base'));
     }
     if (Yii::app()->request->isAjaxRequest) {
         if (isset($_POST['idBookmarks'])) {
             Bookmarks::model()->deleteByPk($_POST['idBookmarks']);
             echo CJSON::encode(array('status' => 'ok'));
             exit;
         }
     }
 }
 public function actionDelete()
 {
     $token = Yii::app()->request->getPost('token');
     $user = Users::model()->find('`key` = :key', ['key' => $token]);
     if ($user === null) {
         $this->renderJSON(['is_error' => true, 'message' => 'Invalid User Token']);
     }
     $bookmark = Bookmarks::model()->findByPk(Yii::app()->request->getPost('bk_id'));
     $count = 0;
     if ($bookmark !== null && $bookmark->user_id == $user->id) {
         $bookmark->delete();
         $count++;
     }
     $this->renderJSON(['is_error' => false, 'data' => ['rows_deleted' => $count], 'message' => 'Success']);
 }
 /**
  * Кабинет пользователя
  */
 public function actionUser_cabinet()
 {
     if (Yii::app()->request->isAjaxRequest) {
         if (isset($_POST['Users'])) {
             $model = Users::model()->findByPk($_POST['Users']['idUser']);
             $oldFile = null;
             $fileName = null;
             // Генерим имя фото
             if ('' != $_FILES['Users']['name']['image']) {
                 $fileName = AuxiliaryFunctions::getUniquNamePhoto($_FILES['Users']['name']['image']);
                 $_POST['Users']['photo'] = $fileName;
                 $oldFile = $model->photo;
             }
             $model->attributes = $_POST['Users'];
             if ($model->save(false)) {
                 if ($fileName) {
                     AuxiliaryFunctions::savePhoto($model, $fileName, $oldFile);
                 }
                 if (Yii::app()->request->isAjaxRequest) {
                     echo CJSON::encode(array('result' => 'ok'));
                     exit;
                 }
             } else {
                 if (Yii::app()->request->isAjaxRequest) {
                     echo CJSON::encode(array('error' => 'save'));
                     exit;
                 }
             }
         }
     }
     if (Yii::app()->user->isGuest || 'Admins' == Yii::app()->session->get("typeAuthorize") || !isset($_GET['idUser']) || $_GET['idUser'] != Yii::app()->user->id) {
         $this->redirect(Yii::app()->homeUrl);
     } else {
         $model = Users::model()->findByPk($_GET['idUser']);
     }
     $artWaitingModeration = Articles::model()->count('idUser = :idUser AND moderationAppruv = 0', array(":idUser" => $_GET['idUser']));
     $artPublication = Articles::model()->count('idUser = :idUser AND public = 1', array(":idUser" => $_GET['idUser']));
     $menuInBookmarks = Bookmarks::model()->getUserBookmarks(Yii::app()->user->id);
     $this->render('user_cabinet', array('model' => $model, 'tabArticles' => array('artWaitingModeration' => $artWaitingModeration, 'artPublication' => $artPublication, 'menuInBookmarks' => $menuInBookmarks)));
 }
 public function actionEdit()
 {
     $bookmark = Bookmarks::model()->findByPk(Yii::app()->request->getParam('bkid'));
     if ($bookmark === null) {
         $this->redirect(['index/index']);
     }
     if (Yii::app()->request->isPostRequest) {
         $bookmark->title = Yii::app()->request->getPost('bk_title');
         $bookmark->url = Yii::app()->request->getPost('bk_url');
         $bookmark->note = Yii::app()->request->getPost('bk_note');
         $list = Lists::model()->findByPk(Yii::app()->request->getPost('bk_list'));
         if ($list !== null && $list->user_id == Yii::app()->user->id) {
             $bookmark->list_id = $list->id;
         } else {
             $bookmark->list_id = null;
         }
         $bookmark->save();
         $this->redirect(['index/index']);
     }
     $lists = Yii::app()->user->model->lists;
     $this->render('edit', ['bookmark' => $bookmark, 'lists' => $lists]);
 }
 /**
  * Просмотр статьи с комментами
  */
 public function actionView_article()
 {
     if (isset($_GET['idArticle']) || isset($_POST['idArticle'])) {
         $idArticle = isset($_GET['idArticle']) ? $_GET['idArticle'] : $_POST['idArticle'];
         $criteria = new CDbCriteria();
         // Комментарии к статье
         $criteria->with = array('idUser0');
         $criteria->condition = 'idArticle = :idArticle AND deleted = 0 AND public = 1';
         $criteria->params = array(':idArticle' => $idArticle);
         $comments = Comments::model()->findAll($criteria);
         $commentsDataProvider = new CArrayDataProvider($comments, array('keyField' => 'idComment', 'pagination' => array('pageSize' => 50)));
         // Статья
         $criteria->with = array('idCategory0', 'idMenu0', 'idUser0', 'commentsCount', 'tagstoarticles');
         $criteria->condition = 't.idArticle = :idArticle AND moderationAppruv = 1 AND public = 1 AND deleted = 0';
         if (Yii::app()->request->isAjaxRequest) {
             if (isset($_POST['type'])) {
                 if ('appruve' == $_POST['type']) {
                     $criteria->condition = 't.idArticle = :idArticle AND moderationAppruv = 0 AND deleted = 0';
                 }
             }
         }
         $criteria->params = array(':idArticle' => $idArticle);
         $model = Articles::model()->find($criteria);
         // Теги
         $model['tagArray'] = AuxiliaryFunctions::getTagsList($model->tagstoarticles);
         // Счетчик просмотров статьи
         if ($model->idUser != Yii::app()->user->id && 'Admins' != Yii::app()->session->get("typeAuthorize")) {
             $model->saveCounters(array('numberOfViews' => 1));
         }
         if (isset($_GET['idMenu'])) {
             // Категории раздела
             $this->_listCategory = Categorys::getAllCategories($_GET['idMenu'], true, true);
         }
         $bookmarks = Bookmarks::model()->find(array('select' => 'idBookmarks', 'condition' => 'idUser = :idUser AND idArticle = :idArticle AND idMenu = :idMenu AND idCategory = :idCategory', 'params' => array(':idUser' => Yii::app()->user->id, ':idArticle' => $model->idArticle, ':idMenu' => $model->idMenu, ':idCategory' => $model->idCategory)));
         if (Yii::app()->request->isAjaxRequest) {
             $articlePopup = $this->renderPartial('view_article', array('model' => $model, 'commentsDataProvider' => $commentsDataProvider, 'modelComment' => new Comments(), 'idBookmarks' => null === $bookmarks ? null : $bookmarks->idBookmarks), true);
             echo CJSON::encode(array('popup' => $articlePopup));
             exit;
         }
         $this->breadcrumbs = AuxiliaryFunctions::fillingBreadcrumbs($idArticle, 'article');
         $this->render('view_article', array('model' => $model, 'commentsDataProvider' => $commentsDataProvider, 'modelComment' => new Comments(), 'idBookmarks' => null === $bookmarks ? null : $bookmarks->idBookmarks));
     }
 }
Exemple #6
0
 public function actionOrderbookmark()
 {
     $app = Yii::app();
     if (!$app->request->isAjaxRequest) {
         $this->redirect($app->homeUrl);
     }
     if (!$app->user->isGuest) {
         //$modelBookmark = Bookmarks::model()->findByPk($id);
         $list_order = $app->request->getParam('list_order', '');
         if ($list_order != '') {
             Bookmarks::model()->setNewOrdering($app, $list_order);
         }
         //echo'<pre>';print_r($list_order);echo'</pre>';die;
     }
     $app->end();
 }
 public function actionMore($id)
 {
     $photo_id_list = Bookmarks::model()->content_id_list($id, 1);
     $idcond = empty($photo_id_list) ? '0' : implode(' OR `id`=', $photo_id_list);
     $cond = '`id`=' . $idcond;
     $photos = Photos::model()->ParametrizedLoadLimited($cond, $_POST['offset']);
     $list = $this->renderPartial('_photos_list', array('photos' => $photos, 'user_id' => $id), true);
     echo json_encode(array('photos_count' => count($photos), 'data' => $list));
 }