public function getGroup_Members()
 {
     //init variable
     $app = JFactory::getApplication();
     $log_user = $this->plugin->get('user')->id;
     $group_id = $app->input->get('group_id', 0, 'INT');
     $limitstart = $app->input->get('limitstart', 0, 'INT');
     $limit = $app->input->get('limit', 10, 'INT');
     $state = $app->input->get('state', 1, 'INT');
     $getAdmin = $app->input->get('admin', 1, 'INT');
     $options = array('groupid' => $group_id);
     $gruserob = new EasySocialModelGroupMembers();
     $data = $gruserob->getItems($options);
     $mapp = new EasySocialApiMappingHelper();
     foreach ($data as $val) {
         $val->id = $val->uid;
     }
     $user_list = $mapp->mapItem($data, 'user', $log_user);
     $grp_model = FD::model('Groups');
     foreach ($user_list as $user) {
         $user->isMember = $grp_model->isMember($user->id, $group_id);
         $user->isOwner = $grp_model->isOwner($user->id, $group_id);
         $user->isInvited = $grp_model->isInvited($user->id, $group_id);
         $user->isPendingMember = $grp_model->isPendingMember($user->id, $group_id);
     }
     //manual pagination code
     $user_list = array_slice($user_list, $limitstart, $limit);
     return $user_list;
 }
 public function getGroup_Members()
 {
     //init variable
     $app = JFactory::getApplication();
     $log_user = $this->plugin->get('user')->id;
     $group_id = $app->input->get('group_id', 0, 'INT');
     $limitstart = $app->input->get('limitstart', 0, 'INT');
     $limit = $app->input->get('limit', 10, 'INT');
     $mapp = new EasySocialApiMappingHelper();
     $data = array();
     //hari
     $filter = $app->input->get('filter', 'going', 'STRING');
     if ($limitstart) {
         $limit = $limit + $limitstart;
     }
     //for filter user by type
     $type = $app->input->get('type', 'group', 'STRING');
     $state = $app->input->get('state', 1, 'INT');
     $getAdmin = $app->input->get('admin', 1, 'INT');
     if ($type == 'group') {
         $options = array('groupid' => $group_id);
         $gruserob = new EasySocialModelGroupMembers();
         $data = $gruserob->getItems($options);
         foreach ($data as $val) {
             $val->id = $val->uid;
         }
     } else {
         if ($type == 'event') {
             //hari
             //Get event guest with filter.
             if (!empty($filter)) {
                 switch ($filter) {
                     case 'going':
                         $options['state'] = SOCIAL_EVENT_GUEST_GOING;
                         break;
                     case 'notgoing':
                         $options['state'] = SOCIAL_EVENT_GUEST_NOT_GOING;
                         break;
                     case 'maybe':
                         $options['state'] = SOCIAL_EVENT_GUEST_MAYBE;
                         break;
                     case 'admins':
                         $options['admin'] = true;
                         break;
                 }
                 $options['users'] = true;
                 $eguest = FD::model('Events');
                 $data = $eguest->getGuests($group_id, $options);
             }
         }
     }
     if (empty($data)) {
         $ret_arr = new stdClass();
         $ret_arr->status = false;
         $ret_arr->message = "No member found";
         return $ret_arr;
     }
     $user_list = $mapp->mapItem($data, 'user', $log_user);
     $grp_model = FD::model('Groups');
     foreach ($user_list as $user) {
         $user->isMember = $grp_model->isMember($user->id, $group_id);
         $user->isOwner = $grp_model->isOwner($user->id, $group_id);
         $user->isInvited = $grp_model->isInvited($user->id, $group_id);
         $user->isPendingMember = $grp_model->isPendingMember($user->id, $group_id);
     }
     //manual pagination code
     $user_list = array_slice($user_list, $limitstart, $limit);
     return $user_list;
 }