Exemplo n.º 1
0
 public function getFollowingAction($user_data = array(), $return_data = false)
 {
     if (!$user_data) {
         $this->forward('error', 'error404');
     }
     $request = $this->getRequest();
     $response = $this->getResponse();
     $page = (int) $request->getRequest('page');
     if ($page < 1) {
         $page = 1;
     }
     $pp = (int) Helper_Config::get('config_front_limit');
     if (!(int) $pp) {
         $pp = 50;
     }
     if ((int) $request->getRequest('per_page') > 0 && (int) $request->getRequest('per_page') < 300) {
         $pp = (int) $request->getRequest('per_page');
     }
     $data = array('start' => $pp * $page - $pp, 'limit' => $pp, 'filter_following_user_id' => $user_data['user_id']);
     $return = array();
     /* set board count */
     $has_following = true;
     if ($user_data['following'] < 1) {
         $has_following = false;
     }
     // pins data
     $users = $has_following ? new Model_Users_Following($data) : new ArrayObject();
     //format response data
     $formatObject = new Helper_Format();
     if ($has_following && $users->count()) {
         foreach ($users as $row => $user) {
             $user['row'] = $row;
             $return[] = $formatObject->fromatListUserFollowing($user);
         }
     } else {
         if ($page == 1) {
             $message = $this->translate('No following users!');
         } else {
             $message = $this->translate('No more following users!');
         }
         $return[] = $formatObject->fromatListNoResults($message);
     }
     if ($return_data) {
         return $return;
     }
     $formatObject->responseJsonCallback($return);
     $this->noViewRenderer(true);
 }