/** * exec post user question * @return void * @throws \Exception */ public function execute() { $post = $this->getRequest()->getPostValue(); if (!$post) { $this->_redirect('*/*/'); return; } $this->inlineTranslation->suspend(); try { $postObject = new \Magento\Framework\DataObject(); $postObject->setData($post); $error = false; /* validate-checking */ if (!\Zend_Validate::is(trim($post['name']), 'NotEmpty')) { $error = true; } if (!\Zend_Validate::is(trim($post['comment']), 'NotEmpty')) { $error = true; } if (!\Zend_Validate::is(trim($post['email']), 'EmailAddress')) { $error = true; } /** * setting custome param * add new elements : product_name & product_sku information */ if (array_key_exists('product_name', $post) && array_key_exists('product_sku', $post)) { if (!\Zend_Validate::is(trim($post['product_name']), 'NotEmpty')) { $error = true; } if (!\Zend_Validate::is(trim($post['product_sku']), 'NotEmpty')) { $error = true; } } /* this column, hideit, is not so sure for using during this process, so I close it temporarily.... if (!\Zend_Validate::is(trim($post['hideit']), 'NotEmpty')) { $error = true; }*/ if ($error) { throw new \Exception(); //todo } /* Transport email to user */ $storeScope = \Magento\Store\Model\ScopeInterface::SCOPE_STORE; $transport = $this->_transportBuilder->setTemplateIdentifier($this->scopeConfig->getValue(self::XML_PATH_EMAIL_TEMPLATE, $storeScope))->setTemplateOptions(['area' => \Magento\Backend\App\Area\FrontNameResolver::AREA_CODE, 'store' => \Magento\Store\Model\Store::DEFAULT_STORE_ID])->setTemplateVars(['data' => $postObject])->setFrom($this->scopeConfig->getValue(self::XML_PATH_EMAIL_SENDER, $storeScope))->addTo($this->scopeConfig->getValue(self::XML_PATH_EMAIL_RECIPIENT, $storeScope))->setReplyTo($post['email'])->getTransport(); $transport->sendMessage(); $this->inlineTranslation->resume(); $this->messageManager->addSuccess(__('Hi there, this is Optoma, and thanks for your contacting with us about your questions by nice information, and we will notify you very soon, see you next time~')); /* redirect to new page :: pending */ $this->_redirect('contact/index'); return; } catch (\Exception $e) { /* Error Log should be noted here */ $this->inlineTranslation->resume(); $this->messageManager->addError(__('Hi there, this is Optoma, so sorry for that we just cant\'t process your request right now, please wait a minutes and we will contact y ou very soon~')); $this->_redirect('contact/index'); //todo return; } }
/** * Post user question * * @return void * @throws \Exception */ public function execute() { $post = $this->getRequest()->getPostValue(); if (!$post) { $this->_redirect('*/*/'); return; } $this->inlineTranslation->suspend(); try { $postObject = new \Magento\Framework\DataObject(); $postObject->setData($post); $error = false; if (!\Zend_Validate::is(trim($post['contact_email']), 'EmailAddress')) { $error = true; } if (!\Zend_Validate::is(trim($post['contact_question']), 'NotEmpty')) { $error = true; } if ($error) { throw new \Exception(); } $storeScope = \Magento\Store\Model\ScopeInterface::SCOPE_STORE; $transport = $this->_transportBuilder->setTemplateIdentifier($this->scopeConfig->getValue(self::XML_PATH_EMAIL_TEMPLATE, $storeScope))->setTemplateOptions(['area' => \Magento\Backend\App\Area\FrontNameResolver::AREA_CODE, 'store' => \Magento\Store\Model\Store::DEFAULT_STORE_ID])->setTemplateVars(['data' => $postObject])->setFrom($this->scopeConfig->getValue(self::XML_PATH_EMAIL_SENDER, $storeScope))->addTo($this->scopeConfig->getValue(self::XML_PATH_EMAIL_RECIPIENT, $storeScope))->setReplyTo($post['contact_email'])->getTransport(); $transport->sendMessage(); $this->inlineTranslation->resume(); $this->messageManager->addSuccess(__('Thanks for contacting us with your comments and questions. We\'ll respond to you very soon.')); $this->_redirect('delivery-charges'); return; } catch (\Exception $e) { $this->inlineTranslation->resume(); $this->messageManager->addError(__('We can\'t process your request right now. Sorry, that\'s all we know.')); $this->_redirect('delivery-charges'); return; } }
/** * Make sure the user is valid * * @return void */ public function isValid($value) { $valid = true; $this->_user = $value; $namePartsValidator = new Zend_Validate(); $namePartsValidator->addValidator(new Zend_Validate_NotEmpty(Zend_Validate_NotEmpty::STRING))->addValidator(new Zend_Validate_Alpha(array('allowWhiteSpace' => true)))->addValidator(new Zend_Validate_StringLength(array('min' => 2))); if (!$namePartsValidator->isValid($this->_user->getFirstName())) { $valid = false; $this->_error($this->_view->translate('The first name must have at least 2 characters and consist only of letters')); } if (!$namePartsValidator->isValid($this->_user->getLastName())) { $valid = false; $this->_error($this->_view->translate('The last name must have at least 2 characters and consist only of letters')); } $emailValidator = new Zend_Validate_EmailAddress(); if (!$emailValidator->isValid($this->_user->getEmail())) { $valid = false; $this->_error($this->_view->translate('You must entre a valid email')); } if ($this->_user->isNew()) { $usernameValidator = new Zend_Validate(); $usernameValidator->addValidator(new Zend_Validate_NotEmpty(Zend_Validate_NotEmpty::STRING))->addValidator(new Zend_Validate_Alnum(array('allowWhiteSpace' => false)))->addValidator(new Zend_Validate_StringLength(array('min' => 5))); if (!$usernameValidator->isValid($this->_user->getUsername())) { $this->_error($this->_view->translate('The username must have at least 5 characters and contains no white spaces')); } } return $valid; }
public function mailAction() { $error = array(); $posts = array('First Name' => $_POST['first_name'], 'Last Name' => $_POST['last_name'], 'Email' => $_POST['email'], 'Message' => $_POST['message']); $validatorChain = new Zend_Validate(); $validatorChain->addValidator(new Zend_Validate_NotEmpty()); $valid_email = new Zend_Validate_EmailAddress(); if ($valid_email->isValid($posts['Email'])) { } else { foreach ($valid_email->getMessages() as $message) { $error[] = "Email {$message}\n"; } } foreach ($posts as $key => $post) { if ($validatorChain->isValid($post)) { } else { foreach ($validatorChain->getMessages() as $message) { $error[] = "{$key} {$message}\n"; } } } if (count($error) != 0) { $this->view->alerts = $error; } else { $to = '*****@*****.**'; $subject = 'Email from Illustrated Portland'; $message = $posts['Message']; $headers = "From: {$posts['First Name']} {$posts['Last Name']} <{$posts['Email']}>"; mail($to, $subject, $message, $headers); //$this->view->alerts = array("Thank You! Your message has been sent."); } }
/** * Save changes to an existing panel. This can be expanded to allow adding of new Panels in the future. * * @return void */ protected function _savePanel() { // First of all we need to validate and sanitise the input from the form $urlFilter = new Zend_Filter(); $urlFilter->addFilter(new Zend_Filter_StringTrim()); $urlFilter->addFilter(new Zend_Filter_StringTrim('/')); $requiredText = new Zend_Validate(); $requiredText->addValidator(new Zend_Validate_NotEmpty()); $filters = array('id' => 'Digits'); $validators = array('id' => array('allowEmpty' => true), 'content' => array('allowEmpty' => true)); $input = new Zend_Filter_Input($filters, $validators, $_POST); if ($input->isValid()) { // Data is all valid, formatted and sanitized so we can save it in the database $panel = new Datasource_Cms_Panels(); if (!$input->id) { // This is a new panel so we need to create a new ID // NOT IMPLEMENTED - YET } else { $panel->saveChanges($input->id, $input->getUnescaped('content')); $panelID = $input->id; } // Changes saved - so send them back with a nice success message $this->_helper->getHelper('FlashMessenger')->addMessage(array('saved' => true)); $this->_helper->getHelper('Redirector')->goToUrl('/cms-admin/panels/edit?id=' . $panelID); } else { // Invalid data in form /* print_r($_POST); print_r($input->getErrors()); print_r($input->getInvalid()); */ } }
/** * Initializes the form element. */ function init() { // set label $this->setLabel('Email'); // set required $this->setRequired(true); // set filter $this->addFilter('StringTrim'); // add validator for max string length $this->addValidator('StringLength', false, array(0, 256)); // add validator for email addresses $emailValidator = new Zend_Validate_EmailAddress(Zend_Validate_Hostname::ALLOW_DNS | Zend_Validate_Hostname::ALLOW_LOCAL); $this->addValidator($emailValidator); // add validator for beeing unique in the database $validator = new Zend_Validate(); $message = 'The email is already in the database, please check if you are already registered.'; $userTableValidator = new Zend_Validate_Db_NoRecordExists('Auth_User', 'email'); $userTableValidator->setMessage($message); if (!empty($this->_excludeId)) { $userTableValidator->setExclude(array('field' => 'id', 'value' => $this->_excludeId)); } $registrationTableValidator = new Zend_Validate_Db_NoRecordExists('Auth_Registration', 'email'); $registrationTableValidator->setMessage($message); // chainvalidators and add to field $validator->addValidator($userTableValidator)->addValidator($registrationTableValidator); $this->addValidator($validator); }
/** * Initializes the form element. */ function init() { $this->setLabel('Email'); // set required $this->setRequired(true); // set filter $this->addFilter('StringTrim'); // add validator for max string length $this->addValidator('StringLength', false, array(0, 256)); // add validator for email addresses $this->addValidator('emailAddress'); // add validator for beeing unique in the database $validator = new Zend_Validate(); $message = 'The email is already in the database, please check if you are already registered.'; $participantsTableValidator = new Meetings_Form_Validate_Email('Meetings_Participants', 'email'); $participantsTableValidator->setMessage($message); $participantsTableValidator->setMeetingId($this->_meetingId); if (!empty($this->_excludeId)) { $participantsTableValidator->setExcludeId($this->_excludeId); } $registrationTableValidator = new Meetings_Form_Validate_Email('Meetings_Registration', 'email'); $registrationTableValidator->setMessage($message); $registrationTableValidator->setMeetingId($this->_meetingId); // chainvalidators and add to field $validator->addValidator($participantsTableValidator)->addValidator($registrationTableValidator); $this->addValidator($validator); }
/** * Initializes the form element. */ function init() { // set filter $this->addFilter('StringTrim'); // set required $this->setRequired(true); // set label $this->setLabel(ucfirst($this->getName())); // set validator for lowercase or regular alnum if (Daiquiri_Config::getInstance()->auth->lowerCaseUsernames) { $this->addValidator(new Daiquiri_Form_Validator_LowerCaseAlnum()); } else { $this->addValidator(new Daiquiri_Form_Validator_AlnumUnderscore()); } // add validator for min and max string length $minLength = Daiquiri_Config::getInstance()->auth->usernameMinLength; $this->addValidator('StringLength', false, array($minLength, 256)); // add validator for beeing unique in the database $validator = new Zend_Validate(); $message = 'The username is in use, please use another username.'; $userTableValidator = new Zend_Validate_Db_NoRecordExists('Auth_User', 'username'); $userTableValidator->setMessage($message); if (!empty($this->_excludeId)) { $userTableValidator->setExclude(array('field' => 'id', 'value' => $this->_excludeId)); } $registrationTableValidator = new Zend_Validate_Db_NoRecordExists('Auth_Registration', 'username'); $registrationTableValidator->setMessage($message); $appTableValidator = new Zend_Validate_Db_NoRecordExists('Auth_Apps', 'appname'); $appTableValidator->setMessage($message); $validator->addValidator($userTableValidator)->addValidator($registrationTableValidator)->addValidator($appTableValidator); $this->addValidator($validator); }
/** * */ protected function initStatusValidator() { $validator = new ZendValidator(); $validator->addValidator($this->getNotEmpty()); $validator->addValidator($this->getDigits()); $this->elements['status'] = $validator; }
public function indexAction() { $emailValidator = new Zend_Validate_EmailAddress(); $nameValidator = new Zend_Validate_NotEmpty(array(Zend_Validate_NotEmpty::STRING, Zend_Validate_NotEmpty::SPACE)); $password1_Validator = new Zend_Validate(); $password1_Validator->addValidator(new Zend_Validate_StringLength(array('min' => 6, 'max' => 12)))->addValidator(new Zend_Validate_Alnum()); $password2_Validator = new Zend_Validate(); $password2_Validator->addValidator(new Zend_Validate_StringLength(array('min' => 6, 'max' => 12)))->addValidator(new Zend_Validate_Alnum()); $captcha = new Zend_Captcha_Image(); $captcha->setName('captchaword')->setFont(APPLICATION_PATH . '/data/arial.ttf')->setFontSize(28)->setImgDir(APPLICATION_PATH . '/../public/img')->setImgUrl('/img')->setWordLen(5)->setDotNoiseLevel(20)->setExpiration(300); $request = $this->getRequest(); $post = $request->getPost(); // $passwordIdentical = new Zend_Validate_Identical(array('token' => $post['password1'])); $messages = array(); $error = array(); $noValiError = true; if ($this->getRequest()->isPost()) { if (!$emailValidator->isValid($post['user-email'])) { $error['user-emailVali'] = '請輸入正確的Email帳號'; $noValiError = false; } if (!$nameValidator->isValid($post['name'])) { $error['nameVali'] = '姓名必填'; $noValiError = false; } if (!$password1_Validator->isValid($post['password1'])) { $error['password1_Vali'] = '1.密碼長度需介於6~12之間,而且只能使用數字、英文'; $noValiError = false; } if (!$password2_Validator->isValid($post['password2'])) { $error['password2_Vali'] = '1.密碼長度需介於6~12之間,而且只能使用數字、英文'; $noValiError = false; } if (isset($post['password1']) && isset($post['password2']) && !($post['password1'] == $post['password2'])) { $error['passwordIdentical'] = '2.密碼輸入不同'; $noValiError = false; } if (!($post['agree'] == 1)) { $error['agreeVali'] = '需同意服務條款及隱私權政策,才可以註冊'; $noValiError = false; } if (!$captcha->isValid($post['captchaword'])) { $error['captchawordVali'] = '認證碼輸入錯誤'; $noValiError = false; } if ($noValiError) { // register process $this->_signup($post); $this->view->messages = $post; $this->redirect('index/index'); } else { $this->_genCaptcha($captcha); $this->view->error = $error; $this->view->messages = $post; } } else { $this->_genCaptcha($captcha); } }
public function validInput($data) { $validator = new Zend_Validate(); //$validator->addValidator(new Zend_Validate_Int()); if ($validator->isValid($data)) { return $data; } else { //$this->_model->isValid = false; return $this->_info['errMsg']; } }
/** * @expectedException \Magento\Framework\Exception\LocalizedException * @expectedExceptionMessage The file 'File Title' for 'Option Title' has an invalid extension. */ public function testValidateWithInvalidFile() { $relativePath = '/custom_options/quote/file'; $optionValues = ['quote_path' => '/custom_options/quote/file', 'title' => 'File Title']; $this->prepare(); $this->directoryRead->expects($this->once())->method('isReadable')->with($relativePath)->willReturn(false); $this->option->expects($this->once())->method('getTitle')->willReturn('Option Title'); $this->zendValidator->expects($this->at(2))->method('getErrors')->willReturn(true); $this->zendValidator->expects($this->at(3))->method('getErrors')->willReturn([\Zend_Validate_File_ExcludeExtension::FALSE_EXTENSION]); $this->validator->validate($optionValues, $this->option); }
public function __construct($arrParam = array(), $options = null) { ////////////////////////////////// //Kiem tra Name ///////////// ////////////////////////////////// if ($arrParam['action'] == 'add') { $options = array('table' => 'da_album', 'field' => 'album_name'); } elseif ($arrParam['action'] == 'edit') { $options = array('table' => 'da_album', 'field' => 'album_name', 'exclude' => array('field' => 'id', 'value' => $arrParam['id'])); } $validator = new Zend_Validate(); $validator->addValidator(new Zend_Validate_NotEmpty(), true)->addValidator(new Zend_Validate_StringLength(3, 100), true); if (!$validator->isValid($arrParam['album_name'])) { $message = $validator->getMessages(); $this->_messageError['album_name'] = 'Tên album: ' . current($message); $arrParam['album_name'] = ''; } ////////////////////////////////// //Kiem tra Picture small /////////// ////////////////////////////////// $upload = new Zend_File_Transfer_Adapter_Http(); $fileInfo = $upload->getFileInfo('picture'); $fileName = $fileInfo['picture']['name']; if (!empty($fileName)) { $upload->addValidator('Extension', true, array('jpg', 'gif', 'png'), 'picture'); $upload->addValidator('Size', true, array('min' => '2KB', 'max' => '1000KB'), 'picture'); if (!$upload->isValid('picture')) { $message = $upload->getMessages(); $this->_messageError['picture'] = 'Hình ảnh đại diện: ' . current($message); } } ////////////////////////////////// //Kiem tra Order ///////////// ////////////////////////////////// $validator = new Zend_Validate(); $validator->addValidator(new Zend_Validate_StringLength(1, 10), true)->addValidator(new Zend_Validate_Digits(), true); if (!$validator->isValid($arrParam['order'])) { $message = $validator->getMessages(); $this->_messageError['order'] = 'Sắp xếp: ' . current($message); $arrParam['order'] = ''; } ////////////////////////////////// //Kiem tra Status ///////////// ////////////////////////////////// if (empty($arrParam['status']) || !isset($arrParam['status'])) { $arrParam['status'] = 0; } //======================================== // TRUYEN CAC GIA TRI DUNG VAO MANG $_arrData //======================================== $this->_arrData = $arrParam; }
/** * Add rule to be applied to a validation scope * * @param \Zend_Validate_Interface $validator * @param string $fieldName Field name to apply validation to, or empty value to validate entity as a whole * @return \Magento\Framework\Validator\DataObject * @api */ public function addRule(\Zend_Validate_Interface $validator, $fieldName = '') { if (!array_key_exists($fieldName, $this->_rules)) { $this->_rules[$fieldName] = $validator; } else { $existingValidator = $this->_rules[$fieldName]; if (!$existingValidator instanceof \Zend_Validate) { $compositeValidator = new \Zend_Validate(); $compositeValidator->addValidator($existingValidator); $this->_rules[$fieldName] = $compositeValidator; } $this->_rules[$fieldName]->addValidator($validator); } return $this; }
public function isValidText($value, $maxLenghtValue) { $validator = new Zend_Validate(); // Create a validator chain and add validators to it $validator->addValidator(new Zend_Validate_NotEmpty())->addValidator(new Zend_Validate_StringLength(1, $maxLenghtValue)); // Validate the value if ($validator->isValid($value)) { return true; } else { // value failed validation; print reasons foreach ($validator->getMessages() as $message) { return array('Error' => $message); } } }
/** * Used by the Zendesk single sign on functionality to authenticate users. * Only works for admin panel users, not for customers. */ public function authenticateAction() { if (!Mage::getStoreConfig('zendesk/sso/enabled')) { Mage::getSingleton('adminhtml/session')->addError(Mage::helper('zendesk')->__('Single sign-on disabled.')); $this->_redirect(Mage::getSingleton('admin/session')->getUser()->getStartupPageUrl()); } $domain = Mage::getStoreConfig('zendesk/general/domain'); $token = Mage::getStoreConfig('zendesk/sso/token'); if (!Zend_Validate::is($domain, 'NotEmpty')) { Mage::getSingleton('adminhtml/session')->addError(Mage::helper('zendesk')->__('Zendesk domain not set. Please add this to the settings page.')); $this->_redirect(Mage::getSingleton('admin/session')->getUser()->getStartupPageUrl()); } if (!Zend_Validate::is($token, 'NotEmpty')) { Mage::getSingleton('adminhtml/session')->addError(Mage::helper('zendesk')->__('Zendesk SSO token not set. Please add this to the settings page.')); $this->_redirect(Mage::getSingleton('admin/session')->getUser()->getStartupPageUrl()); } $now = time(); $jti = md5($now . rand()); $user = Mage::getSingleton('admin/session')->getUser(); $name = $user->getName(); $email = $user->getEmail(); $externalId = $user->getId(); $payload = array("iat" => $now, "jti" => $jti, "name" => $name, "email" => $email, "external_id" => $externalId); Mage::log('Admin JWT: ' . var_export($payload, true), null, 'zendesk.log'); $jwt = JWT::encode($payload, $token); $url = "http://" . $domain . "/access/jwt?jwt=" . $jwt; Mage::log('Admin URL: ' . $url, null, 'zendesk.log'); $this->_redirectUrl($url); }
public function validate() { $errors = array(); if (!Zend_Validate::is(trim($this->getFirstname()), 'NotEmpty')) { $errors[] = Mage::helper('customer')->__('The first name cannot be empty.'); } if (!Zend_Validate::is(trim($this->getLastname()), 'NotEmpty')) { $errors[] = Mage::helper('customer')->__('The last name cannot be empty.'); } if (!Zend_Validate::is($this->getEmail(), 'EmailAddress')) { $errors[] = Mage::helper('customer')->__('Invalid email address "%s".', $this->getEmail()); } if (!Zend_Validate::is($this->getPermission(), 'Int')) { $errors[] = Mage::helper('customer')->__('Invalid permissions "%s".', $this->getPermission()); } if (!Zend_Validate::is($this->getParentCustomerId(), 'NotEmpty')) { $errors[] = Mage::helper('customer')->__('Invalid main account "%s".', $this->getParentCustomerId()); } $password = $this->getPassword(); if (!$this->getId() && !Zend_Validate::is($password, 'NotEmpty')) { $errors[] = Mage::helper('customer')->__('The password cannot be empty.'); } if (strlen($password) && !Zend_Validate::is($password, 'StringLength', array(6))) { $errors[] = Mage::helper('customer')->__('The minimum password length is %s', 6); } $confirmation = $this->getPasswordConfirmation(); if ($password != $confirmation) { $errors[] = Mage::helper('customer')->__('Please make sure your passwords match.'); } if (empty($errors)) { return true; } return $errors; }
public function checkemailregisterAction() { if (!Mage::helper('magenotification')->checkLicenseKeyFrontController($this)) { return; } $email_address = $this->getRequest()->getParam('email_address'); $isvalid_email = true; if (!Zend_Validate::is(trim($email_address), 'EmailAddress')) { $isvalid_email = false; } if ($isvalid_email) { $error = false; $email = Mage::getResourceModel('customer/customer_collection')->addAttributeToFilter('email', $email_address)->getFirstItem(); $customer = Mage::getSingleton('customer/session')->getCustomer(); if ($email->getId() && (!$customer || !$customer->getId() || $customer && $customer->getId() != $email->getId())) { $error = true; } if ($error) { $html = "<div class='error-msg'>" . $this->__('The email %s belongs to a customer. If it is your email address, you can use it to <a href="%s">login</a> our system.', $email_address, Mage::getUrl('*/*/login', array('id' => $this->getRequest()->getParam('id')))) . "</div>"; $html .= '<input type="hidden" id="is_valid_email" value="0"/>'; } else { $html = "<div class='success-msg'>" . $this->__('You can use this email address.') . "</div>"; $html .= '<input type="hidden" id="is_valid_email" value="1"/>'; } } else { $html = "<div class='error-msg'>" . $this->__('Invalid email address.') . "</div>"; $html .= '<input type="hidden" id="is_valid_email" value="1"/>'; } $this->getResponse()->setBody($html); }
/** * Forgot customer password action * * @return \Magento\Framework\Controller\Result\Redirect */ public function execute() { /** @var \Magento\Framework\Controller\Result\Redirect $resultRedirect */ $resultRedirect = $this->resultRedirectFactory->create(); $email = (string) $this->getRequest()->getPost('email'); if ($email) { if (!\Zend_Validate::is($email, 'EmailAddress')) { $this->session->setForgottenEmail($email); $this->messageManager->addErrorMessage(__('Please correct the email address.')); return $resultRedirect->setPath('*/*/forgotpassword'); } try { $this->customerAccountManagement->initiatePasswordReset($email, AccountManagement::EMAIL_RESET); } catch (NoSuchEntityException $exception) { // Do nothing, we don't want anyone to use this action to determine which email accounts are registered. } catch (SecurityViolationException $exception) { $this->messageManager->addErrorMessage($exception->getMessage()); return $resultRedirect->setPath('*/*/forgotpassword'); } catch (\Exception $exception) { $this->messageManager->addExceptionMessage($exception, __('We\'re unable to send the password reset email.')); return $resultRedirect->setPath('*/*/forgotpassword'); } $this->messageManager->addSuccessMessage($this->getSuccessMessage($email)); return $resultRedirect->setPath('*/*/'); } else { $this->messageManager->addErrorMessage(__('Please enter your email.')); return $resultRedirect->setPath('*/*/forgotpassword'); } }
public function postAction() { if ($data = Zend_Json::decode($this->getRequest()->getRawBody())) { $customer = new Customer_Model_Customer(); try { if (!Zend_Validate::is($data['email'], 'EmailAddress')) { throw new Exception($this->_('Please enter a valid email address')); } $dummy = new Customer_Model_Customer(); $dummy->find(array('email' => $data['email'], "app_id" => $this->getApplication()->getId())); if ($dummy->getId()) { throw new Exception($this->_('We are sorry but this address is already used.')); } if (empty($data['show_in_social_gaming'])) { $data['show_in_social_gaming'] = 0; } if (empty($data['password'])) { throw new Exception($this->_('Please enter a password')); } $customer->setData($data)->setAppId($this->getApplication()->getId())->setPassword($data['password'])->save(); $this->getSession()->setCustomer($customer); $this->_sendNewAccountEmail($customer, $data['password']); $html = array('success' => 1, 'customer_id' => $customer->getId(), 'can_access_locked_features' => $customer->canAccessLockedFeatures()); } catch (Exception $e) { $html = array('error' => 1, 'message' => $e->getMessage()); } $this->_sendHtml($html); } }
public function forgotpasswordpostAction() { $block = Mage::app()->getLayout()->createBlock('amajaxlogin/customer_form_login', 'form_login')->setTemplate('amasty/amajaxlogin/customer/form/forgotpassword.phtml'); $message = $block->toHtml(); $title = $this->__('Forgot Your Password?'); $email = (string) $this->getRequest()->getPost('email'); if ($email) { if (!Zend_Validate::is($email, 'EmailAddress')) { $this->_getSession()->setForgottenEmail($email); $this->showCartPopup($title, $this->__('Invalid email address.'), $message, 1); return; } /** @var $customer Mage_Customer_Model_Customer */ $customer = Mage::getModel('customer/customer')->setWebsiteId(Mage::app()->getStore()->getWebsiteId())->loadByEmail($email); if ($customer->getId()) { try { $newResetPasswordLinkToken = Mage::helper('customer')->generateResetPasswordLinkToken(); $customer->changeResetPasswordLinkToken($newResetPasswordLinkToken); $customer->sendPasswordResetConfirmationEmail(); } catch (Exception $exception) { $this->showCartPopup($title, $exception->getMessage(), $message, 1); return; } } $this->showCartPopup($title, Mage::helper('customer')->__('If there is an account associated with %s you will receive an email with a link to reset your password.', Mage::helper('customer')->htmlEscape($email)), $message, 2); return; } else { $this->showCartPopup($title, $this->__('Please enter your email.'), $message, 1); return; } $this->showCartPopup($title, "", $message, 3); }
public function save($post) { $res = array('success' => true, 'errors' => array()); if (!isset($post['name']) || empty($post['name'])) { $res['success'] = false; $res['errors'][] = 'Имя обязательно для ввода'; } if (!isset($post['email']) || empty($post['email']) || !Zend_Validate::is($post['email'], 'EmailAddress')) { $res['success'] = false; $res['errors'][] = 'Введите корректно электронную почту'; } if (!isset($post['date_birth']) || empty($post['date_birth']) || !strtotime($post['date_birth'])) { $res['success'] = false; $res['errors'][] = 'Введите корректно дату рождения'; } if (!isset($post['level_id']) || empty($post['level_id']) || !in_array($post['level_id'], array(1, 2, 3, 4, 5, 6))) { $res['success'] = false; $res['errors'][] = 'Укажите корректно уровень'; } if ($this->_pupilsModel->existsName($post['name'])) { $res['success'] = false; $res['errors'][] = 'Пользователь с именем ' . $post['name'] . ' уже существует'; } if ($this->_pupilsModel->existsEmail($post['email'])) { $res['success'] = false; $res['errors'][] = 'Пользователь с почтой ' . $post['email'] . ' уже существует'; } if (!$res['success']) { return $res; } $this->_pupilsModel->save(array('name' => $post['name'], 'email' => $post['email'], 'level_id' => $post['level_id'], 'date_birth' => strtotime($post['date_birth']))); return $res; }
/** * action for customer forgot password */ public function customerForgotPasswordAction() { if ($this->_expireAjax()) { return; } $customerSession = Mage::getSingleton('customer/session'); $result = array('success' => true, 'messages' => array()); $email = (string) $this->getRequest()->getPost('email'); if ($email) { if (Zend_Validate::is($email, 'EmailAddress')) { /** @var $customer Mage_Customer_Model_Customer */ $customer = Mage::getModel('customer/customer')->setWebsiteId(Mage::app()->getStore()->getWebsiteId())->loadByEmail($email); if ($customer->getId()) { try { Mage::helper('onestepcheckout/customer')->sendForgotPasswordForCustomer($customer); } catch (Exception $exception) { $result['success'] = false; $result['messages'][] = $exception->getMessage(); } } } else { $customerSession->setForgottenEmail($email); $result['success'] = false; $result['messages'][] = $this->__('Invalid email address.'); } } else { $result['success'] = false; $result['messages'][] = $this->__('Please enter your email.'); } $this->getResponse()->setBody(Mage::helper('core')->jsonEncode($result)); }
/** * Forgot customer password action * * @return \Magento\Framework\Controller\Result\Redirect */ public function execute() { /** @var \Magento\Framework\Controller\Result\Redirect $resultRedirect */ $resultRedirect = $this->resultRedirectFactory->create(); $email = (string) $this->getRequest()->getPost('email'); if ($email) { if (!\Zend_Validate::is($email, 'EmailAddress')) { $this->_getSession()->setForgottenEmail($email); $this->messageManager->addError(__('Please correct the email address.')); $resultRedirect->setPath('*/*/forgotpassword'); return $resultRedirect; } try { $this->customerAccountManagement->initiatePasswordReset($email, AccountManagement::EMAIL_RESET); } catch (NoSuchEntityException $e) { // Do nothing, we don't want anyone to use this action to determine which email accounts are registered. } catch (\Exception $exception) { $this->messageManager->addException($exception, __('Unable to send password reset email.')); $resultRedirect->setPath('*/*/forgotpassword'); return $resultRedirect; } $email = $this->escaper->escapeHtml($email); // @codingStandardsIgnoreStart $this->messageManager->addSuccess(__('If there is an account associated with %1 you will receive an email with a link to reset your password.', $email)); // @codingStandardsIgnoreEnd $resultRedirect->setPath('*/*/'); return $resultRedirect; } else { $this->messageManager->addError(__('Please enter your email.')); $resultRedirect->setPath('*/*/forgotpassword'); return $resultRedirect; } }
public function personalAction() { $aclUserDao = $this->dao->load('Core_User'); $userId = $this->admin['id'] ? $this->admin['id'] : 0; $user = $aclUserDao->read($this->admin['id']); // do post if ($_POST) { // validation if (!$userId) { $this->addError('common.notempty', 'User Id'); } if (!Zend_Validate::is($this->param('name'), 'NotEmpty')) { $this->addError('common.notempty', 'User name'); } if ($this->noError()) { $data['name'] = $this->param('name'); if ($this->param('pass')) { $data['pass'] = Hush_Util::md5($this->param('pass')); } // do update if ($userId) { $aclUserDao->update($data, 'id=' . $userId); $this->addErrorMsg('Personal Infomation updated successfully'); } } } $this->view->user = $user; }
/** * New subscription action */ public function newAction() { if ($this->getRequest()->isPost() && $this->getRequest()->getPost('email')) { $session = Mage::getSingleton('core/session'); $customerSession = Mage::getSingleton('customer/session'); $email = (string) $this->getRequest()->getPost('email'); try { if (!Zend_Validate::is($email, 'EmailAddress')) { Mage::throwException($this->__('Please enter a valid email address.')); } if (Mage::getStoreConfig(Mage_Newsletter_Model_Subscriber::XML_PATH_ALLOW_GUEST_SUBSCRIBE_FLAG) != 1 && !$customerSession->isLoggedIn()) { Mage::throwException($this->__('Sorry, but administrator denied subscription for guests. Please <a href="%s">register</a>.', Mage::helper('customer')->getRegisterUrl())); } $ownerId = Mage::getModel('customer/customer')->setWebsiteId(Mage::app()->getStore()->getWebsiteId())->loadByEmail($email)->getId(); if ($ownerId !== null && $ownerId != $customerSession->getId()) { Mage::throwException($this->__('This email address is already assigned to another user.')); } $status = Mage::getModel('newsletter/subscriber')->subscribe($email); if ($status == Mage_Newsletter_Model_Subscriber::STATUS_NOT_ACTIVE) { $session->addSuccess($this->__('Confirmation request has been sent.')); } else { $session->addSuccess($this->__('Thank you for your subscription.')); } } catch (Mage_Core_Exception $e) { $session->addException($e, $this->__('There was a problem with the subscription: %s', $e->getMessage())); } catch (Exception $e) { $session->addException($e, $this->__('There was a problem with the subscription.')); } } $this->_redirectReferer(); }
/** * Get Data Order * * @throws \Exception * @throws \Zend_Validate_Exception */ public function execute() { $orderId = $this->getRequest()->getParam('orderID'); //check orderId is number if (\Zend_Validate::is($orderId, 'Regex', array('pattern' => '/^\\s*-?\\d*(\\.\\d*)?\\s*$/'))) { $order = $this->_orderFactory->create(); $order->load($orderId); $orderData = []; if ($order->getId()) { $orderData['status'] = $order->getStatus(); $orderData['total'] = $order->getGrandTotal(); $items = []; foreach ($order->getAllVisibleItems() as $item) { $items[] = ['sku' => $item->getSku(), 'item_id' => $item->getId(), 'price' => $item->getPriceInclTax()]; } $orderData['items'] = $items; $orderData['total_invoiced'] = $order->getTotalInvoiced(); } if (empty($orderData)) { $this->getResponse()->setBody('Order not found!'); } else { $this->getResponse()->setBody(json_encode($orderData)); } } else { $this->getResponse()->setBody('Error! OrderID must is number!'); } }
/** * Displays a form to register a new user. * * @return XenForo_ControllerResponse_Abstract */ public function actionIndex() { if (XenForo_Visitor::getUserId()) { throw $this->responseException($this->responseRedirect(XenForo_ControllerResponse_Redirect::RESOURCE_CANONICAL, $this->getDynamicRedirect())); } $this->_assertRegistrationActive(); $username = ''; $email = ''; if ($login = $this->_input->filterSingle('login', XenForo_Input::STRING)) { if (Zend_Validate::is($login, 'EmailAddress')) { $email = $login; } else { $username = $login; } } $fields = array('username' => $username, 'email' => $email); $writer = XenForo_DataWriter::create('XenForo_DataWriter_User'); if ($username !== '') { $writer->set('username', $username); } if ($email !== '') { $writer->set('email', $email); } return $this->_getRegisterFormResponse($fields, $writer->getErrors()); }
public function forgotpassPostAction() { $email = $this->getRequest()->getPost('email'); if ($email) { if (!Zend_Validate::is($email, 'EmailAddress')) { $message = $this->__('Invalid email address.'); } else { $customer = Mage::getModel('customer/customer')->setWebsiteId(Mage::app()->getStore()->getWebsiteId())->loadByEmail($email); if ($customer->getId()) { try { $newPassword = $customer->generatePassword(); $customer->changePassword($newPassword, false); $customer->sendPasswordReminderEmail(); $message = $this->__('A new password has been sent.'); } catch (Exception $e) { $message = $e->getMessage(); } } else { $message = $this->__('This email address was not found in our records.'); } } } else { $message = $this->__('Please enter your email.'); } $result['error'] = $message; $this->getResponse()->setBody(Zend_Json::encode($result)); }
public function convertEmailsToSubscribers($emailsString) { // Get emails from test fields $emails = nl2br($emailsString); $newEmString = array(); if (isset($emails) && $emails != "") { $mails = explode('<br />', $emails); foreach ($mails as $mail) { try { if (!Zend_Validate::is($mail, 'EmailAddress')) { } if ($mail && $mail != "") { $status = Mage::getModel('newsletter/subscriber')->subscribe(trim($mail)); if ($status > 0) { $user = Mage::getModel('newsletter/subscriber')->loadByEmail(trim($mail)); $id = $user->getId(); $user->confirm($user->getCode()); $newEmString[] = $id; } } } catch (Mage_Core_Exception $e) { } catch (Exception $e) { } } } return $newEmString; }