/www/jssrc/blerg/PasswdForm.js
enyo.kind({
name: "blerg.PasswdForm",
classes: "blerg-form",
components: [
{kind: "onyx.Groupbox", components: [
{kind: "onyx.InputDecorator", components: [
{name: "oldpassword", kind: "onyx.Input", placeholder: "Old Password", type: "password"}
]}
]},
{kind: "onyx.Groupbox", components: [
{kind: "onyx.InputDecorator", components: [
{name: "password1", kind: "onyx.Input", placeholder: "New Password", type: "password"}
]},
{kind: "onyx.InputDecorator", components: [
{name: "password2", kind: "onyx.Input", placeholder: "New Password (again)", type: "password"}
]}
]},
{name: "changePasswordError", tag: "p", showing: false, classes: "blerg-error", content: "I couldn't change your password. Are you sure you have the right old password?"},
{name: "passwordMatchError", tag: "p", showing: false, classes: "blerg-error", content: "Your new passwords don't match."},
{name: "changeButton", kind: "onyx.Button", content: "Change", onclick: "changeClick", classes: "onyx.affirmative"},
{name: "spinner", kind: "OldSchoolSpinner", showing: false},
{name: "api", kind: "blerg.API",
onPasswordChangeSuccessful: "passwordChangeSuccessful",
onPasswordChangeFailed: "passwordChangeFailed"}
],
hideErrors: function() {
this.$.changePasswordError.hide();
this.$.passwordMatchError.hide();
},
changeClick: function() {
this.hideErrors();
if (this.$.oldpassword.getValue() == '') {
this.$.changePasswordError.show();
return;
}
if (this.$.password1.getValue() != this.$.password2.getValue()) {
this.$.passwordMatchError.show();
return;
}
this.$.changeButton.setDisabled(true);
this.$.spinner.show();
this.$.spinner.start();
this.$.api.changePassword(this.$.oldpassword.getValue(), this.$.password1.getValue());
},
passwordChangeSuccessful: function(inSender, inEvent) {
this.$.oldpassword.setValue('');
this.$.password1.setValue('');
this.$.password2.setValue('');
this.$.changeButton.setDisabled(false);
this.$.spinner.hide();
this.$.spinner.stop();
alert("Password Changed Successfully");
},
passwordChangeFailed: function(inSender, inEvent) {
this.$.changeButton.setDisabled(false);
this.$.spinner.hide();
this.$.spinner.stop();
this.hideErrors();
this.$.changePasswordError.show();
}
});