sugoi-mail 0.3.0 → 0.3.2

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 (63) hide show
  1. data/CHANGELOG +38 -0
  2. data/app/apis/mailservice_api.rb +6 -0
  3. data/app/controllers/account_controller.rb +40 -45
  4. data/app/controllers/{root_admin_controller.rb → admin_controller.rb} +1 -2
  5. data/app/controllers/application.rb +9 -9
  6. data/app/controllers/mailinglist_class_controller.rb +63 -0
  7. data/app/controllers/mailinglist_controller.rb +22 -45
  8. data/app/controllers/mailservice_controller.rb +7 -0
  9. data/app/models/mailinglist_class.rb +40 -0
  10. data/app/models/message.rb +8 -7
  11. data/app/views/account/welcome.rhtml +2 -2
  12. data/app/views/{root_admin → admin}/_form.rhtml +3 -3
  13. data/app/views/{root_admin → admin}/add_address.rhtml +0 -0
  14. data/app/views/{root_admin → admin}/add_mailinglist.rhtml +0 -0
  15. data/app/views/{root_admin → admin}/admin_user_list.rhtml +0 -0
  16. data/app/views/{root_admin → admin}/admin_user_new.rhtml +0 -0
  17. data/app/views/{root_admin → admin}/change_user_password.rhtml +0 -0
  18. data/app/views/{root_admin → admin}/edit_address.rhtml +0 -0
  19. data/app/views/{root_admin → admin}/edit_mailinglist.rhtml +0 -0
  20. data/app/views/{root_admin → admin}/edit_user_list.rhtml +0 -0
  21. data/app/views/{root_admin → admin}/list_addresses.rhtml +0 -0
  22. data/app/views/{root_admin → admin}/list_mailinglists.rhtml +0 -0
  23. data/app/views/{root_admin → admin}/list_users.rhtml +3 -3
  24. data/app/views/{root_admin → admin}/remove_address.rhtml +0 -0
  25. data/app/views/{root_admin → admin}/remove_mailinglist.rhtml +0 -0
  26. data/app/views/{root_admin → admin}/remove_user.rhtml +0 -0
  27. data/app/views/{root_admin → admin}/show_user.rhtml +0 -0
  28. data/app/views/layouts/application.rhtml +1 -1
  29. data/app/views/mailinglist/edit.rhtml +1 -1
  30. data/app/views/mailinglist_class/_form.rhtml +31 -0
  31. data/app/views/mailinglist_class/_form_option.rhtml +14 -0
  32. data/app/views/mailinglist_class/_new_form.rhtml +16 -0
  33. data/app/views/mailinglist_class/edit.rhtml +15 -0
  34. data/app/views/{mailinglist/list_mailinglist_classes.rhtml → mailinglist_class/list.rhtml} +5 -4
  35. data/app/views/mailinglist_class/new.rhtml +10 -0
  36. data/app/views/mailinglist_class/show.rhtml +9 -0
  37. data/app/views/navigation/_nav_module.rhtml +13 -13
  38. data/app/views/navigation/_root_add_address_module.rhtml +1 -1
  39. data/app/views/navigation/_root_add_mailinglist_module.rhtml +1 -1
  40. data/app/views/navigation/_root_add_user_module.rhtml +1 -1
  41. data/app/views/navigation/_root_change_user_password_module.rhtml +1 -1
  42. data/app/views/navigation/_root_edit_address_module.rhtml +5 -5
  43. data/app/views/navigation/_root_edit_mailinglist_module.rhtml +5 -5
  44. data/app/views/navigation/_root_edit_user_list_module.rhtml +1 -1
  45. data/app/views/navigation/_root_edit_user_module.rhtml +4 -4
  46. data/app/views/navigation/_root_index_module.rhtml +2 -2
  47. data/app/views/navigation/_root_list_addresses_module.rhtml +4 -4
  48. data/app/views/navigation/_root_list_mailinglists_module.rhtml +3 -3
  49. data/app/views/navigation/_root_list_users_module.rhtml +4 -4
  50. data/app/views/navigation/_root_remove_address_module.rhtml +4 -4
  51. data/app/views/navigation/_root_remove_mailinglist_module.rhtml +4 -4
  52. data/app/views/navigation/_root_remove_user_module.rhtml +4 -4
  53. data/app/views/navigation/_root_show_user_module.rhtml +4 -4
  54. data/app/views/navigation/_root_welcome_module.rhtml +2 -2
  55. data/db/schema.rb +108 -0
  56. data/lib/gurgitate-rules.rb +3 -8
  57. data/lib/tasks/release.rake +1 -1
  58. data/public/stylesheets/global.css +58 -2
  59. data/test/functional/{root_admin_controller_test.rb → admin_controller_test.rb} +4 -4
  60. data/test/unit/mailinglist_class_test.rb +11 -0
  61. metadata +32 -24
  62. data/app/views/mailinglist/_new_class_form.rhtml +0 -16
  63. data/app/views/mailinglist/new_mailinglist_class.rhtml +0 -8
@@ -1,11 +1,11 @@
1
- <% if false %><div class="link"><%= link_to "Add User", :controller => "root_admin", :action => "list_mailinglists" %></div><br/><% end %>
1
+ <% if false %><div class="link"><%= link_to "Add User", :controller => "admin", :action => "list_mailinglists" %></div><br/><% end %>
2
2
  <% if false %><% end %>
3
3
  <% if false %><!-- Change these to link_to_if to establish condition that they are clickable only --><% end %>
4
4
  <% if false %><!-- if a user is selected in the main panel. They should display regardless, but --><% end %>
5
5
  <% if false %><!-- be greyed out or something. --><% end %>
6
- <% if false %><div class="link"><%= link_to "Remove User", :controller => "root_admin", :action => "list_users" %></div><br/><% end %>
7
- <% if false %><div class="link"><%= link_to "Edit User's Forwarding List", :controller => "root_admin", :action => "list_mailinglists" %></div><br/><% end %>
8
- <% if false %><div class="link"><%= link_to "Change User's Password", :controller => "root_admin", :action => "list_users" %></div><br/><% end %>
6
+ <% if false %><div class="link"><%= link_to "Remove User", :controller => "admin", :action => "list_users" %></div><br/><% end %>
7
+ <% if false %><div class="link"><%= link_to "Edit User's Forwarding List", :controller => "admin", :action => "list_mailinglists" %></div><br/><% end %>
8
+ <% if false %><div class="link"><%= link_to "Change User's Password", :controller => "admin", :action => "list_users" %></div><br/><% end %>
9
9
  <% if false %><!-- End conditional links --><% end %>
10
10
  <% if false %><% end %>
11
11
  <% if false %><div class="link"><%= link_to "Back", :controller => "account", :action => "welcome"%></div><br/><% end %>
@@ -1,10 +1,10 @@
1
1
  <!-- Change these to link_to_if to establish condition that they are clickable only -->
2
2
  <!-- if a user is selected in the main panel. They should display regardless, but -->
3
3
  <!-- be greyed out or something. -->
4
- <div class="link"><%= link_to "Remove User", :controller => "root_admin", :action => "remove_user" %></div><br/>
5
- <div class="link"><%= link_to "Edit User's Forwarding List", :controller => "root_admin", :action => "edit_user_list" %></div><br/>
6
- <div class="link"><%= link_to "Change User's Password", :controller => "root_admin", :action => "change_user_password" %></div><br/>
4
+ <div class="link"><%= link_to "Remove User", :controller => "admin", :action => "remove_user" %></div><br/>
5
+ <div class="link"><%= link_to "Edit User's Forwarding List", :controller => "admin", :action => "edit_user_list" %></div><br/>
6
+ <div class="link"><%= link_to "Change User's Password", :controller => "admin", :action => "change_user_password" %></div><br/>
7
7
  <!-- End conditional links -->
8
8
 
9
- <div class="link"><%= link_to "Back", :controller => "root_admin", :action => "list_users"%></div><br/>
9
+ <div class="link"><%= link_to "Back", :controller => "admin", :action => "list_users"%></div><br/>
10
10
  <div class="link"><%= link_to "Logout", :controller => "account", :action => "logout"%></div>
@@ -1,3 +1,3 @@
1
- <div class="link"><%= link_to "Mailing Lists", :controller => "root_admin", :action => "list_mailinglists" %></div><br/>
2
- <div class="link"><%= link_to "Users", :controller => "root_admin", :action => "list_users" %></div><br/>
1
+ <div class="link"><%= link_to "Mailing Lists", :controller => "admin", :action => "list_mailinglists" %></div><br/>
2
+ <div class="link"><%= link_to "Users", :controller => "admin", :action => "list_users" %></div><br/>
3
3
  <div class="link"><%= link_to "Logout", :controller => "account", :action => "logout"%></div>
@@ -0,0 +1,108 @@
1
+ # This file is autogenerated. Instead of editing this file, please use the
2
+ # migrations feature of ActiveRecord to incrementally modify your database, and
3
+ # then regenerate this schema definition.
4
+
5
+ ActiveRecord::Schema.define(:version => 28) do
6
+
7
+ create_table "addresses", :force => true do |t|
8
+ t.column "address", :text
9
+ t.column "active", :boolean, :default => true
10
+ t.column "delivery_attempts", :integer, :default => 0
11
+ t.column "bounces", :integer, :default => 0
12
+ end
13
+
14
+ create_table "addresses_mailinglists", :id => false, :force => true do |t|
15
+ t.column "address_id", :integer
16
+ t.column "mailinglist_id", :integer
17
+ end
18
+
19
+ create_table "admin_messages", :force => true do |t|
20
+ t.column "message", :text, :null => false
21
+ end
22
+
23
+ create_table "confirmationcodes", :force => true do |t|
24
+ t.column "mailinglist_id", :integer
25
+ t.column "address_id", :integer
26
+ t.column "code", :text, :null => false
27
+ t.column "confirmed", :boolean, :default => false
28
+ end
29
+
30
+ create_table "domains", :force => true do |t|
31
+ t.column "name", :string, :null => false
32
+ t.column "password", :text, :null => false
33
+ end
34
+
35
+ create_table "helps", :force => true do |t|
36
+ t.column "facility", :string
37
+ t.column "command", :string
38
+ t.column "parameters", :string
39
+ t.column "summary", :string
40
+ t.column "explanation", :text
41
+ end
42
+
43
+ create_table "mailinglist_classes", :force => true do |t|
44
+ t.column "name", :text, :null => false
45
+ t.column "description", :text
46
+ t.column "public", :boolean, :default => false, :null => false
47
+ t.column "closed", :boolean, :default => false, :null => false
48
+ t.column "moderated", :boolean, :default => false, :null => false
49
+ t.column "confirmation", :boolean, :default => true, :null => false
50
+ t.column "joinable", :boolean, :default => true, :null => false
51
+ t.column "archived", :boolean, :default => false, :null => false
52
+ t.column "proxify", :boolean, :default => false
53
+ end
54
+
55
+ create_table "mailinglists", :force => true do |t|
56
+ t.column "user_id", :integer
57
+ t.column "name", :text, :null => false
58
+ t.column "description", :text
59
+ t.column "welcome_admin_message_id", :integer, :default => 1
60
+ t.column "confirmed_admin_message_id", :integer, :default => 2
61
+ t.column "sayonara_admin_message_id", :integer, :default => 3
62
+ t.column "mailinglist_class_id", :integer
63
+ end
64
+
65
+ create_table "messages", :force => true do |t|
66
+ t.column "mailinglist_id", :integer
67
+ t.column "address_id", :integer
68
+ t.column "parent_id", :integer
69
+ t.column "subject", :string
70
+ t.column "messageid", :string
71
+ t.column "timestamp", :datetime
72
+ t.column "headers", :text
73
+ t.column "body", :text
74
+ t.column "envelope_from", :text
75
+ t.column "envelope_to", :text
76
+ end
77
+
78
+ create_table "proxy_links", :force => true do |t|
79
+ t.column "mailinglist_id", :integer, :null => false
80
+ t.column "address_id", :integer, :null => false
81
+ end
82
+
83
+ create_table "sessions", :force => true do |t|
84
+ t.column "session_id", :string
85
+ t.column "data", :text
86
+ t.column "updated_at", :datetime
87
+ end
88
+
89
+ add_index "sessions", ["session_id"], :name => "sessions_session_id_index"
90
+
91
+ create_table "sys_configs", :force => true do |t|
92
+ t.column "name", :string
93
+ t.column "value", :string
94
+ t.column "description", :string
95
+ t.column "priority", :integer
96
+ end
97
+
98
+ create_table "users", :force => true do |t|
99
+ t.column "login", :text, :null => false
100
+ t.column "password", :text, :null => false
101
+ t.column "mailinglist_id", :integer
102
+ t.column "domainadmin", :boolean, :default => false
103
+ t.column "domain_id", :integer
104
+ t.column "mailinglistadmin", :boolean, :default => false
105
+ t.column "virtual", :boolean, :default => false
106
+ end
107
+
108
+ end
@@ -5,11 +5,6 @@
5
5
  # stuff.
6
6
  #------------------------------------------------------------------------
7
7
 
8
- $logger.debug "in gurgitate-rules"
9
- $logger.debug to_s
10
- $logger.debug "From: #{from}"
11
- $logger.debug "To: #{to.inspect}"
12
-
13
8
  # ------------------------------------------------------------------------
14
9
  # mail to mailing list
15
10
  # ------------------------------------------------------------------------
@@ -26,15 +21,15 @@ to.each do |to_address|
26
21
  when :mail
27
22
  mess=Message.from_message(self)
28
23
  mess.mailinglist = ml
29
- mess.save
24
+ mess.save!
30
25
 
31
26
  if mess then
32
27
  mess.deliver
33
28
 
34
29
  if ml.archived?
35
30
  mess.save
36
- mailinglist.store_message mess
37
- mailinglist.save
31
+ ml.store_message mess
32
+ ml.save
38
33
  else
39
34
  mess.destroy
40
35
  end
@@ -1,6 +1,6 @@
1
1
  require 'rake/gempackagetask'
2
2
 
3
- PKG_VERSION = "0.3.0"
3
+ PKG_VERSION = "0.3.2"
4
4
  PKG_NAME = "sugoi-mail"
5
5
  PKG_FILE_NAME = "#{PKG_NAME}-#{PKG_VERSION}"
6
6
 
@@ -131,6 +131,31 @@ html>/**/body #navbar {
131
131
  top: -8px;
132
132
  }
133
133
 
134
+ #flash{
135
+ text-align: center;
136
+ background-color: #FFA54F;
137
+ font-style: italic;
138
+ }
139
+
140
+ #errorExplanation {
141
+ background-color: lightyellow;
142
+ font-size: 8pt;
143
+ padding: 5px;
144
+ border: 1px dotted black;
145
+ }
146
+
147
+ #errorExplanation * {
148
+ font-size: 8pt;
149
+ }
150
+
151
+ #errorExplanation h2 {
152
+ font-size: 10pt;
153
+ border: 1px solid red;
154
+ padding: 3px;
155
+ margin: 0px;
156
+ text-align: center;
157
+ }
158
+
134
159
  .login {
135
160
  border-style: solid;
136
161
  border-width: 1px;
@@ -159,12 +184,43 @@ html>/**/body .link {
159
184
  }
160
185
 
161
186
  .item {
162
- font-size: 11;
187
+ font-size: 11pt;
163
188
  font-weight: bold;
164
189
  }
165
190
 
166
191
  .small {
167
- font-size: 9;
192
+ font-size: 9pt;
193
+ }
194
+
195
+ .mainTable {
196
+ width: 99%;
197
+ }
198
+
199
+
200
+ .checklist {
201
+ border: none;
202
+ width: 99%;
203
+ }
204
+
205
+ .checklist td{
206
+ padding: 5px;
207
+ }
208
+
209
+ .help {
210
+ padding: 5px 10px;
211
+ font-size: 8pt;
212
+ background-color: #f4f4f4;
213
+ border: 1px solid #c0cdc0;
214
+ color: #444;
215
+ }
216
+
217
+ .textbox {
218
+ border: 1px solid #c0cdc0;
219
+ padding: 3px;
220
+ }
221
+
222
+ .button {
223
+ width: 130px;
168
224
  }
169
225
 
170
226
  /* general styles */
@@ -1,12 +1,12 @@
1
1
  require File.dirname(__FILE__) + '/../test_helper'
2
- require 'root_admin_controller'
2
+ require 'admin_controller'
3
3
 
4
4
  # Re-raise errors caught by the controller.
5
- class RootAdminController; def rescue_action(e) raise e end; end
5
+ class AdminController; def rescue_action(e) raise e end; end
6
6
 
7
- class RootAdminControllerTest < Test::Unit::TestCase
7
+ class AdminControllerTest < Test::Unit::TestCase
8
8
  def setup
9
- @controller = RootAdminController.new
9
+ @controller = AdminController.new
10
10
  @request = ActionController::TestRequest.new
11
11
  @response = ActionController::TestResponse.new
12
12
  end
@@ -79,4 +79,15 @@ class MailinglistClassTest < Test::Unit::TestCase
79
79
  assert d.closed
80
80
  assert d.archived
81
81
  end
82
+
83
+ def test_illegal_creation
84
+ c=MailinglistClass.new
85
+ assert !c.save
86
+ assert c.name = "somenewname"
87
+ assert c.save
88
+ c2=MailinglistClass.new
89
+ assert c2.name = "somenewname"
90
+ assert !c2.save
91
+ end
92
+
82
93
  end
metadata CHANGED
@@ -3,8 +3,8 @@ rubygems_version: 0.9.2
3
3
  specification_version: 1
4
4
  name: sugoi-mail
5
5
  version: !ruby/object:Gem::Version
6
- version: 0.3.0
7
- date: 2007-04-20 00:00:00 +09:00
6
+ version: 0.3.2
7
+ date: 2007-05-15 00:00:00 +09:00
8
8
  summary: Powerful mailing list manager.
9
9
  require_paths:
10
10
  - .
@@ -29,6 +29,7 @@ post_install_message:
29
29
  authors:
30
30
  - Dave Brown
31
31
  files:
32
+ - CHANGELOG
32
33
  - doc
33
34
  - README
34
35
  - Rakefile
@@ -97,7 +98,9 @@ files:
97
98
  - app/views
98
99
  - app/helpers
99
100
  - app/apis
101
+ - app/controllers/admin_controller.rb
100
102
  - app/controllers/account_controller.rb
103
+ - app/controllers/mailinglist_class_controller.rb
101
104
  - app/controllers/mail_admin_controller.rb
102
105
  - app/controllers/mailinglist_controller.rb
103
106
  - app/controllers/sugoi_admin_controller.rb
@@ -106,7 +109,6 @@ files:
106
109
  - app/controllers/commandline_controller.rb
107
110
  - app/controllers/navigation_controller.rb
108
111
  - app/controllers/address_controller.rb
109
- - app/controllers/root_admin_controller.rb
110
112
  - app/controllers/application.rb
111
113
  - app/controllers/domain_controller.rb
112
114
  - app/models/sys_config.rb
@@ -121,45 +123,43 @@ files:
121
123
  - app/models/proxy_link.rb
122
124
  - app/models/confirmationcode.rb
123
125
  - app/models/user.rb
126
+ - app/views/admin
124
127
  - app/views/account
125
- - app/views/root_admin
126
128
  - app/views/mailinglist
127
129
  - app/views/sugoi_admin
128
130
  - app/views/layouts
129
131
  - app/views/address
130
132
  - app/views/base_user
131
133
  - app/views/navigation
134
+ - app/views/mailinglist_class
132
135
  - app/views/domain
133
136
  - app/views/mail_admin
137
+ - app/views/admin/edit_user_list.rhtml
138
+ - app/views/admin/show_user.rhtml
139
+ - app/views/admin/admin_user_new.rhtml
140
+ - app/views/admin/list_addresses.rhtml
141
+ - app/views/admin/remove_user.rhtml
142
+ - app/views/admin/add_address.rhtml
143
+ - app/views/admin/add_mailinglist.rhtml
144
+ - app/views/admin/admin_user_list.rhtml
145
+ - app/views/admin/edit_address.rhtml
146
+ - app/views/admin/remove_address.rhtml
147
+ - app/views/admin/change_user_password.rhtml
148
+ - app/views/admin/remove_mailinglist.rhtml
149
+ - app/views/admin/list_mailinglists.rhtml
150
+ - app/views/admin/edit_mailinglist.rhtml
151
+ - app/views/admin/list_users.rhtml
152
+ - app/views/admin/_form.rhtml
134
153
  - app/views/account/logout.rhtml
135
154
  - app/views/account/login.rhtml
136
155
  - app/views/account/welcome.rhtml
137
156
  - app/views/account/signup.rhtml
138
- - app/views/root_admin/edit_user_list.rhtml
139
- - app/views/root_admin/show_user.rhtml
140
- - app/views/root_admin/admin_user_new.rhtml
141
- - app/views/root_admin/list_addresses.rhtml
142
- - app/views/root_admin/remove_user.rhtml
143
- - app/views/root_admin/add_address.rhtml
144
- - app/views/root_admin/add_mailinglist.rhtml
145
- - app/views/root_admin/admin_user_list.rhtml
146
- - app/views/root_admin/edit_address.rhtml
147
- - app/views/root_admin/remove_address.rhtml
148
- - app/views/root_admin/change_user_password.rhtml
149
- - app/views/root_admin/remove_mailinglist.rhtml
150
- - app/views/root_admin/list_mailinglists.rhtml
151
- - app/views/root_admin/edit_mailinglist.rhtml
152
- - app/views/root_admin/list_users.rhtml
153
- - app/views/root_admin/_form.rhtml
154
157
  - app/views/mailinglist/new.rhtml
155
158
  - app/views/mailinglist/edit.rhtml
156
159
  - app/views/mailinglist/list.rhtml
157
160
  - app/views/mailinglist/_new_form.rhtml
158
161
  - app/views/mailinglist/new_address.rhtml
159
162
  - app/views/mailinglist/show.rhtml
160
- - app/views/mailinglist/new_mailinglist_class.rhtml
161
- - app/views/mailinglist/_new_class_form.rhtml
162
- - app/views/mailinglist/list_mailinglist_classes.rhtml
163
163
  - app/views/mailinglist/_address_form.rhtml
164
164
  - app/views/mailinglist/_form.rhtml
165
165
  - app/views/sugoi_admin/_command_description.rhtml
@@ -220,6 +220,13 @@ files:
220
220
  - app/views/navigation/_root_show_user_module.rhtml
221
221
  - app/views/navigation/_root_edit_mailinglist_module.rhtml
222
222
  - app/views/navigation/_base_unsubscribe_self_module.rhtml
223
+ - app/views/mailinglist_class/new.rhtml
224
+ - app/views/mailinglist_class/_form_option.rhtml
225
+ - app/views/mailinglist_class/edit.rhtml
226
+ - app/views/mailinglist_class/list.rhtml
227
+ - app/views/mailinglist_class/_new_form.rhtml
228
+ - app/views/mailinglist_class/show.rhtml
229
+ - app/views/mailinglist_class/_form.rhtml
223
230
  - app/views/domain/logout.rhtml
224
231
  - app/views/domain/login.rhtml
225
232
  - app/views/domain/welcome.rhtml
@@ -259,6 +266,7 @@ files:
259
266
  - script/process/inspector
260
267
  - script/performance/benchmarker
261
268
  - script/performance/profiler
269
+ - db/schema.rb
262
270
  - db/schema.mysql.sql
263
271
  - db/schema.sqlserver.sql
264
272
  - db/schema.postgresql.sql
@@ -330,8 +338,8 @@ files:
330
338
  - test/fixtures/domains.yml
331
339
  - test/fixtures/helps.yml
332
340
  - test/fixtures/users.yml
333
- - test/functional/root_admin_controller_test.rb
334
341
  - test/functional/navigation_controller_test.rb
342
+ - test/functional/admin_controller_test.rb
335
343
  - test/functional/mail_admin_controller_test.rb
336
344
  - test/functional/sugoi_admin_controller_test.rb
337
345
  - test/functional/mailservice_controller_test.rb
@@ -1,16 +0,0 @@
1
- <%= error_messages_for 'mailinglist_class' %>
2
-
3
- <!--[form:mailinglist]-->
4
- <p>
5
- <label for="mailinglist_class_name">Mailinglist Class Name</label>
6
- <br/>
7
- <%= text_field 'mailinglist_class', 'name' %>
8
- </p>
9
-
10
- <label for="mailinglist_class_description">Description:</label>
11
- <br />
12
- <%= text_field 'mailinglist_class', 'description' %>
13
- </p>
14
- <br/>
15
- <br/>
16
- <!--[eoform:mailinglist]-->
@@ -1,8 +0,0 @@
1
- <h3>New Mailing List Class</h3>
2
-
3
- <%= start_form_tag :action => 'new_class' %>
4
-
5
- <%= render :partial => 'new_class_form' %>
6
-
7
- <%= submit_tag 'Save' %>
8
- <%= end_form_tag %>