/** * 添加关注 * * @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; }
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; }
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; }
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; }
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; }