Beispiel #1
0
 /**
  * Authenticate the user
  * 
  * @return Response
  */
 public function store()
 {
     try {
         $userAgent = array("platform" => Useragent::platform(), "browser" => Useragent::browser(), "version" => Useragent::version(), "mobile" => Useragent::mobile(), "robot" => Useragent::robot(), "agent" => Useragent::agent_string(), "accept_lang" => Useragent::accept_lang(), "accept_charset" => Useragent::accept_charset(), "ip_address" => $_SERVER['REMOTE_ADDR']);
         if (Input::get('password')) {
             $authService = new SoapClient(Config::get('wsdl.auth'));
             $token = $authService->authenticateEmail(array("email" => Input::get('email'), "password" => Input::get('password'), "userAgent" => print_r($userAgent, true)));
             ini_set('soap.wsdl_cache_enabled', '0');
             ini_set('user_agent', "PHP-SOAP/" . PHP_VERSION . "\r\n" . "AuthToken: " . $token->AuthToken);
             Session::put('user.token', $token);
             try {
                 $userService = new SoapClient(Config::get('wsdl.user'));
                 $result = $userService->getUserByEmail(array("email" => Input::get('email')));
                 $user = $result->user;
                 if ($user->businessAccount == true) {
                     if (isset($user->addresses) && is_object($user->addresses)) {
                         $user->addresses = array($user->addresses);
                     }
                 }
                 Session::put('user.data', $user);
                 return array('success' => 'true');
             } catch (InnerException $ex) {
                 throw new Exception($ex->faultstring);
             }
         }
     } catch (Exception $ex) {
         return array('error' => $ex->getMessage());
     }
 }