refactor(module): Remove AMD wrapper from SignUpPasswordView (#6287) r=@vladikoff

Extraction from #6273
This commit is contained in:
Shane Tomlinson 2018-06-20 05:29:56 +01:00 коммит произвёл Vlad Filippov
Родитель 1fd05d2110
Коммит fe9c262404
1 изменённых файлов: 82 добавлений и 86 удалений

Просмотреть файл

@ -2,97 +2,93 @@
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
define(function (require, exports, module) {
'use strict';
import AuthErrors from '../lib/auth-errors';
import BackMixin from './mixins/back-mixin';
import CheckboxMixin from './mixins/checkbox-mixin';
import Cocktail from 'cocktail';
import CoppaMixin from './mixins/coppa-mixin';
import EmailOptInMixin from './mixins/email-opt-in-mixin';
import FlowEventsMixin from './mixins/flow-events-mixin';
import FormPrefillMixin from './mixins/form-prefill-mixin';
import FormView from './form';
import PasswordMixin from './mixins/password-mixin';
import ServiceMixin from './mixins/service-mixin';
import SignUpMixin from './mixins/signup-mixin';
import Template from 'templates/sign_up_password.mustache';
const AuthErrors = require('../lib/auth-errors');
const BackMixin = require('./mixins/back-mixin');
const CheckboxMixin = require('./mixins/checkbox-mixin');
const Cocktail = require('cocktail');
const CoppaMixin = require('./mixins/coppa-mixin');
const EmailOptInMixin = require('./mixins/email-opt-in-mixin');
const FlowEventsMixin = require('./mixins/flow-events-mixin');
const FormPrefillMixin = require('./mixins/form-prefill-mixin');
const FormView = require('./form');
const PasswordMixin = require('./mixins/password-mixin');
const ServiceMixin = require('./mixins/service-mixin');
const SignUpMixin = require('./mixins/signup-mixin');
const Template = require('templates/sign_up_password.mustache');
class SignUpPasswordView extends FormView {
constructor (options) {
super(options);
class SignUpPasswordView extends FormView {
constructor (options) {
super(options);
this.template = Template;
}
this.template = Template;
}
getAccount () {
return this.model.get('account');
}
getAccount () {
return this.model.get('account');
}
beforeRender () {
if (! this.getAccount()) {
this.navigate('/');
}
}
setInitialContext (context) {
context.set(this.getAccount().pick('email'));
}
isValidEnd () {
if (! this._doPasswordsMatch()) {
return false;
}
return super.isValidEnd();
}
showValidationErrorsEnd () {
if (! this._doPasswordsMatch()) {
this.displayError(AuthErrors.toError('PASSWORDS_DO_NOT_MATCH'));
}
}
submit () {
return Promise.resolve().then(() => {
if (! this.isUserOldEnough()) {
return this.tooYoung();
}
const account = this.getAccount();
account.set('needsOptedInToMarketingEmail', this.hasOptedInToMarketingEmail());
return this.signUp(account, this._getPassword());
});
}
_getPassword () {
return this.getElementValue('#password');
}
_getVPassword () {
return this.getElementValue('#vpassword');
}
_doPasswordsMatch() {
return this._getPassword() === this._getVPassword();
beforeRender () {
if (! this.getAccount()) {
this.navigate('/');
}
}
Cocktail.mixin(
SignUpPasswordView,
BackMixin,
CheckboxMixin,
CoppaMixin({
required: true
}),
EmailOptInMixin,
FlowEventsMixin,
FormPrefillMixin,
PasswordMixin,
ServiceMixin,
SignUpMixin
);
setInitialContext (context) {
context.set(this.getAccount().pick('email'));
}
module.exports = SignUpPasswordView;
});
isValidEnd () {
if (! this._doPasswordsMatch()) {
return false;
}
return super.isValidEnd();
}
showValidationErrorsEnd () {
if (! this._doPasswordsMatch()) {
this.displayError(AuthErrors.toError('PASSWORDS_DO_NOT_MATCH'));
}
}
submit () {
return Promise.resolve().then(() => {
if (! this.isUserOldEnough()) {
return this.tooYoung();
}
const account = this.getAccount();
account.set('needsOptedInToMarketingEmail', this.hasOptedInToMarketingEmail());
return this.signUp(account, this._getPassword());
});
}
_getPassword () {
return this.getElementValue('#password');
}
_getVPassword () {
return this.getElementValue('#vpassword');
}
_doPasswordsMatch() {
return this._getPassword() === this._getVPassword();
}
}
Cocktail.mixin(
SignUpPasswordView,
BackMixin,
CheckboxMixin,
CoppaMixin({
required: true
}),
EmailOptInMixin,
FlowEventsMixin,
FormPrefillMixin,
PasswordMixin,
ServiceMixin,
SignUpMixin
);
module.exports = SignUpPasswordView;