Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public function getAuthTokenAction() {
- $login = $this->getRequest()->getParam('login');
- $password = $this->getRequest()->getParam('password');
- if(empty($login) || empty($password)) {
- $error = Mage::helper('litegento')->renderError(14);
- $this->renderResponse($error);
- return;
- }
- $agent = Mage::getModel('agent/agent')->getCollection()
- ->addAttributeToSelect(array('auth_token', 'password_hash', 'websiteIds','status'))
- ->addFieldToFilter('email', array('eq' => $login))
- ->getFirstItem();
- if(!$agent->getId()) {
- $error = Mage::helper('litegento')->renderError(21);
- $this->renderResponse($error);
- return;
- }
- if($agent->getStatus() != 1) {
- $error = Mage::helper('litegento')->renderError(24);
- $this->renderResponse($error);
- return;
- }
- if(!in_array(Mage::app()->getWebsite()->getId(), explode(',', $agent->getData('websiteIds')))){
- $error = Mage::helper('litegento')->renderError(22);
- $this->renderResponse($error);
- return;
- }
- $hash = $agent->getPasswordHash();
- if(!$hash || !Mage::helper('core')->validateHash($password, $hash)) {
- $error = Mage::helper('litegento')->renderError(18);
- $this->renderResponse($error);
- return;
- }
- if(!$agent->getAuthToken()) {
- $date = new DateTime();
- $newAuthToken = md5(uniqid($agent->getId(), true).$date->getTimestamp());
- $newAuthToken = substr($newAuthToken, 0, 31);
- $agent->setAuthToken($newAuthToken);
- $agent->save();
- }elseif (strlen($agent->getAuthToken()) > 32){
- $newAuthToken = substr($agent->getAuthToken(), 0, 31);
- $agent->setAuthToken($newAuthToken);
- $agent->save();
- }
- $this->renderResponse(array(
- 'Status' => 'SUCCESS',
- 'Token' => 'AuthToken-' . $agent->getAuthToken(),
- ));
- }
Add Comment
Please, Sign In to add comment