/** * GET method to setup member timeline * @param string app_token HTTP HEADER * @param string lang HTTP HEADER optional parameter used for the response message * @param int pzt_member_id * @return string response String representation of json object with pzt_member_id value, basic info or error */ public function timelineAction() { //this is a protected API service if ($this->isAccessTokenValid()) { //loading dispatcher vars $version = $this->dispatcher->getParam("version"); $id = $this->dispatcher->getParam(0); $this->setJsonResponse(); $meta = array('response_type' => 'error'); $response = array(); $lang = $this->getRequestLang(); $tokens = $this->getAuthTokens(); $app_token = $tokens['app_token']; $member_token = $tokens['member_token']; $member_obj = Services::getService('SPztMember')->me(array('app_token' => $app_token, 'member_token' => $member_token), $lang); //valid app and member tokens provided if (is_object($member_obj) && property_exists($member_obj, 'pzt_member_id')) { if ($this->request->isGet()) { $type = $this->dispatcher->getParam(0); $date = $this->dispatcher->getParam(1); $limt = $this->dispatcher->getParam(2); $dirn = $this->dispatcher->getParam(3); $params = array(); if (strlen($date) && is_numeric($limt)) { $params = array("date" => $date, "limit" => $limt, "direction" => $dirn); } $message_obj = Services::getService('SPztMessage')->getTimeline($member_obj->pzt_member_id, $type, $params, $lang); if (is_object($message_obj) && count($message_obj)) { $msg_data = array(); if ($type == 'menu') { foreach ($message_obj as $msg_key => $msg_record) { $msg_tmp = array('label' => '', 'number' => $msg_record->total, 'date' => $msg_record->date); $msg_data[] = array('type' => 'message', 'body' => $msg_tmp); } } else { foreach ($message_obj as $msg_key => $msg_record) { $msg_tmp = array('subject' => '', 'message' => '', 'delivery_dt' => '', 'media' => array('main' => '', 'others' => ''), 'documents' => array(), 'hearts' => 0, 'comments' => array()); $msg_data[] = array('type' => 'message', 'body' => $msg_tmp); } } $meta = array('response_type' => 'success'); $response = $msg_data; } } } else { //handling error $response = $member_obj; } echo $this->responseWrapper($meta, $response); } else { $this->handleInvalidToken(); } }
public function OLDsearch($term, $params, $lang) { //making sure params have valid data limits $default_offset = 0; $default_limit = 20; $max_limit = 50; if (isset($params['offset'])) { $params['offset'] = !$params['offset'] || $params['offset'] < 0 ? $default_offset : $params['offset']; } else { $params['offset'] = $default_offset; } if (isset($params['limit'])) { if (is_numeric($params['limit']) && $params['limit'] > $max_limit) { $params['limit'] = $max_limit; } else { $params['limit'] = !$params['limit'] || $params['limit'] < 0 ? $default_limit : $params['limit']; } } else { $params['limit'] = $default_limit; } $members = Repositories::getRepository('RPztMember')->search($term, $params); if ($members !== false) { return $members; } else { return Services::getService('SPztSysResCode')->getSysResData(true, 'E002-R079', $lang); } }