Ejemplo n.º 1
0
 /**
  * 更新我的脚印
  * 
  * @param int $spaceUid
  * @param int $visitUid
  */
 public function signToVisitor($spaceUid, $visitUid)
 {
     if ($spaceUid < 1 || $visitUid < 1) {
         return false;
     }
     if ($spaceUid == $visitUid) {
         return false;
     }
     $time = Pw::getTime();
     $space = $this->_getSpaceDs()->getSpace($visitUid);
     $tovisitors = unserialize($space['tovisitors']);
     $tovisitors = is_array($tovisitors) ? $tovisitors : array();
     if (array_key_exists($spaceUid, $tovisitors)) {
         $keys = array_keys($tovisitors);
         if (array_shift($keys) == $spaceUid) {
             return false;
         }
         //如果是第一个不需要更新
         unset($tovisitors[$spaceUid]);
     }
     $tovisitors = array($spaceUid => $time) + $tovisitors;
     if (count($tovisitors) > 20) {
         $tovisitors = array_slice($tovisitors, 0, 20, true);
     }
     Wekit::load('space.dm.PwSpaceDm');
     $dm = new PwSpaceDm($visitUid);
     $dm->setTovisitors($tovisitors);
     return $this->_getSpaceDs()->updateInfo($dm);
 }