Commit 806ee6d5c2586e153cc9839d68226c42442fa16f
1 parent
182685eb
Exists in
master
and in
29 other branches
[template-welcome-page] Display person template welcome page
(ActionItem3075)
Showing
4 changed files
with
39 additions
and
3 deletions
Show diff stats
app/controllers/public/account_controller.rb
@@ -110,7 +110,7 @@ class AccountController < ApplicationController | @@ -110,7 +110,7 @@ class AccountController < ApplicationController | ||
110 | check_join_in_community(@user) | 110 | check_join_in_community(@user) |
111 | go_to_signup_initial_page | 111 | go_to_signup_initial_page |
112 | else | 112 | else |
113 | - redirect_to :controller => :home, :action => :welcome | 113 | + redirect_to :controller => :home, :action => :welcome, :template_id => @user.person.template.id |
114 | end | 114 | end |
115 | end | 115 | end |
116 | end | 116 | end |
@@ -442,7 +442,7 @@ class AccountController < ApplicationController | @@ -442,7 +442,7 @@ class AccountController < ApplicationController | ||
442 | when 'user_control_panel' | 442 | when 'user_control_panel' |
443 | redirect_to user.admin_url | 443 | redirect_to user.admin_url |
444 | when 'welcome_page' | 444 | when 'welcome_page' |
445 | - redirect_to :controller => :home, :action => :welcome | 445 | + redirect_to :controller => :home, :action => :welcome, :template_id => user.template.id |
446 | else | 446 | else |
447 | redirect_back_or_default(default) | 447 | redirect_back_or_default(default) |
448 | end | 448 | end |
app/controllers/public/home_controller.rb
@@ -21,6 +21,8 @@ class HomeController < PublicController | @@ -21,6 +21,8 @@ class HomeController < PublicController | ||
21 | def welcome | 21 | def welcome |
22 | self.class.no_design_blocks | 22 | self.class.no_design_blocks |
23 | @display_confirmation_tips = !user.present? && !environment.enabled?(:skip_new_user_email_confirmation) | 23 | @display_confirmation_tips = !user.present? && !environment.enabled?(:skip_new_user_email_confirmation) |
24 | + @person_template = Person.find(params[:template_id]) | ||
25 | + @template_welcome_page = @person_template.welcome_page && @person_template.welcome_page.published ? @person_template.welcome_page.body : nil | ||
24 | end | 26 | end |
25 | 27 | ||
26 | end | 28 | end |
app/views/home/welcome.html.erb
1 | <div id='thanks-for-signing'> | 1 | <div id='thanks-for-signing'> |
2 | + <h1><%= _("Welcome to %s!") % environment.name %></h1> | ||
2 | <% if environment.has_custom_welcome_screen? %> | 3 | <% if environment.has_custom_welcome_screen? %> |
3 | <%= environment.settings[:signup_welcome_screen_body].html_safe %> | 4 | <%= environment.settings[:signup_welcome_screen_body].html_safe %> |
4 | <% else %> | 5 | <% else %> |
5 | - <h1><%= _("Welcome to %s!") % environment.name %></h1> | ||
6 | <h3><%= _("Thanks for signing up, we're thrilled to have you on our social network!") %></h3> | 6 | <h3><%= _("Thanks for signing up, we're thrilled to have you on our social network!") %></h3> |
7 | <p><%= _("Firstly, some tips for getting started:") %></p> | 7 | <p><%= _("Firstly, some tips for getting started:") %></p> |
8 | <% if @display_confirmation_tips %> | 8 | <% if @display_confirmation_tips %> |
@@ -16,4 +16,8 @@ | @@ -16,4 +16,8 @@ | ||
16 | <p><%= _("%s your Gmail, Yahoo and Hotmail contacts!") % link_to(_('Invite and find'), {:controller => 'doc', :section => 'user', :topic => 'invite-contacts'}, :target => '_blank') %></p> | 16 | <p><%= _("%s your Gmail, Yahoo and Hotmail contacts!") % link_to(_('Invite and find'), {:controller => 'doc', :section => 'user', :topic => 'invite-contacts'}, :target => '_blank') %></p> |
17 | <p><%= _("Start exploring and have fun!") %></p> | 17 | <p><%= _("Start exploring and have fun!") %></p> |
18 | <% end %> | 18 | <% end %> |
19 | + <% if @template_welcome_page.present? %> | ||
20 | + <h1><%= _("What can I do as a %s?") % @person_template.name %></h1> | ||
21 | + <%= @template_welcome_page.html_safe %> | ||
22 | + <% end %> | ||
19 | </div> | 23 | </div> |
test/functional/home_controller_test.rb
@@ -130,4 +130,34 @@ class HomeControllerTest < ActionController::TestCase | @@ -130,4 +130,34 @@ class HomeControllerTest < ActionController::TestCase | ||
130 | assert_no_tag :tag => 'a', :attributes => {:href => '/account/signup'} | 130 | assert_no_tag :tag => 'a', :attributes => {:href => '/account/signup'} |
131 | end | 131 | end |
132 | 132 | ||
133 | + should 'display template welcome page' do | ||
134 | + template = create_user('template').person | ||
135 | + template.is_template = true | ||
136 | + welcome_page = TinyMceArticle.create!(:name => 'Welcome page', :profile => template, :published => true, :body => 'Template welcome page') | ||
137 | + template.welcome_page = welcome_page | ||
138 | + template.save! | ||
139 | + get :welcome, :template_id => template.id | ||
140 | + assert_equal welcome_page.body, assigns(:template_welcome_page) | ||
141 | + assert_match /#{welcome_page.body}/, @response.body | ||
142 | + end | ||
143 | + | ||
144 | + should 'not display template welcome page if it is not published' do | ||
145 | + template = create_user('template').person | ||
146 | + template.is_template = true | ||
147 | + welcome_page = TinyMceArticle.create!(:name => 'Welcome page', :profile => template, :published => false) | ||
148 | + template.welcome_page = welcome_page | ||
149 | + template.save! | ||
150 | + get :welcome, :template_id => template.id | ||
151 | + assert_nil assigns(:template_welcome_page) | ||
152 | + end | ||
153 | + | ||
154 | + should 'not crash template doess not have a welcome page' do | ||
155 | + template = create_user('template').person | ||
156 | + template.is_template = true | ||
157 | + template.save! | ||
158 | + assert_nothing_raised do | ||
159 | + get :welcome, :template_id => template.id | ||
160 | + end | ||
161 | + end | ||
162 | + | ||
133 | end | 163 | end |