示例#1
0
    public function actionTovote (){
        $id = (int)$_POST['id'];
        $voter = (int)$_POST['vote'];
        $ret = array();
        // check
        $ip = MHelper::Ip()->getIp();
        $vote = PollVote::model()->find(array('condition'=>'choice_id=:id and ip_address=:ip','params'=>array(':id'=>$id,':ip'=>$ip)));
        if(!$vote){
            $vote = new PollVote;
            $vote->vote = $voter;
            $vote->choice_id = $id;
            $vote->ip_address = $ip;
            if(!Yii::app()->user->isGuest){
              $vote->user_id = Yii::app()->user->id; 
            }
            if(!$vote->save()){
            	VarDumper::dump($vote->errors); die(); // Ctrl + X	Delete line
            }
            $weight = '';
            $sql = "SELECT COUNT(*) FROM poll_vote WHERE choice_id={$id} and vote={$voter}";
            $numClients = Yii::app()->db->createCommand($sql)->queryScalar();
            $review = PollChoice::model()->findByPk($id);
            if($voter == 1){
            	$review->yes = $numClients;
            	$diff = $review->yes - $review->no;
	            $sum = $review->yes + $review->no; 
				if($diff>0){
					$weight = round(($diff)*100/$sum);
				}
            	$review->weight =  $weight;
            	$review->votes =  $diff;
            	$review->save(false,array('yes','weight','votes'));

            } else {
            	$review->no = $numClients;
            	$diff = $review->yes - $review->no;
	            $sum = $review->yes + $review->no; 
				if($diff>0){
					$weight = round(($diff)*100/$sum);
				}
				$review->weight =  $weight;
				$review->votes =  $diff;
            	$review->save(false,array('no','weight','votes'));
            }

            
            $ret['flag'] = true;
            $ret['count'] = $numClients;
            $ret['yes'] = $review->yes;
            $ret['no'] = $review->no;
            $ret['type'] = $review->type;
            $ret['id'] = $review->id;

            $ret['weight'] = $weight;
            $ret['weight_text'] = (!empty($weight))?'считают '.$weight.'%':'';
            echo CJSON::encode($ret);
        }
    }
// Validate and save comment on post request
//$comment = $module->processRequestArticle($model);
// Load model comments
$provider = CommentArticle::getObjectComments($model);

$themeUrl = Yii::app()->theme->baseUrl;

// Display comments
if($provider) {
 ?>
 <div class="clearfix"></div>
<div id="comment_module" class="woocommerce" style="margin-top:20px;margin-bottom:0px;">
<div id="reviews">
<div id="comments">
<?php
$ip = MHelper::Ip()->getIp();
			$this->widget('zii.widgets.CListView', array(
            'dataProvider'=>$provider,
            'ajaxUpdate'=>true,
            'template'=>"{items}\n{pager}",
            'itemView'=>'application.modules.comments.views.comment._item',
            'itemsTagName'=>'ol',
            'itemsCssClass'=>'commentlist',
           // 'viewData'=>array(),
            'emptyText'=>'',
            'pager'=>array(
              'maxButtonCount'=>5,
              'header' => '',
              'firstPageLabel'=>'<<',
              'lastPageLabel'=>'>>',
              'nextPageLabel' => '>',
示例#3
0
          'hideIconOnBalloonOpen'=> false,
        ),
      );
    }

?>
<div class="header-map" id="header-map">
	<div class="main-map">
	
	<div class="main-map-view">
	<div class="map-text">
	<?php 

	if(!empty($model->nearest_metro) && !empty($model->nearest_metro_distance) && $model->nearestmetro){

		$size = MHelper::Ip()->size($model->nearest_metro_distance);
		echo 'до '.$model->nearestmetro->metro_name.' - '.$size;
	}
	?>
	</div>
	<?php
	$truemap = false;
	if(($model->lat && $model->lng) || ($model->city->latitude && $model->city->longitude)){
		 if($model->lat && $model->lng){
		 	$lat = $model->lat;
		 	$lng = $model->lng;
		 	$zoom = 14;
		 } else if($model->city->latitude && $model->city->longitude){
		 	$lat = $model->city->latitude;
		 	$lng = $model->city->longitude;
		 	$zoom = 12;
    public function actionSearch()
    {
    //	$this->layout = '//layouts/zazadun';
      if(Yii::app()->request->isPostRequest  && Yii::app()->request->getPost('q') && Yii::app()->request->getPost('pereparam')){
        $this->redirect(Yii::app()->request->addUrlParam('catalog/article/search', array('q'=>Yii::app()->request->getPost('q'))));
      }
      $model = new Article;
        $count_items = 0;
        if (($term = Yii::app()->getRequest()->getQuery('q')) !== null) {
            $this->pageTitle = CHtml::encode($term);
            $query = $term;

            $s = MHelper::String()->toLower(trim($term));
            $resultsPr = null;
            if(!empty($s)){
            $s = addcslashes($s, '%_'); // escape LIKE's special characters

             $criteria = new CDbCriteria;
            $criteria->scopes='fullactive';


            $criteria->condition ='(( (LOWER(t.title) LIKE :s) or (LOWER(t.description) LIKE :s) ))';
            $criteria->params = array(':s'=>"%$s%");
            $dataProvider = new CActiveDataProvider('Article', array(
                'criteria' => $criteria,
                'sort'       => array(
                    'defaultOrder' => 't.created_date DESC',
                ),
                'pagination' => array(
                    'pageSize' => 25,
                    'pageVar'=>'page'
                ),
            ));
            
          //  VarDumper::dump($dataProvider); die(); // Ctrl + X  Delete line
          }
          $count_items = 0;
          if ($dataProvider && $dataProvider->totalItemCount) { 
            $count_items = $dataProvider->totalItemCount;
          } 

          if(!empty($term) && !isset($_GET['page'])){
            $searchquery = new Searchqueries;
            $searchquery->query = $term;
            $searchquery->quantity = $count_items;
            $searchquery->ip_address = MHelper::Ip()->getIp();
            $searchquery->save();

          }
          $dtitle = $query.' ';
          $this->render('search', compact('term', 'query','dataProvider','count_items','model','dtitle'));
        } else {
          $term = $query = '';
          $dtitle = $query;
          $dataProvider = null;
          $this->render('search', compact('term', 'query','dataProvider','count_items','model','dtitle'));
        }
        
    }
    public function actionSearch()
    {
      if(Yii::app()->request->isPostRequest  && Yii::app()->request->getPost('q') && Yii::app()->request->getPost('pereparam')){
        $this->redirect(Yii::app()->request->addUrlParam('catalog/catalog/search', array('q'=>Yii::app()->request->getPost('q'))));
      }
       $this->layout = '//layouts/zazadun';
        $count_items = 0;
        if (($term = Yii::app()->getRequest()->getQuery('q')) !== null) {
            $this->pageTitle = CHtml::encode($term).' в '.$this->city->mestpad;
            $query = $term;

            $s = MHelper::String()->toLower(trim($term));
            $resultsPr = null;
            if(!empty($s)){
            $s = addcslashes($s, '%_'); // escape LIKE's special characters

            $criteria = new CDbCriteria;
            $criteria->scopes='active';
            $criteria->with = array(
              'categorization',
              'categories'=>array(
                 'together'=>true
                ),
              'city'=>array('together'=>true)
              );
           // $criteria->together = true;
         /*   $criteria->compare('t.city_id',$this->city_id);
            $criteria->compare('LOWER(t.title)',$s,true);
            $criteria->compare('LOWER(t.description)',$s,true,'OR');
            $criteria->compare('LOWER(t.synonim)',$s,true,'OR');
            $criteria->compare('LOWER(categories.title)', $s, true, 'OR');
            $criteria->compare('LOWER(categories.keywords)', $s, true, 'OR');
          */

            $criteria->condition ='(t.city_id = '.$this->city->id.' and ( (LOWER(t.title) LIKE :s) or (LOWER(t.synonim) LIKE :s) or (LOWER(t.description) LIKE :s) or (LOWER(categories.title) LIKE :s) or (LOWER(categories.keywords) LIKE :s)))';
            $criteria->params = array(':s'=>"%$s%");
            $resultsPr = new CActiveDataProvider('Orgs', array(
                'criteria' => $criteria,
                'sort'       => array(
                    'defaultOrder' => 't.title',
                ),
                'pagination' => array(
                    'pageSize' => 20,
                    'pageVar'=>'page'
                ),
            ));
            
          //  VarDumper::dump($resultsPr); die(); // Ctrl + X  Delete line
          }
          
          if ($resultsPr && $resultsPr->totalItemCount) { 
            $count_items = $resultsPr->totalItemCount;
          } 
          if(!empty($term) && !isset($_GET['page'])){
            $searchquery = new Searchqueries;
            $searchquery->query = $term;
            $searchquery->city_id = $this->city->id;
            $searchquery->quantity = $count_items;
            $searchquery->ip_address = MHelper::Ip()->getIp();
            $searchquery->save();

          }
         // $this->render('search', compact('term', 'query','resultsPr','count_items'));
          $dtitle = $term . ' '. $this->city->rodpad;
          $this->render('view',array(
          				'provider'=>$resultsPr,
                        'dtitle'=>$dtitle,
                        'itemView'=>'_organizations_view',
                        'count_items'=>$count_items
                        ));
        } else {
          $term = $query = '';
          $resultsPr = null;
          $dtitle = 'Поиск';
          $this->render('view',array(
          				'provider'=>$resultsPr,
                        'dtitle'=>$dtitle,
                        'itemView'=>'_organizations_view',
                        'count_items'=>$count_items
                        ));
        }
        
    }
示例#6
0
 public function actionToVoteArticle()
 {
     $id = (int) $_POST['id'];
     $voter = (int) $_POST['vote'];
     $ret = array();
     // check
     $ip = MHelper::Ip()->getIp();
     $vote = Vote::model()->find(array('condition' => 'review=:id and ip=:ip', 'params' => array(':id' => $id, ':ip' => $ip)));
     if (!$vote) {
         $vote = new Vote();
         $vote->vote = $voter;
         $vote->review = $id;
         $vote->ip = $ip;
         if (!Yii::app()->user->isGuest) {
             $vote->user_id = Yii::app()->user->id;
         }
         $vote->save();
         $sql = "SELECT COUNT(*) FROM vote WHERE review={$id} and vote={$voter}";
         $numClients = Yii::app()->db->createCommand($sql)->queryScalar();
         if ($voter == 1) {
             $review = Article::model()->updateByPk($id, array('yes' => $numClients));
         } else {
             $review = Article::model()->updateByPk($id, array('no' => $numClients));
         }
         $ret['flag'] = true;
         $ret['count'] = $numClients;
         echo CJSON::encode($ret);
     }
 }