コード例 #1
0
 /**
  * Function to send notification to all clients
  * @param int $userId id of the user for which ipn request is to be sent
  * @return void
  * **/
 public function sendIpnForUser($userId)
 {
     $objUserModel = new \models\Users();
     $userRow = $objUserModel->getUserById($userId);
     if ($userRow) {
         $dataToSend = array('first_name' => $userRow->first_name, 'last_name' => $userRow->last_name, 'email_address' => $userRow->email, 'username' => $userRow->user_name, 'cimba_auth_id' => $userRow->id);
         $this->_parameters = $dataToSend;
         $clientResponse = $this->_request();
         $status = -1;
         //mark synced status as ipn request sent
         $objUserSyncStatusModel = new \models\UserSyncStatus();
         $userSyncStatusRow = $objUserSyncStatusModel->getRowByUserId($userRow->id);
         if ($clientResponse) {
             $status = $clientResponse['data']['status'];
         }
         if ($userSyncStatusRow) {
             $userSyncStatusRow->amt_sync_status = $status;
             $objUserSyncStatusModel->getRedBeans()->store($userSyncStatusRow);
         }
     }
 }
コード例 #2
0
 public function actionUpdate()
 {
     $params = array('cimba_auth_id');
     //email,first_name,last_name ,user_name are optional
     try {
         $isRequestValid = $this->_validator->validateRequest($params);
         if ($isRequestValid) {
             $email = $this->_request->getParam('email', null);
             $firstName = $this->_request->getParam('first_name', null);
             $lastName = $this->_request->getParam('last_name', null);
             $cimbaAuthId = $this->_request->getParam('cimba_auth_id', null);
             $objUsersModel = new \models\Users();
             $userData = array('email' => $email, 'first_name' => $firstName, 'last_name' => $lastName, 'user_name' => $this->_request->getParam('user_name', null));
             $userId = $objUsersModel->update($cimbaAuthId, $userData);
             if ($userId) {
                 //mark user as unsynced
                 $objUserSyncStatus = new \models\UserSyncStatus();
                 $objUserSyncStatus->markUserAsUnsynced($userId);
                 /**@todo : send notification to all other servers **/
                 $this->_response->renderJson(array('message' => 'User successfully updated', 'success' => true), 200);
             } else {
                 $this->_response->renderJson(array('message' => 'Error updating user'), 404);
             }
         } else {
             $this->_response->renderJson(array('message' => 'Request cannot be validated'), 400);
         }
     } catch (\Exception $e) {
         $this->_response->renderJson(array('message' => $e->getMessage()), 500);
     }
 }