tournament 2.2.2 → 2.3.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.
- data/History.txt +3 -0
- data/Manifest.txt +2 -0
- data/Rakefile +1 -1
- data/webgui/app/controllers/admin_controller.rb +13 -0
- data/webgui/app/models/user_mailer.rb +12 -5
- data/webgui/app/views/admin/recap.html.erb +15 -0
- data/webgui/app/views/pool/index.html.erb +2 -1
- data/webgui/app/views/user_mailer/recap.erb +4 -0
- data/webgui/config/environment.rb +1 -1
- data/webgui/db/test.sqlite3 +0 -0
- data/webgui/test/functional/admin_controller_test.rb +13 -2
- metadata +4 -2
data/History.txt
CHANGED
data/Manifest.txt
CHANGED
@@ -62,6 +62,7 @@ webgui/app/views/admin/bracket.html.erb
|
|
62
62
|
webgui/app/views/admin/entries.html.erb
|
63
63
|
webgui/app/views/admin/index.html.erb
|
64
64
|
webgui/app/views/admin/pool.html.erb
|
65
|
+
webgui/app/views/admin/recap.html.erb
|
65
66
|
webgui/app/views/entry/index.html.erb
|
66
67
|
webgui/app/views/entry/print.erb
|
67
68
|
webgui/app/views/entry/print.html.erb
|
@@ -79,6 +80,7 @@ webgui/app/views/shared/_admins.html.erb
|
|
79
80
|
webgui/app/views/shared/_bracket.html.erb
|
80
81
|
webgui/app/views/teams/choose.html.erb
|
81
82
|
webgui/app/views/user_mailer/activation.erb
|
83
|
+
webgui/app/views/user_mailer/recap.erb
|
82
84
|
webgui/app/views/user_mailer/signup_notification.erb
|
83
85
|
webgui/app/views/users/_user_bar.html.erb
|
84
86
|
webgui/app/views/users/new.html.erb
|
data/Rakefile
CHANGED
@@ -20,7 +20,7 @@ PROJ.authors = 'Douglas A. Seifert'
|
|
20
20
|
PROJ.email = 'doug+rubyforge@dseifert.net'
|
21
21
|
PROJ.url = 'http://www.dseifert.net/code/tournament'
|
22
22
|
PROJ.rubyforge.name = 'tournament'
|
23
|
-
PROJ.version = '2.
|
23
|
+
PROJ.version = '2.3.0'
|
24
24
|
PROJ.group_id = 5863
|
25
25
|
|
26
26
|
PROJ.spec.opts << '--color'
|
@@ -30,6 +30,19 @@ class AdminController < ApplicationController
|
|
30
30
|
@pools = Pool.find(:all)
|
31
31
|
end
|
32
32
|
|
33
|
+
def recap
|
34
|
+
if request.post?
|
35
|
+
begin
|
36
|
+
UserMailer.deliver_recap(User.find(:all) - [current_user], params[:subject], params[:content], root_path(:only_path => false))
|
37
|
+
flash[:notice] = "Email was delivered."
|
38
|
+
rescue Exception => e
|
39
|
+
flash[:error] = "Email could not be delivered: #{e}"
|
40
|
+
logger.error "Could not send recap email: #{e}"
|
41
|
+
e.backtrace.each{|b| logger.error(b)}
|
42
|
+
end
|
43
|
+
end
|
44
|
+
end
|
45
|
+
|
33
46
|
def pool
|
34
47
|
@available_scoring_strategies = Tournament::ScoringStrategy.available_strategies.map{|n| Tournament::ScoringStrategy.strategy_for_name(n)}
|
35
48
|
@pool = params[:id] ? Pool.find(params[:id]) : Pool.new
|
@@ -1,25 +1,32 @@
|
|
1
1
|
class UserMailer < ActionMailer::Base
|
2
2
|
def signup_notification(user, activation_url)
|
3
3
|
setup_email(user)
|
4
|
+
@body[:user] = user
|
4
5
|
@subject += 'Please activate your new account'
|
5
|
-
|
6
|
-
#@body[:url] = "#{TOURNAMENT_FQ_WEBROOT}/activate/#{user.activation_code}"
|
7
6
|
@body[:url] = activation_url
|
8
|
-
|
9
7
|
end
|
10
8
|
|
11
9
|
def activation(user, home_url)
|
12
10
|
setup_email(user)
|
11
|
+
@body[:user] = user
|
13
12
|
@subject += 'Your account has been activated!'
|
14
13
|
@body[:url] = home_url
|
15
14
|
end
|
15
|
+
|
16
|
+
def recap(users, subject, content, home_url)
|
17
|
+
setup_email(users[0])
|
18
|
+
@recipients = ADMIN_EMAIL
|
19
|
+
@bcc = users.map{|u| u.email}
|
20
|
+
@subject << subject
|
21
|
+
@body[:content] = content
|
22
|
+
@body[:url] = home_url
|
23
|
+
end
|
16
24
|
|
17
25
|
protected
|
18
26
|
def setup_email(user)
|
19
|
-
@recipients =
|
27
|
+
@recipients = user.email
|
20
28
|
@from = ADMIN_EMAIL
|
21
29
|
@subject = "[#{TOURNAMENT_TITLE}] "
|
22
30
|
@sent_on = Time.now
|
23
|
-
@body[:user] = user
|
24
31
|
end
|
25
32
|
end
|
@@ -0,0 +1,15 @@
|
|
1
|
+
<h1>Send a Recap Email</h1>
|
2
|
+
<form action="<%=url_for :action => 'recap'%>" method="POST">
|
3
|
+
<table border="0">
|
4
|
+
<tr>
|
5
|
+
<td>Subject</td>
|
6
|
+
<td><%= text_field_tag 'subject', '', :size => 50%></td>
|
7
|
+
</tr>
|
8
|
+
<tr>
|
9
|
+
<td>Body</td>
|
10
|
+
<td><%= text_area_tag 'content', '', :rows => 15, :cols => 70%></td>
|
11
|
+
</tr>
|
12
|
+
</table>
|
13
|
+
<%= token_tag %>
|
14
|
+
<input type="submit" value="Send" name="Send"/>
|
15
|
+
</form>
|
@@ -7,9 +7,10 @@
|
|
7
7
|
<small>
|
8
8
|
<% if current_user && pool.user_id == current_user.id %>
|
9
9
|
|
10
|
+
<%= link_to '[Bracket]', :controller => 'admin', :action => 'bracket', :id => pool.id %>
|
11
|
+
<%= link_to '[Recap]', :controller => 'admin', :action => 'recap'%>
|
10
12
|
<%= link_to '[Edit]', :controller => 'admin', :action => 'pool', :id => pool.id %>
|
11
13
|
<%= link_to '[Entries]', :controller => 'admin', :action => 'entries', :id => pool.id %>
|
12
|
-
<%= link_to '[Bracket]', :controller => 'admin', :action => 'bracket', :id => pool.id %>
|
13
14
|
<% end %>
|
14
15
|
<%= link_to '[Leader Board]', :controller => 'reports', :action => 'show', :id => pool.id, :report => 'leader' %>
|
15
16
|
<%= link_to '[Reports]', :controller => 'reports', :action => 'show', :id => pool.id %>
|
@@ -44,7 +44,7 @@ Rails::Initializer.run do |config|
|
|
44
44
|
# Make Time.zone default to the specified zone, and make Active Record store time values
|
45
45
|
# in the database in UTC, and return them converted to the specified local zone.
|
46
46
|
# Run "rake -D time" for a list of tasks for finding time zone names. Comment line to use default local time.
|
47
|
-
config.time_zone = '
|
47
|
+
config.time_zone = 'Pacific Time (US & Canada)'
|
48
48
|
|
49
49
|
# The internationalization framework can be changed to have another default locale (standard is :en) or more load paths.
|
50
50
|
# All files from config/locales/*.rb,yml are added automatically.
|
data/webgui/db/test.sqlite3
CHANGED
Binary file
|
@@ -1,8 +1,19 @@
|
|
1
1
|
require 'test_helper'
|
2
2
|
|
3
3
|
class AdminControllerTest < ActionController::TestCase
|
4
|
+
include AuthenticatedTestHelper
|
5
|
+
fixtures :users, :roles, :roles_users
|
4
6
|
# Replace this with your real tests.
|
5
|
-
test "
|
6
|
-
|
7
|
+
test "send recap" do
|
8
|
+
login_as :admin
|
9
|
+
post(:recap, {:subject => 'subject', :content => 'content'})
|
10
|
+
assert_response :success
|
11
|
+
assert_equal 1, ActionMailer::Base.deliveries.size, "There should have been an email sent."
|
12
|
+
mail = ActionMailer::Base.deliveries.first
|
13
|
+
assert_equal [ADMIN_EMAIL], mail.to
|
14
|
+
recips = User.find(:all).delete_if{|u| u.has_role?(:admin)}.map{|u| u.email}
|
15
|
+
assert_equal recips, mail.bcc
|
16
|
+
assert_equal "[#{TOURNAMENT_TITLE}] subject", mail.subject
|
17
|
+
assert_match /content/, mail.body
|
7
18
|
end
|
8
19
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: tournament
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.
|
4
|
+
version: 2.3.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Douglas A. Seifert
|
@@ -9,7 +9,7 @@ autorequire:
|
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
11
|
|
12
|
-
date: 2009-03-
|
12
|
+
date: 2009-03-20 00:00:00 -07:00
|
13
13
|
default_executable:
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
@@ -141,6 +141,7 @@ files:
|
|
141
141
|
- webgui/app/views/admin/entries.html.erb
|
142
142
|
- webgui/app/views/admin/index.html.erb
|
143
143
|
- webgui/app/views/admin/pool.html.erb
|
144
|
+
- webgui/app/views/admin/recap.html.erb
|
144
145
|
- webgui/app/views/entry/index.html.erb
|
145
146
|
- webgui/app/views/entry/print.erb
|
146
147
|
- webgui/app/views/entry/print.html.erb
|
@@ -158,6 +159,7 @@ files:
|
|
158
159
|
- webgui/app/views/shared/_bracket.html.erb
|
159
160
|
- webgui/app/views/teams/choose.html.erb
|
160
161
|
- webgui/app/views/user_mailer/activation.erb
|
162
|
+
- webgui/app/views/user_mailer/recap.erb
|
161
163
|
- webgui/app/views/user_mailer/signup_notification.erb
|
162
164
|
- webgui/app/views/users/_user_bar.html.erb
|
163
165
|
- webgui/app/views/users/new.html.erb
|