Example #1
0
 /**
  * 添加关注
  *
  * @param int $uid
  * @param int $touid
  * @return boolean
  */
 public function addFollow($uid, $touid)
 {
     Wind::import('SRV:medal.srv.PwAutoAwardMedal');
     $userBo = new PwUserBo($uid);
     $bp = new PwAutoAwardMedal($userBo);
     $bp->autoAwardMedal(8, isset($userBo->info['follows']) ? (int) $userBo->info['follows'] : 0);
     $userBo = new PwUserBo($touid);
     $bp = new PwAutoAwardMedal($userBo);
     $bp->autoAwardMedal(5, isset($userBo->info['fans']) ? (int) $userBo->info['fans'] : 0);
     return true;
 }
Example #2
0
 public function addThread($tid)
 {
     /* @var $ds PwUserBehavior */
     $ds = Wekit::load('user.PwUserBehavior');
     $time = Pw::getTime();
     $behavior = $ds->getBehaviorList($this->user->uid);
     /* thread_days:连续发帖天数 统计情况 */
     $condition = isset($behavior['thread_days']['number']) ? (int) $behavior['thread_days']['number'] : 0;
     $bp = new PwAutoAwardMedal($this->user);
     $bp->autoAwardMedal(3, $condition);
     /* thread_count:总发帖数 统计情况 */
     $condition = isset($behavior['thread_count']['number']) ? (int) $behavior['thread_count']['number'] : 0;
     $bp->autoAwardMedal(7, $condition);
     return true;
 }
Example #3
0
 public function addLike(PwUserBo $userBo, PwLikeDm $dm)
 {
     Wind::import('SRV:medal.srv.PwAutoAwardMedal');
     $data = $dm->getData();
     $ds = Wekit::load('user.PwUserBehavior');
     $behavior = $ds->getBehavior($data['belikeuid'], 'belike_times');
     $condition = isset($behavior['number']) ? (int) $behavior['number'] : 0;
     $bp = new PwAutoAwardMedal(new PwUserBo($data['belikeuid']));
     $bp->autoAwardMedal(6, $condition);
     //喜欢统计
     $condition = isset($userBo->info['likes']) ? (int) $userBo->info['likes'] : 0;
     $bp = new PwAutoAwardMedal($userBo);
     $bp->autoAwardMedal(9, $condition);
     //like_count
     return true;
 }
Example #4
0
 public function addPost($pid, $tid)
 {
     /* @var $ds PwUserBehavior */
     $ds = Wekit::load('user.PwUserBehavior');
     $time = Pw::getTime();
     $behavior = $ds->getBehaviorList($this->userBo->uid);
     $condition = isset($behavior['post_days']['number']) ? (int) $behavior['post_days']['number'] : 0;
     $bp = new PwAutoAwardMedal($this->userBo);
     $bp->autoAwardMedal(2, $condition);
     $posts = Wekit::load('forum.PwThread')->getPostByTid($tid, 1, 0, true);
     if (array_key_exists($pid, $posts)) {
         $condition = isset($behavior['safa_times']['number']) ? (int) $behavior['safa_times']['number'] : 0;
         $bp->autoAwardMedal(4, $condition);
     }
     return true;
 }
Example #5
0
 public function welcome(PwUserBo $userBo, $ip)
 {
     /* @var $ds PwUserBehavior */
     $ds = Wekit::load('user.PwUserBehavior');
     $time = Pw::getTime();
     $behavior = $ds->getBehaviorList($userBo->uid);
     $bp = new PwAutoAwardMedal($userBo);
     /* login_days:连续登录天数*/
     $condition = isset($behavior['login_days']['number']) ? (int) $behavior['login_days']['number'] : 0;
     $bp->autoAwardMedal(1, $condition);
     /* login_count:连续登录天数*/
     $condition = isset($behavior['login_count']['number']) ? (int) $behavior['login_count']['number'] : 0;
     $bp->autoAwardMedal(10, $condition);
     //回收过期勋章
     Wekit::load('medal.srv.PwMedalService')->recoverMedal($userBo->uid);
     return true;
 }