Guest User

Untitled

a guest
May 22nd, 2018
74
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.06 KB | None | 0 0
  1. public function getAuthTokenAction() {
  2. $login = $this->getRequest()->getParam('login');
  3. $password = $this->getRequest()->getParam('password');
  4.  
  5. if(empty($login) || empty($password)) {
  6. $error = Mage::helper('litegento')->renderError(14);
  7. $this->renderResponse($error);
  8. return;
  9. }
  10.  
  11. $agent = Mage::getModel('agent/agent')->getCollection()
  12. ->addAttributeToSelect(array('auth_token', 'password_hash', 'websiteIds','status'))
  13. ->addFieldToFilter('email', array('eq' => $login))
  14. ->getFirstItem();
  15.  
  16. if(!$agent->getId()) {
  17. $error = Mage::helper('litegento')->renderError(21);
  18. $this->renderResponse($error);
  19. return;
  20. }
  21.  
  22. if($agent->getStatus() != 1) {
  23. $error = Mage::helper('litegento')->renderError(24);
  24. $this->renderResponse($error);
  25. return;
  26. }
  27.  
  28. if(!in_array(Mage::app()->getWebsite()->getId(), explode(',', $agent->getData('websiteIds')))){
  29. $error = Mage::helper('litegento')->renderError(22);
  30. $this->renderResponse($error);
  31. return;
  32. }
  33.  
  34. $hash = $agent->getPasswordHash();
  35. if(!$hash || !Mage::helper('core')->validateHash($password, $hash)) {
  36. $error = Mage::helper('litegento')->renderError(18);
  37. $this->renderResponse($error);
  38. return;
  39. }
  40.  
  41. if(!$agent->getAuthToken()) {
  42. $date = new DateTime();
  43. $newAuthToken = md5(uniqid($agent->getId(), true).$date->getTimestamp());
  44. $newAuthToken = substr($newAuthToken, 0, 31);
  45. $agent->setAuthToken($newAuthToken);
  46. $agent->save();
  47. }elseif (strlen($agent->getAuthToken()) > 32){
  48. $newAuthToken = substr($agent->getAuthToken(), 0, 31);
  49. $agent->setAuthToken($newAuthToken);
  50. $agent->save();
  51. }
  52.  
  53. $this->renderResponse(array(
  54. 'Status' => 'SUCCESS',
  55. 'Token' => 'AuthToken-' . $agent->getAuthToken(),
  56. ));
  57. }
Add Comment
Please, Sign In to add comment