summaryrefslogtreecommitdiff
path: root/app
diff options
context:
space:
mode:
Diffstat (limited to 'app')
-rw-r--r--app/assets/javascripts/users.js57
-rw-r--r--app/views/account/new.html.haml15
2 files changed, 25 insertions, 47 deletions
diff --git a/app/assets/javascripts/users.js b/app/assets/javascripts/users.js
index 4b5198f..9a10532 100644
--- a/app/assets/javascripts/users.js
+++ b/app/assets/javascripts/users.js
@@ -1,13 +1,6 @@
(function() {
- var settings = {
- "error_class":"help-inline",
- "error_tag":"span",
- "wrapper_error_class":"error",
- "wrapper_tag":"div",
- "wrapper_class":"form-group"
- }
//
// LOCAL FUNCTIONS
@@ -17,9 +10,8 @@
poll_identities,
prevent_default,
clear_errors,
- clear_field_errors,
validate_password_confirmation,
- validate_password_length,
+ signup,
update_user;
prevent_default = function(event) {
@@ -42,8 +34,13 @@
return $('#messages').empty();
};
- clear_field_errors = function() {
- return $(settings.error_tag + '.' + settings.error_class).remove();
+ signup = function(submitEvent) {
+ var form = submitEvent.target;
+ var validations = form.ClientSideValidations
+ if ( ( typeof validations === 'undefined' ) ||
+ $(form).isValid(validations.settings.validators) ) {
+ srp.signup();
+ }
};
update_user = function(submitEvent) {
@@ -75,19 +72,6 @@
}
};
- validate_password_length = function(submitEvent) {
- var form = submitEvent.target;
- var password = $(form).find('input#srp_password').val();
- if (password.length > 7) {
- return true;
- }
- else {
- displayFieldError("password", "needs to be at least 8 characters long.");
- submitEvent.stopImmediatePropagation()
- return false;
- }
- };
-
var account = {
// Returns the user's identity
@@ -175,24 +159,15 @@
var message = $.isArray(error) ? error[0] : error;
var element = $('form input[name$="[' + field + ']"]');
if (element) {
- addError(element, settings, message);
+ addError(element, message);
}
};
- function addError(element, settings, message) {
- var errorElement, wrapper;
-
- errorElement = element.parent().find("" + settings.error_tag + "." + settings.error_class);
- wrapper = element.closest(settings.wrapper_tag + '.' + settings.wrapper_class);
- if (errorElement[0] == null) {
- errorElement = $("<" + settings.error_tag + "/>", {
- "class": settings.error_class,
- text: message
- });
- element.after(errorElement);
- }
- wrapper.addClass(settings.wrapper_error_class);
- return errorElement.text(message);
+ function addError(element, message) {
+ var form = element.closest('form');
+ var settings = form[0].ClientSideValidations.settings;
+ ClientSideValidations.formBuilders['SimpleForm::FormBuilder'].add(element, settings, message);
+
}
//
@@ -203,10 +178,8 @@
$('.hidden.js-show').removeClass('hidden');
$('.js-show').show();
$('#new_user').submit(prevent_default);
- $('#new_user').submit(clear_field_errors);
- $('#new_user').submit(validate_password_length);
$('#new_user').submit(validate_password_confirmation);
- $('#new_user').submit(srp.signup);
+ $('#new_user').submit(signup);
$('#new_session').submit(prevent_default);
$('#new_session').submit(srp.login);
$('#update_login_and_password').submit(prevent_default);
diff --git a/app/views/account/new.html.haml b/app/views/account/new.html.haml
index d40259e..4766945 100644
--- a/app/views/account/new.html.haml
+++ b/app/views/account/new.html.haml
@@ -6,7 +6,12 @@
-# to prevent submission in the clear.
-#
-- form_options = {url: '/not-used', html: {id: 'new_user', class: user_form_class('form-horizontal'), style: 'display:none'}, validate: true}
+- form_options = { url: '/not-used',
+ html: { id: 'new_user',
+ class: user_form_class('form-horizontal'),
+ style: 'display:none' },
+ validate: true,
+ wrapper: :horizontal_form }
.col-md-1
.col-md-9
@@ -14,14 +19,14 @@
.lead=t :signup_info
= render "sessions/warnings"
= simple_form_for(@user, form_options) do |f|
- = f.input :login, :label => t(:username), :required => false, :input_html => { :id => :srp_username }
- = f.input :password, :label => t(:password), :required => false, :validate => true, :input_html => { :id => :srp_password }
- = f.input :password_confirmation, :label => t(:password_confirmation), :required => false, :validate => true, :input_html => { :id => :srp_password_confirmation }
+ = f.input :login, :label => t(:username), :validate => true, :input_html => { :id => :srp_username}
+ = f.input :password, :label => t(:password), :validate => true, :input_html => { :id => :srp_password }
+ = f.input :password_confirmation, :label => t(:password_confirmation), :validate => true, :input_html => { :id => :srp_password_confirmation }
- if APP_CONFIG[:invite_required]
= f.input :invite_code, :label => t(:invite_code), :input_html => { :id => :srp_invite_code }
- else
= f.input :invite_code, :as => "hidden", :input_html => { :value => " ", :id => :srp_invite_code }
- = f.button :wrapped, cancel: home_path
+ = f.button :submit # :wrapped, cancel: home_path
-#