tb_core 1.0.2 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (153) hide show
  1. checksums.yaml +8 -8
  2. data/README.md +89 -0
  3. data/app/assets/javascripts/{spud/admin → admin}/application.js +1 -7
  4. data/app/assets/javascripts/admin/dashboard.js +9 -0
  5. data/app/assets/javascripts/admin/split_pane.js +138 -0
  6. data/app/assets/javascripts/admin/users.js +84 -0
  7. data/app/assets/stylesheets/{spud/admin/application.css → admin/application.css.scss} +14 -104
  8. data/app/assets/stylesheets/admin/login.css.scss +49 -0
  9. data/app/assets/stylesheets/admin/split_pane.css.scss +126 -0
  10. data/app/assets/stylesheets/admin/users.css.scss +9 -0
  11. data/app/controllers/{spud/admin → admin}/application_controller.rb +29 -30
  12. data/app/controllers/admin/dashboard_controller.rb +23 -0
  13. data/app/controllers/admin/password_resets_controller.rb +51 -0
  14. data/app/controllers/admin/roles_controller.rb +58 -0
  15. data/app/controllers/admin/settings_controller.rb +19 -0
  16. data/app/controllers/admin/setup_controller.rb +24 -0
  17. data/app/controllers/{spud/admin → admin}/user_sessions_controller.rb +8 -8
  18. data/app/controllers/admin/users_controller.rb +69 -0
  19. data/app/controllers/password_resets_controller.rb +52 -0
  20. data/app/controllers/sitemaps_controller.rb +8 -0
  21. data/app/controllers/spud/application_controller.rb +6 -20
  22. data/app/controllers/user_sessions_controller.rb +26 -0
  23. data/app/helpers/{spud/admin → admin}/application_helper.rb +1 -1
  24. data/app/helpers/admin/roles_helper.rb +2 -0
  25. data/app/helpers/spud/application_helper.rb +0 -7
  26. data/app/mailers/core_mailer.rb +9 -0
  27. data/app/models/spud_permission.rb +33 -0
  28. data/app/models/spud_role.rb +32 -0
  29. data/app/models/spud_role_permission.rb +9 -0
  30. data/app/models/spud_user.rb +79 -24
  31. data/app/models/spud_user_setting.rb +3 -3
  32. data/app/views/{spud/admin → admin}/dashboard/index.html.erb +1 -4
  33. data/app/views/admin/password_resets/index.html.erb +10 -0
  34. data/app/views/admin/password_resets/show.html.erb +15 -0
  35. data/app/views/admin/roles/_form.html.erb +33 -0
  36. data/app/views/admin/roles/edit.html.erb +2 -0
  37. data/app/views/admin/roles/index.html.erb +29 -0
  38. data/app/views/admin/roles/new.html.erb +2 -0
  39. data/app/views/{spud/admin → admin}/settings/edit.html.erb +6 -1
  40. data/app/views/admin/setup/new.html.erb +44 -0
  41. data/app/views/admin/user_sessions/new.html.erb +17 -0
  42. data/app/views/{spud/admin → admin}/users/_form.html.erb +20 -20
  43. data/app/views/admin/users/_index.html.erb +15 -0
  44. data/app/views/admin/users/edit.html.erb +3 -0
  45. data/app/views/admin/users/index.html.erb +34 -0
  46. data/app/views/admin/users/new.html.erb +3 -0
  47. data/app/views/admin/users/show.html.erb +28 -0
  48. data/app/views/layouts/admin/application.html.erb +68 -0
  49. data/app/views/layouts/{spud/admin → admin}/detail.html.erb +2 -2
  50. data/app/views/layouts/admin/login.html.erb +27 -0
  51. data/app/views/password_resets/index.html.erb +11 -0
  52. data/app/views/password_resets/show.html.erb +26 -0
  53. data/app/views/user_sessions/new.html.erb +25 -0
  54. data/config/routes.rb +22 -15
  55. data/db/migrate/20130620143010_create_spud_roles.rb +10 -0
  56. data/db/migrate/20130620143941_create_spud_permissions.rb +10 -0
  57. data/db/migrate/20130620151132_create_spud_role_permissions.rb +11 -0
  58. data/db/migrate/20130620163144_drop_spud_admin_permissions.rb +15 -0
  59. data/db/seeds.rb +3 -0
  60. data/lib/spud_core/belongs_to_app.rb +35 -48
  61. data/lib/spud_core/configuration.rb +5 -10
  62. data/lib/spud_core/engine.rb +31 -6
  63. data/lib/spud_core/exceptions.rb +7 -0
  64. data/lib/spud_core/searchable.rb +9 -9
  65. data/lib/spud_core/version.rb +3 -3
  66. data/spec/controllers/{spud/admin → admin}/application_controller_spec.rb +10 -6
  67. data/spec/controllers/{spud/admin → admin}/dashboard_controller_spec.rb +17 -29
  68. data/spec/controllers/{spud/admin → admin}/password_reset_controller_spec.rb +5 -5
  69. data/spec/controllers/admin/settings_controller_spec.rb +30 -0
  70. data/spec/controllers/admin/setup_controller_spec.rb +39 -0
  71. data/spec/controllers/admin/user_sessions_controller_spec.rb +52 -0
  72. data/spec/controllers/{spud/admin → admin}/users_controller_spec.rb +19 -35
  73. data/spec/controllers/{spud/sitemap_controllers_spec.rb → sitemap_controllers_spec.rb} +1 -1
  74. data/spec/dummy/config/database.yml +2 -2
  75. data/spec/dummy/db/schema.rb +23 -5
  76. data/spec/dummy/log/test.log +36118 -0
  77. data/spec/helpers/spud/admin/application_helper_spec.rb +1 -1
  78. data/spec/models/spud_role_spec.rb +46 -0
  79. data/spec/models/spud_user_spec.rb +0 -1
  80. metadata +101 -97
  81. data/README.markdown +0 -60
  82. data/app/assets/images/back_disabled.jpg +0 -0
  83. data/app/assets/images/back_enabled.jpg +0 -0
  84. data/app/assets/images/favicon.ico +0 -0
  85. data/app/assets/images/forward_disabled.jpg +0 -0
  86. data/app/assets/images/forward_enabled.jpg +0 -0
  87. data/app/assets/images/sort_asc.png +0 -0
  88. data/app/assets/images/sort_asc_disabled.png +0 -0
  89. data/app/assets/images/sort_both.png +0 -0
  90. data/app/assets/images/sort_desc.png +0 -0
  91. data/app/assets/images/sort_desc_disabled.png +0 -0
  92. data/app/assets/images/spud/admin/flick/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
  93. data/app/assets/images/spud/admin/flick/ui-bg_flat_0_eeeeee_40x100.png +0 -0
  94. data/app/assets/images/spud/admin/flick/ui-bg_flat_55_ffffff_40x100.png +0 -0
  95. data/app/assets/images/spud/admin/flick/ui-bg_flat_75_ffffff_40x100.png +0 -0
  96. data/app/assets/images/spud/admin/flick/ui-bg_glass_65_ffffff_1x400.png +0 -0
  97. data/app/assets/images/spud/admin/flick/ui-bg_highlight-soft_100_f6f6f6_1x100.png +0 -0
  98. data/app/assets/images/spud/admin/flick/ui-bg_highlight-soft_25_0073ea_1x100.png +0 -0
  99. data/app/assets/images/spud/admin/flick/ui-bg_highlight-soft_50_dddddd_1x100.png +0 -0
  100. data/app/assets/images/spud/admin/flick/ui-icons_0073ea_256x240.png +0 -0
  101. data/app/assets/images/spud/admin/flick/ui-icons_454545_256x240.png +0 -0
  102. data/app/assets/images/spud/admin/flick/ui-icons_666666_256x240.png +0 -0
  103. data/app/assets/images/spud/admin/flick/ui-icons_ff0084_256x240.png +0 -0
  104. data/app/assets/images/spud/admin/flick/ui-icons_ffffff_256x240.png +0 -0
  105. data/app/assets/images/spud/admin/spud_logo.png +0 -0
  106. data/app/assets/images/spud/admin/spud_logo@2x.png +0 -0
  107. data/app/assets/javascripts/spud/admin/dashboard.js +0 -80
  108. data/app/assets/javascripts/spud/admin/jquery.dataTables.min.js +0 -151
  109. data/app/assets/stylesheets/spud/forms.css +0 -108
  110. data/app/assets/stylesheets/spud/login/application.css +0 -302
  111. data/app/assets/stylesheets/spud/login.css +0 -58
  112. data/app/assets/stylesheets/spud/setup.css +0 -4
  113. data/app/assets/stylesheets/spud/sitemaps.css +0 -4
  114. data/app/assets/stylesheets/spud/user_sessions.css +0 -4
  115. data/app/assets/stylesheets/spud/users.css +0 -4
  116. data/app/controllers/spud/admin/dashboard_controller.rb +0 -34
  117. data/app/controllers/spud/admin/password_resets_controller.rb +0 -52
  118. data/app/controllers/spud/admin/settings_controller.rb +0 -27
  119. data/app/controllers/spud/admin/users_controller.rb +0 -109
  120. data/app/controllers/spud/setup_controller.rb +0 -21
  121. data/app/controllers/spud/sitemaps_controller.rb +0 -8
  122. data/app/helpers/spud/password_resets_helper.rb +0 -2
  123. data/app/mailers/spud/core_mailer.rb +0 -12
  124. data/app/models/spud_admin_permission.rb +0 -5
  125. data/app/views/layouts/spud/admin/application.html.erb +0 -73
  126. data/app/views/layouts/spud/login/application.html.erb +0 -17
  127. data/app/views/layouts/spud/setup.html.erb +0 -47
  128. data/app/views/spud/admin/password_resets/index.html.erb +0 -14
  129. data/app/views/spud/admin/password_resets/show.html.erb +0 -25
  130. data/app/views/spud/admin/user_sessions/new.html.erb +0 -27
  131. data/app/views/spud/admin/users/_edit.html.erb +0 -14
  132. data/app/views/spud/admin/users/_new.html.erb +0 -15
  133. data/app/views/spud/admin/users/edit.html.erb +0 -3
  134. data/app/views/spud/admin/users/index.html.erb +0 -42
  135. data/app/views/spud/admin/users/new.html.erb +0 -3
  136. data/app/views/spud/admin/users/show.html.erb +0 -12
  137. data/app/views/spud/setup/index.html.erb +0 -43
  138. data/spec/controllers/spud/admin/settings_controller_spec.rb +0 -55
  139. data/spec/controllers/spud/admin/user_sessions_controller_spec.rb +0 -51
  140. data/spec/controllers/spud/setup_controller_spec.rb +0 -56
  141. /data/app/assets/images/{spud/admin → admin}/down_arrow.gif +0 -0
  142. /data/app/assets/images/{spud/admin → admin}/up_arrow.gif +0 -0
  143. /data/app/assets/images/{spud/admin → admin}/users_thumb.png +0 -0
  144. /data/app/assets/javascripts/{spud/admin → admin}/date_picker.js +0 -0
  145. /data/app/assets/javascripts/{spud/admin → admin}/editor.js +0 -0
  146. /data/app/assets/javascripts/{spud/admin → admin}/preinit.js +0 -0
  147. /data/app/assets/javascripts/{spud/password_resets.js → admin/roles.js} +0 -0
  148. /data/app/assets/stylesheets/{spud/admin → admin}/jquery-ui.css +0 -0
  149. /data/app/assets/stylesheets/{spud/password_resets.css → admin/roles.css} +0 -0
  150. /data/app/views/{spud/admin → admin}/settings/_form.html.erb +0 -0
  151. /data/app/views/{spud/core_mailer → core_mailer}/forgot_password_notification.html.erb +0 -0
  152. /data/app/views/{spud/core_mailer → core_mailer}/forgot_password_notification.text.erb +0 -0
  153. /data/app/views/{spud/sitemaps → sitemaps}/show.xml.builder +0 -0
@@ -1,73 +0,0 @@
1
- <!DOCTYPE html>
2
- <html>
3
- <head>
4
- <title>Spud Admin</title>
5
- <%= stylesheet_link_tag *Spud::Core.config.admin_stylesheets %>
6
- <%= javascript_include_tag *Spud::Core.config.admin_javascripts %>
7
- <%= csrf_meta_tags %>
8
- <%=yield :head%>
9
- </head>
10
- <body>
11
- <div id="header" style="<%=header_style%>">
12
- <%=link_to spud_admin_root_url do%>
13
- <h1><%= Spud::Core.config.site_name %> Admin</h1>
14
- <%end%>
15
- <div id="user_meta">
16
- <span class="greeting">Hello <%= @current_user.full_name %></span> |
17
- <%=link_to "Settings", spud_admin_settings_path%> |
18
- <%=link_to "Logout",spud_admin_logout_path %>
19
- </div>
20
- <%if Spud::Core.multisite_mode_enabled == true%>
21
- <div id="multisite_switcher" class="right_floated">
22
- <%=form_tag spud_admin_switch_url do%>
23
- <%=select_tag :multisite_select,options_for_select([[Spud::Core.site_name,nil]] + Spud::Core.multisite_config.collect{|c| [c[:site_name],c[:site_id]]},session[:admin_site])%>
24
- <%end%>
25
- </div>
26
- <%end%>
27
- </div>
28
- <div id="breadcrumbs">
29
- <%= render_breadcrumbs :separator => ' / ' %>
30
- </div>
31
- <div id="content">
32
- <% if flash[:notice] %>
33
- <div class="alert alert-success">
34
- <a class="close" data-dismiss="alert">×</a>
35
- <%= flash[:notice] %>
36
- </div>
37
- <% end %>
38
- <% if flash[:warning] %>
39
-
40
- <div class="alert alert-warning">
41
- <a class="close" data-dismiss="alert">×</a>
42
- <%= flash[:warning] %>
43
- </div>
44
- <% end %>
45
- <% if flash[:error]%>
46
-
47
- <div class="alert alert-error">
48
- <a class="close" data-dismiss="alert">×</a>
49
- <%= flash[:error] %>
50
- </div>
51
- <%-end%>
52
- <%= content_for?(:content) ? yield(:content) : yield %>
53
- </div>
54
-
55
-
56
-
57
-
58
- <div id="modal_window" class="modal hide fade" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
59
- <div class="modal-header">
60
- <button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
61
- <h3 class="modal-title"></h3>
62
- </div>
63
- <div class="modal-body">
64
-
65
- </div>
66
- <div class="modal-footer modal-footer-default">
67
- <button class="btn" data-dismiss="modal" aria-hidden="true">Close</button>
68
- <button class="btn btn-primary form-submit">Save changes</button>
69
- </div>
70
- </div>
71
-
72
- </body>
73
- </html>
@@ -1,17 +0,0 @@
1
- <!DOCTYPE html>
2
- <html>
3
- <head>
4
- <title>Spud Admin</title>
5
- <%= stylesheet_link_tag("spud/login/application") %>
6
-
7
- <%= csrf_meta_tags %>
8
- <%=content_for :head%>
9
- </head>
10
- <body>
11
-
12
- <div id="content_wrapper">
13
- <div id="content"><%=yield%></div>
14
- </div>
15
-
16
- </body>
17
- </html>
@@ -1,47 +0,0 @@
1
- <!DOCTYPE html>
2
- <html>
3
- <head>
4
- <title>Spud Admin</title>
5
- <%= stylesheet_link_tag "spud/admin/application" %>
6
- <%= javascript_include_tag "spud/admin/application" %>
7
- <%= csrf_meta_tags %>
8
- <%=content_for :head%>
9
- </head>
10
- <body>
11
- <div id="header">
12
- <h1>Spud First Time Setup</h1>
13
-
14
- </div>
15
- <div id="breadcrumbs">
16
- <%= render_breadcrumbs :separator => ' / ' %>
17
- </div>
18
- <div id="content">
19
- <div id="detail_wrapper">
20
- <h2>
21
- <%if @page_thumbnail%>
22
- <span class="thumb_wrapper"><%=image_tag(@page_thumbnail)%></span>
23
- <%end%>
24
- <%=@page_name%>
25
- </h2>
26
-
27
- <div id="details">
28
- <%if content_for?(:detail_nav)%>
29
- <div id="detail_nav_wrapper">
30
- <div id="detail_nav">
31
- <%= yield(:detail_nav)%></div>
32
-
33
- </div>
34
- <div id="detail_main_wrapper">
35
- <div id="detail_main">
36
- <%= content_for?(:detail) ? yield(:detail) : yield %></div>
37
- </div>
38
- <br style="clear:both;"/>
39
- <%else%>
40
- <%= content_for?(:detail) ? yield(:detail) : yield %>
41
- <%end%>
42
- </div>
43
- </div>
44
- </div>
45
-
46
- </body>
47
- </html>
@@ -1,14 +0,0 @@
1
- <div class="login-form">
2
- <h1>Forgot Password</h1>
3
- <%= form_tag spud_admin_password_resets_path do %>
4
-
5
- <div class="field-group">
6
- <%= label_tag :email %>
7
- <%= text_field_tag :email %>
8
- </div>
9
-
10
- <div class="field-group">
11
- <%= submit_tag "Send Reset Instructions" %>
12
- </div>
13
- <% end %>
14
- </div>
@@ -1,25 +0,0 @@
1
- <div class="login-form">
2
- <h1>Password Reset</h1>
3
- <%= form_for @user, url: spud_admin_password_reset_path(:id => @user.perishable_token) do |f| %>
4
- <% if flash[:notice] %>
5
- <div class="alert alert-success">
6
- <%= flash[:notice] %>
7
- </div>
8
- <% end %>
9
- <%= error_messages_for(f.object) %>
10
-
11
- <div class="field-group">
12
- <%= f.label :password %>
13
- <%= f.password_field :password %>
14
- </div>
15
- <div class="field-group">
16
- <%= f.label :password_confirmation %>
17
- <%= f.password_field :password_confirmation %>
18
- </div>
19
-
20
- <div class="field-group">
21
- <%= f.submit "Reset Password" %>
22
- </div>
23
-
24
- <% end %>
25
- </div>
@@ -1,27 +0,0 @@
1
- <div class="login-form">
2
- <h1>Login</h1>
3
- <%= form_for @user_session, :url => spud_admin_login_path do |f| %>
4
- <% if flash[:notice] %>
5
- <div class="alert alert-success">
6
- <%= flash[:notice] %>
7
- </div>
8
- <% end %>
9
- <%= error_messages_for(f.object) %>
10
-
11
- <div class="field-group">
12
- <%= f.label :login %>
13
- <%= f.text_field :login %>
14
- </div>
15
- <div class="field-group">
16
- <%= f.label :password %>
17
- <%= f.password_field :password %>
18
- </div>
19
- <div class="field-group">
20
- <%= f.check_box :remember_me %> <%= f.label :remember_me, class: 'inline' %>
21
- </div>
22
- <div class="field-group">
23
- <%= f.submit "Login" %> or <%=link_to "Forgot Password?", spud_admin_password_resets_path %>
24
- </div>
25
-
26
- <% end %>
27
- </div>
@@ -1,14 +0,0 @@
1
-
2
-
3
- <p> Fill in all information pertaining to the current user you wish to modify. Fields marked with * are required and must be filled out.</p>
4
-
5
- <%=form_for @user,:url => spud_admin_user_path(:id => @user.id),:html=>{:class=>"form-horizontal"} do |f|%>
6
- <%=render :partial => "form",:locals => {:f => f}%>
7
-
8
- <div class="form-actions form-actions-no-modal">
9
- <%=f.submit "Save User", :class=>"btn btn-primary"%> or <%=link_to "cancel",request.referer,:class => "btn"%>
10
- </div>
11
-
12
- <%end%>
13
-
14
-
@@ -1,15 +0,0 @@
1
-
2
-
3
- <p> Fill in all information pertaining to the new user you wish to create. Fields marked with * are required and must be filled out.</p>
4
-
5
- <%=form_for @user,:url => spud_admin_users_path(),:html=>{:class=>"form-horizontal"} do |f|%>
6
- <%=render :partial => "form",:locals => {:f => f}%>
7
-
8
- <div class="form-actions form-actions-no-modal">
9
- <%=f.submit "Save User", :class=>"btn btn-primary"%> or <%=link_to "cancel",request.referer,:class => "btn"%>
10
- </div>
11
-
12
- <%end%>
13
-
14
-
15
-
@@ -1,3 +0,0 @@
1
- <%=content_for :detail do%>
2
- <%=render "edit"%>
3
- <%end%>
@@ -1,42 +0,0 @@
1
- <%=content_for :data_controls do%>
2
- <%=link_to "New User",new_spud_admin_user_path(),:class => "ajax btn btn-primary",:title => "New User"%>
3
- <%end%>
4
- <%=content_for :detail do%>
5
- <table class="admin-table data-table" id="usertable">
6
- <thead>
7
- <tr>
8
-
9
- <th><%= sortable "login"%></th>
10
- <th><%= sortable "email"%></th>
11
- <th><%= sortable "first_name", "Name"%></th>
12
-
13
- <th><%= sortable "last_login_at", "Last Login"%></th>
14
- <th><%= sortable "created_at", "Date Created"%></th>
15
- <th></th>
16
- </tr>
17
- </thead>
18
- <tbody>
19
- <%@users.each do |user|%>
20
- <tr id="row_user_<%=user.id%>">
21
-
22
- <td><%=link_to user.login,edit_spud_admin_user_path(:id => user.id),:class => "ajax", :title => "Edit #{user.login}"%></td>
23
- <td><%=user.email%></td>
24
- <td><%=user.first_name%>&nbsp;<%=user.last_name%></td>
25
-
26
- <td><%=timestamp user.last_login_at%></td>
27
- <td><%=timestamp user.created_at%></td>
28
- <td align="right"><%=link_to "Remove",spud_admin_user_path(:id => user.id),:method => :delete,:remote => true,:confirm => "Are you sure you want to remove this user?",:class => "btn btn-danger"%></td>
29
- </tr>
30
- <%end%>
31
- </tbody>
32
- <tfoot>
33
- <tr>
34
- <td colspan="6">
35
- <%=will_paginate @users%>
36
- </td>
37
- </tr>
38
- </tfoot>
39
- </table>
40
-
41
-
42
- <%end%>
@@ -1,3 +0,0 @@
1
- <%=content_for :detail do%>
2
- <%=render "new"%>
3
- <%end%>
@@ -1,12 +0,0 @@
1
- <%=content_for :data_controls do%>
2
- <%=link_to "Edit",edit_spud_admin_user_path(:id => @user.id),:class => "ajax",:title => "Edit User"%> | <%=link_to "Remove",spud_admin_user_path(:id => @user.id),:method => :delete,:title => "Remove User",:confirm => "Are you sure you wish to remove this user?"%>
3
- <%end%>
4
-
5
- <%=content_for :detail do%>
6
- <div class="info_card">
7
- <p><strong>Login:</strong> <%=@user.login%> <%="(Super Administrator)" if @user.super_admin%></p>
8
- <p><strong>Email:</strong> <%=link_to @user.email, "mailto:#{@user.email}"%></p>
9
- <p><strong>Last Login:</strong> <span title="IP: <%=@user.last_login_ip%>"><%=timestamp @user.last_login_at%></span></p>
10
- <p><strong>Created:</strong> <%=timestamp @user.created_at%></p>
11
- </div>
12
- <%end%>
@@ -1,43 +0,0 @@
1
- <%content_for :detail do%>
2
- <%=form_tag "/setup",:method => :post,:class=>"form-horizontal" do %>
3
- <fieldset>
4
- <legend>New Admin Account</legend>
5
-
6
- <div class="control-group">
7
- <%=label_tag :login, "Login",:class => "control-label"%>
8
- <div class="controls">
9
- <%=text_field_tag :login,nil,:title => "",:size=>25%>
10
- </div>
11
- </div>
12
- <div class="control-group">
13
- <%=label_tag :email, "Email",:class => "control-label"%>
14
- <div class="controls">
15
- <%=text_field_tag :email,nil,:title => "",:size=>25%>
16
- </div>
17
- </div>
18
-
19
- <div class="control-group">
20
- <%=label_tag :password, "Password",:class => "control-label"%>
21
- <div class="controls">
22
- <%=password_field_tag :password,nil,:title => "",:size=>25%>
23
- <p class="help-block">Password must be at least 8 characters</p>
24
- </div>
25
- </div>
26
- <div class="control-group">
27
- <%=label_tag :password_confirmation, "Confirm",:class => "control-label"%>
28
- <div class="controls">
29
- <%=password_field_tag :password_confirmation,nil,:title => "",:size=>25%>
30
- <p class="help-block">Retype your password here.</p>
31
- </div>
32
- </div>
33
-
34
-
35
-
36
- </fieldset>
37
- <div class="form-actions">
38
- <%=submit_tag "Create Admin Account", :class=>"btn btn-primary"%>
39
- </div>
40
-
41
- <%end%>
42
-
43
- <%end%>
@@ -1,55 +0,0 @@
1
- require 'spec_helper'
2
-
3
- describe Spud::Admin::SettingsController do
4
- before(:each) do
5
- activate_authlogic
6
- SpudUserSession.create(FactoryGirl.build(:spud_user))
7
- end
8
-
9
- describe :edit do
10
- it "should respond with success" do
11
- get :edit
12
- response.should be_success
13
- end
14
-
15
- it "should have a page thumbnail" do
16
- get :edit
17
- assigns(:page_thumbnail).should_not be_blank
18
- end
19
-
20
- it "should have a page name" do
21
- get :edit
22
- assigns(:page_name).should_not be_blank
23
- end
24
- end
25
-
26
- describe :update do
27
- it "should redirect to the admin root with a successful update" do
28
- put :update, :spud_user => {:first_name => "Mike"}
29
- response.should redirect_to(spud_admin_root_url)
30
- end
31
-
32
- it "should put a message in the flash notice" do
33
- put :update, :spud_user => {:first_name => "Mike"}
34
- flash[:notice].should_not be_blank
35
- end
36
-
37
- it "should put a message in the flash error on a failed update" do
38
- put :update, :spud_user => {:password => "newpass"}
39
- flash[:error].should_not be_blank
40
- end
41
-
42
- it "should have a page thumbnail on a failed update" do
43
- put :update, :spud_user => {:password => "newpass"}
44
-
45
- assigns(:page_thumbnail).should_not be_blank
46
- end
47
-
48
- it "should have a page name on a failed update" do
49
- put :update, :spud_user => {:password => "newpass"}
50
-
51
- assigns(:page_name).should_not be_blank
52
- end
53
- end
54
-
55
- end
@@ -1,51 +0,0 @@
1
- require 'spec_helper'
2
- describe Spud::Admin::UserSessionsController do
3
- before(:each) do
4
- # activate_authlogic
5
- # SpudUserSession.create(FactoryGirl.build(:spud_user))
6
- end
7
-
8
- describe :new do
9
- it "should redirect to setup url if no users exist" do
10
- get :new
11
- response.should redirect_to(spud_setup_url)
12
- end
13
-
14
- it "should render login form if users do exist" do
15
- u = FactoryGirl.create(:spud_user)
16
- u.save
17
- get :new
18
- response.should be_success
19
- end
20
- end
21
-
22
- describe :create do
23
- it "should rerender form when login is invalid" do
24
- post :create
25
- response.should be_success
26
- end
27
- it "should redirect to admin root if login is valid" do
28
- u = FactoryGirl.create(:spud_user,:login => "testuser")
29
- u.save
30
- user_session = {:login => "testuser", :password => "password"}
31
- post :create, :spud_user_session => user_session
32
- response.should redirect_to(spud_admin_root_path)
33
- end
34
- end
35
-
36
- describe :destroy do
37
- it "should redirect to login after logout when no referer" do
38
- activate_authlogic
39
- SpudUserSession.create(FactoryGirl.build(:spud_user))
40
- delete :destroy
41
- response.should redirect_to(spud_admin_login_path)
42
- end
43
- it "should redirect to previous page after logout" do
44
- request.env["HTTP_REFERER"] = "/"
45
- activate_authlogic
46
- SpudUserSession.create(FactoryGirl.build(:spud_user))
47
- delete :destroy
48
- response.should redirect_to("/")
49
- end
50
- end
51
- end
@@ -1,56 +0,0 @@
1
- require 'spec_helper'
2
-
3
- describe Spud::SetupController do
4
-
5
- describe :index do
6
- it "should be successful" do
7
- get :index
8
-
9
- response.should be_success
10
- end
11
-
12
- it "should have a page thumbnail" do
13
- get :index
14
-
15
- assigns(:page_thumbnail).should_not be_blank
16
- end
17
-
18
- it "should have a page name" do
19
- get :index
20
-
21
- assigns(:page_name).should_not be_blank
22
- end
23
-
24
- it "should set a flash error message when a spud user exists" do
25
- SpudUser.stubs(:count).returns(1)
26
- get :index
27
-
28
- flash[:error].should_not be_blank
29
- end
30
-
31
- it "should redirect to the admin login form when there is already a user" do
32
- SpudUser.stubs(:count).returns(1)
33
- get :index
34
-
35
- response.should redirect_to(spud_admin_login_path)
36
- end
37
-
38
- it "should create a new user" do
39
- lambda {
40
- post :index, FactoryGirl.attributes_for(:spud_user)
41
- }.should change(SpudUser, :count).by(1)
42
- end
43
-
44
- it "should redirect to the admin login form when first admin user has been created" do
45
- post :index, FactoryGirl.attributes_for(:spud_user)
46
-
47
- response.should redirect_to(spud_admin_login_path)
48
- end
49
-
50
- it "should display an error if the user is invalid" do
51
- post :index, FactoryGirl.attributes_for(:spud_user, :email => nil)
52
-
53
- flash[:error].should_not be_blank
54
- end
55
- end
56
- end