[noosfero/noosfero][master] Handle optional fields for not logged users in login form

Daniela Feitosa gitlab at gitlab.com
Fri May 29 05:24:19 BRT 2015


Daniela Feitosa pushed to branch master at Noosfero / noosfero


Commits:
48493481 by Arthur Del Esposte at 2015-05-28T20:44:41Z
Handle optional fields for not logged users in login form

- - - - -


2 changed files:

- app/helpers/application_helper.rb
- test/unit/application_helper_test.rb


Changes:

=====================================
app/helpers/application_helper.rb
=====================================
--- a/app/helpers/application_helper.rb
+++ b/app/helpers/application_helper.rb
@@ -871,7 +871,7 @@ module ApplicationHelper
       field_html += capture(&block)
     end
 
-    if controller.action_name == 'signup' || controller.action_name == 'new_community' || (controller.controller_name == "enterprise_registration" && controller.action_name == 'index')
+    if controller.action_name == 'signup' || controller.action_name == 'new_community' || (controller.controller_name == "enterprise_registration" && controller.action_name == 'index') || (controller.controller_name == 'home' && controller.action_name == 'index' && user.nil?)
       if profile.signup_fields.include?(name)
         result = field_html
       end


=====================================
test/unit/application_helper_test.rb
=====================================
--- a/test/unit/application_helper_test.rb
+++ b/test/unit/application_helper_test.rb
@@ -360,6 +360,23 @@ class ApplicationHelperTest < ActionView::TestCase
     assert_equal 'SIGNUP_FIELD', optional_field(enterprise, 'field', 'SIGNUP_FIELD')
   end
 
+  should 'display field on home for a not logged user' do
+    env = create(Environment, :name => 'env test')
+    stubs(:environment).returns(env)
+
+    controller = mock
+    stubs(:controller).returns(controller)
+    controller.stubs(:controller_name).returns('home')
+    controller.stubs(:action_name).returns('index')
+
+    stubs(:user).returns(nil)
+
+
+    person = Person.new
+    person.expects(:signup_fields).returns(['field'])
+    assert_equal 'SIGNUP_FIELD', optional_field(person, 'field', 'SIGNUP_FIELD')
+  end
+
   should 'display field on community creation' do
     env = create(Environment, :name => 'env test')
     stubs(:environment).returns(env)



View it on GitLab: https://gitlab.com/noosfero/noosfero/commit/484934812c1a786f79fb619342b17216c09144f8
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://listas.softwarelivre.org/pipermail/noosfero-dev/attachments/20150529/70505293/attachment-0001.html>


More information about the Noosfero-dev mailing list