public function actionRemoveFavourite($id) { $favId = $id; $UserId = Yii::app()->user->getId(); $model = Favourites::model()->findByAttributes(array('UserId' => $UserId)); if ($model) { $favlist = explode(',', $model->FavouriteIds); if ($count = count($favlist) == 1) { $model->delete(); } else { $key = array_search($favId, $favlist); unset($favlist[$key]); $model->FavouriteIds = implode(',', $favlist); $model->save(); } } }
/** * This is the default 'index' action that is invoked * when an action is not explicitly requested by users. */ public function actionIndex() { if (Yii::app()->user->isGuest) { $this->layout = 'login'; $model = new LoginForm(); // if it is ajax validation request if (isset($_POST['ajax']) && $_POST['ajax'] === 'login-form') { echo CActiveForm::validate($model); Yii::app()->end(); } // collect user input data if (isset($_POST['LoginForm'])) { $date = date('Y-m-d H:i:s'); $model->attributes = $_POST['LoginForm']; // validate user input and redirect to the previous page if valid if ($model->validate() && $model->login()) { $loginUserID = Yii::app()->user->getId(); Users::model()->updateByPk($loginUserID, array('LoginStatus' => 1, 'LastLoginDate' => $date)); /* $this->redirect(array('site/index')); */ $this->redirect(Yii::app()->user->returnUrl); } } // display the login form $this->render('login', array('model' => $model)); } else { $pageCount = 20; $loginUserId = Yii::app()->user->getId(); $favourites = Favourites::model()->findByAttributes(array('UserId' => $loginUserId)); if (!empty($favourites)) { $favourites = explode(',', $favourites->FavouriteIds); } $criteria = new CDbCriteria(); $condition = "Status=1 AND SearchStatus=1 AND Objid <> {$loginUserId}"; if (isset($_GET['searchAttList'])) { $criteria->condition = "UserId !='" . $loginUserId . "'"; $options_list = UserOptions::model()->findAll($criteria); $key = array(); $i = 0; $hasAttrUser = array(); if ($_GET['searchAttList'] !== '') { $values = explode(',', $_GET['searchAttList']); foreach ($options_list as $option) { $AttrOption = CJSON::decode($option->AttributeValueId); foreach ($AttrOption['basic'] as $attr) { if (is_array($attr)) { foreach ($values as $value) { array_push($key, in_array($value, $attr)); } } } foreach ($values as $value) { array_push($key, in_array($value, $AttrOption['basic'])); } $key = array_filter($key); if (count($key) == count($values)) { $hasAttrUser[$i++] = $option->UserId; } } $condition .= !empty($hasAttrUser) ? " AND Objid IN(" . implode(',', $hasAttrUser) . ")" : ' AND Objid = 0'; } } if (isset($_GET['MinAge']) && isset($_GET['MaxAge'])) { $minAge = $_GET['MinAge']; $maxAge = $_GET['MaxAge']; $minAge1 = $_GET['MinAge'] - 1; $maxAge1 = $_GET['MaxAge'] + 1; $toDate = date('Y-m-d', strtotime('-' . $minAge1 . ' years')); $fromDate = date('Y-m-d', strtotime('-' . $maxAge1 . ' years')); $condition .= " AND DateOfBirth BETWEEN '" . $fromDate . "' AND '" . $toDate . "'"; } if (isset($_GET['Gender'])) { $condition .= $_GET['Gender'] !== '' ? " AND Gender=" . $_GET['Gender'] : " AND Gender=0 OR Gender=1"; } $criteria->addCondition($condition); if (isset($_GET['type'])) { $criteria->compare("LoginStatus", 1, true); } $model = Profile::model()->findAll($criteria); $count = Profile::model()->count($criteria); $pages = new CPagination($count); $pages->pageSize = $pageCount; $pages->applyLimit($criteria); $this->render('list', array('models' => $model, 'pages' => $pages, 'pageCount' => $pageCount, 'favourites' => $favourites)); } }
} else { ?> <span class="mail"><?php echo CHtml::link('Mail', array('/upgradepack/')); ?> </span> <span class="chat"><?php echo CHtml::link('Chat', array('/upgradepack/')); ?> </span> <?php } ?> <?php $loginUserIds = Yii::app()->user->getId(); if (Favourites::model()->findByAttributes(array('UserId' => $loginUserIds, 'FavouriteIds' => $model->Objid))) { ?> <span class="favactive fav" id="favouriteBlock<?php echo $model->UserId; ?> ">Fav</span> <?php } else { ?> <?php echo CHtml::ajaxLink('<span class="favinactive fav" id="favouriteBlock<?php echo $model->UserId; ?>">Fav</span>', Yii::app()->createUrl('/message/addToFavourite'), array('data' => array('id' => $model->Objid), 'update' => '#favouriteBlock' . $model->UserId)); ?> <?php }