Example #1
0
 public function add($user_follow, $user_followed, $type)
 {
     $check = Relationship::model()->findAllByAttributes(array('user_id_1' => $user_follow, 'user_id_2' => $user_followed));
     $check_2 = Relationship::model()->findAllByAttributes(array('user_id_2' => $user_follow, 'user_id_1' => $user_followed));
     $check_3 = Follow::model()->findByAttributes(array('user_follow' => $user_follow, 'user_followed' => $user_followed));
     if ($check || $check_2 || $check_3 || $user_followed == Yii::app()->session['user_id']) {
         return FALSE;
     }
     $model = new Follow();
     $model->user_follow = $user_follow;
     $model->user_followed = $user_followed;
     $model->created_at = time();
     $model->update_at = time();
     $model->type = $type;
     $user_follow_data = User::model()->findByPk($user_follow);
     $user_followed_data = User::model()->findByPk($user_followed);
     if ($user_follow != Yii::app()->session['user_id']) {
         $arr_noti = array('user_id' => $user_follow, 'content' => "{$user_follow_data->username} vừa theo dõi bạn", 'type' => 'follow', 'recipient_id' => $user_followed_data->id, 'url' => Yii::app()->createAbsoulteUrl('user/profile', array('user_id' => $user_follow_data->id, 'ref' => 'noti')));
         Notifications::model()->add($arr_noti);
     }
     if ($model->save(FALSE)) {
         return TRUE;
     }
     return FALSE;
 }
Example #2
0
 public function actionProfile()
 {
     try {
         $is_followed = FALSE;
         $request = Yii::app()->request;
         if ($request->getQuery('ref_api') == Yii::app()->params['REF_API']) {
             $user_id = $request->getQuery('user_id');
         } else {
             if ($request->getQuery('ref_web') == 'ref_web') {
                 $user_id = $request->getQuery('user_id');
             } else {
                 $user_id = Yii::app()->session['user_id'];
             }
         }
         $data = User::model()->getProfile($user_id);
         $posts = Posts::model()->getPostByUserForWeb($user_id);
         if ($user_id != Yii::app()->session['user_id']) {
             $check_block = Relationship::model()->findByAttributes(array('user_id_2' => Yii::app()->session['user_id'], 'user_id_1' => $user_id, 'user_type' => 'USER'));
             $is_followed = User::model()->isFollowedByUser(Yii::app()->session['user_id'], $user_id, 'USER');
             if ($check_block) {
                 return;
             }
         }
         $arr = array('profile' => $data, 'posts' => $posts['data'], 'pages' => $posts['pages'], 'is_followed' => $is_followed);
         if ($request->getQuery('ref_api') == Yii::app()->params['REF_API']) {
             ResponseHelper::JsonReturnSuccess($arr, 'Success');
         } else {
             $this->render('profile', $arr);
         }
     } catch (Exception $ex) {
         var_dump($ex->getMessage());
     }
 }
Example #3
0
 public function blockUser($user_block, $user_blocked)
 {
     $model = Relationship::model()->findByAttributes(array('user_id_1' => $user_block, 'user_id_2' => $user_blocked));
     if ($model) {
         return 1;
     } else {
         $rel = new Relationship();
         $rel->user_id_1 = $user_block;
         $rel->user_id_2 = $user_blocked;
         $rel->status = 1;
         $rel->created_at = time();
         $rel->updated_at = time();
         $rel->type = Yii::app()->params['USER_BLOCK'];
         if ($rel->save(FALSE)) {
             return 2;
         } else {
             return 0;
         }
     }
 }
Example #4
0
		<?php 
echo $form->error($model, 'related_doi');
?>
                </div>
	</div>

	<div class="control-group">
		<?php 
echo $form->labelEx($model, 'relationship', array('class' => 'control-label'));
?>
				<div class="controls">
		<?php 
//echo $form->textField($model,'relationship',array('size'=>30,'maxlength'=>30));
?>
		<?php 
echo CHtml::activeDropDownList($model, 'relationship_id', CHtml::listData(Relationship::model()->findAll(), 'id', 'name'));
?>
		<?php 
echo $form->error($model, 'relationship_id');
?>
                </div>
	</div>

	<div class="pull-right">
        <a href="/adminRelation/admin" class="btn">Cancel</a>
		<?php 
echo CHtml::submitButton($model->isNewRecord ? 'Create' : 'Save', array('class' => 'btn'));
?>
	</div>

<?php 
Example #5
0
 public function getBlockedUserByUser($user_id)
 {
     $blocked_user_criteria = new CDbCriteria();
     $blocked_user_criteria->select = 'user_id_2';
     $blocked_user_criteria->condition = 'user_id_1=:user_id';
     $blocked_user_criteria->params = array(':user_id' => $user_id);
     $blocked_user = Relationship::model()->findAll($blocked_user_criteria);
     //return implode(',', $blocked_user);
     $returnArr = array();
     foreach ($blocked_user as $item) {
         $returnArr[] = $item->user_id_2;
     }
     return $returnArr;
 }