From 619b7714b72f233b336c79f6b015d58adec7237f Mon Sep 17 00:00:00 2001 From: Rodrigo Souto Date: Thu, 24 May 2012 13:59:30 -0300 Subject: [PATCH] [stoa] Adding usp fields to profile basic info --- plugins/stoa/lib/stoa_plugin.rb | 10 ++++++++++ plugins/stoa/public/javascripts/signup_complement.js | 7 +++++-- plugins/stoa/public/style.css | 8 ++++++++ 3 files changed, 23 insertions(+), 2 deletions(-) diff --git a/plugins/stoa/lib/stoa_plugin.rb b/plugins/stoa/lib/stoa_plugin.rb index 0fe3062..2d4fbb0 100644 --- a/plugins/stoa/lib/stoa_plugin.rb +++ b/plugins/stoa/lib/stoa_plugin.rb @@ -27,6 +27,16 @@ class StoaPlugin < Noosfero::Plugin } end + def profile_info_extra_contents + lambda { + labelled_form_field(_('USP number'), text_field_tag('profile_data[usp_id]', '', :id => 'usp_id_field')) + + content_tag(:small, _('The usp id grants you special powers in the network. Don\'t forget to fill it if you have one.')) + + content_tag('div', required(labelled_form_field(_('Birth date (yyyy-mm-dd)'), text_field_tag('birth_date', ''))), :id => 'signup-birth-date', :style => 'display: none') + + content_tag('div', required(labelled_form_field(_('CPF'), text_field_tag('cpf', ''))), :id => 'signup-cpf', :style => 'display:none') + + javascript_include_tag('../plugins/stoa/javascripts/jquery.observe_field', '../plugins/stoa/javascripts/signup_complement') + } if context.profile.person? && context.profile.usp_id.blank? + end + def account_controller_filters block = lambda do params[:profile_data] ||= {} diff --git a/plugins/stoa/public/javascripts/signup_complement.js b/plugins/stoa/public/javascripts/signup_complement.js index 0297687..efa2cb7 100644 --- a/plugins/stoa/public/javascripts/signup_complement.js +++ b/plugins/stoa/public/javascripts/signup_complement.js @@ -1,6 +1,7 @@ jQuery("#usp_id_field").observe_field(1, function(){ var me=this; jQuery(this).addClass('checking').removeClass('validated'); + jQuery(this.parentNode).addClass('checking') jQuery.getJSON('/plugin/stoa/check_usp_id?usp_id='+me.value, function(data){ if(data.exists) { @@ -18,12 +19,14 @@ jQuery("#usp_id_field").observe_field(1, function(){ jQuery('#confirmation_field').remove(); jQuery('#signup-form').append('') } - jQuery('#signup-form .submit').attr('disabled', false); - jQuery(me).removeClass('checking').addClass('validated'); + jQuery('#signup-form .submit').attr('disabled', false); + jQuery(me).removeClass('checking').addClass('validated'); + jQuery(me.parentNode).removeClass('checking') }); } else { jQuery(me).removeClass('checking'); + jQuery(me.parentNode).removeClass('checking') if(me.value) { jQuery('#signup-form .submit').attr('disabled', true); jQuery(me).addClass('invalid'); diff --git a/plugins/stoa/public/style.css b/plugins/stoa/public/style.css index 16e2728..607fb68 100644 --- a/plugins/stoa/public/style.css +++ b/plugins/stoa/public/style.css @@ -29,3 +29,11 @@ right: 20px; bottom: 110px; } + +.controller-profile_editor input.checking { + cursor: progress; +} + +.controller-profile_editor div.checking { + background: transparent url(/images/loading-small.gif) 153px center no-repeat; +} -- libgit2 0.21.2