/** * Checks if the given email isn't already registered */ public function ajaxValidateEmailAction() { $error_flags = array(); $error_messages = array(); $validator = new Zend_Validate_EmailAddress(); $validator->getHostnameValidator()->setValidateTld(false); if (empty($this->post['personal']['email'])) { } elseif (!$validator->isValid($this->post['personal']['email'])) { $error_messages[] = Shopware()->Snippets()->getNamespace("frontend")->get('RegisterAjaxEmailNotValid', 'Please enter a valid mail address.', true); $error_flags['email'] = true; if (!empty($this->post['personal']['emailConfirmation'])) { $error_flags['emailConfirmation'] = true; } } elseif (empty($this->post['personal']['skipLogin']) && $this->admin->sGetUserByMail($this->post['personal']['email'])) { $error_messages[] = Shopware()->Snippets()->getNamespace("frontend")->get('RegisterAjaxEmailForgiven', 'This mail address is already in use.', true); $error_flags['email'] = true; if (!empty($this->post['personal']['emailConfirmation'])) { $error_flags['emailConfirmation'] = true; } } elseif (empty($this->post['personal']['emailConfirmation'])) { $error_flags['email'] = false; } elseif ($this->post['personal']['emailConfirmation'] != $this->post['personal']['email']) { $error_messages[] = Shopware()->Snippets()->getNamespace("frontend")->get('RegisterAjaxEmailNotEqual', 'The mail addresses you have entered are not equal.', true); $error_flags['email'] = true; $error_flags['emailConfirmation'] = true; } else { $error_flags['email'] = false; $error_flags['emailConfirmation'] = false; } foreach ($error_messages as $key => $error_message) { $error_messages[$key] = $this->View()->fetch('string:' . $error_message); } echo Zend_Json::encode(array('success' => empty($error_messages), 'error_flags' => $error_flags, 'error_messages' => $error_messages)); }
/** * @covers sAdmin::sGetUserMailById * @covers sAdmin::sGetUserByMail * @covers sAdmin::sGetUserNameById */ public function testGetEmailAndUser() { $customer = $this->createDummyCustomer(); // Test sGetUserMailById with null and expected cases $this->assertNull($this->module->sGetUserMailById()); $this->session->offsetSet('sUserId', $customer->getId()); $this->assertEquals($customer->getEmail(), $this->module->sGetUserMailById()); // Test sGetUserByMail with null and expected cases $this->assertNull($this->module->sGetUserByMail(uniqid())); $this->assertEquals($customer->getId(), $this->module->sGetUserByMail($customer->getEmail())); // Test sGetUserNameById with null and expected cases $this->assertEmpty($this->module->sGetUserNameById(uniqid())); $this->assertEquals(array('firstname' => 'Max', 'lastname' => 'Mustermann'), $this->module->sGetUserNameById($customer->getId())); $this->deleteDummyCustomer($customer); }