quorum 0.3.0 → 0.3.1
Sign up to get free protection for your applications and to get access to all the features.
- data/Gemfile.lock +58 -58
- data/HISTORY.md +4 -0
- data/README.rdoc +31 -31
- data/app/assets/javascripts/quorum/jobs.js +2 -2
- data/app/assets/javascripts/quorum/quorum.js +55 -55
- data/app/assets/stylesheets/quorum/application.css +23 -23
- data/app/assets/stylesheets/quorum/jquery-ui-1.8.16.custom.css +5 -5
- data/app/controllers/quorum/jobs_controller.rb +7 -7
- data/app/models/quorum/blastn_job.rb +1 -1
- data/app/models/quorum/blastp_job.rb +1 -1
- data/app/models/quorum/blastx_job.rb +1 -1
- data/app/models/quorum/job.rb +19 -19
- data/app/models/quorum/tblastn_job.rb +1 -1
- data/app/views/quorum/jobs/form/_blastn_form.html.erb +7 -7
- data/app/views/quorum/jobs/form/_blastp_form.html.erb +7 -7
- data/app/views/quorum/jobs/form/_blastx_form.html.erb +7 -7
- data/app/views/quorum/jobs/form/_tblastn_form.html.erb +7 -7
- data/app/views/quorum/jobs/new.html.erb +9 -9
- data/app/views/quorum/jobs/show.html.erb +7 -7
- data/app/views/quorum/jobs/templates/_blast_detailed_report_template.html.erb +3 -3
- data/app/views/quorum/jobs/templates/_blast_template.html.erb +4 -4
- data/lib/generators/quorum/install_generator.rb +3 -3
- data/lib/generators/quorum/views_generator.rb +7 -6
- data/lib/generators/templates/README +3 -3
- data/lib/generators/templates/blast.rb +7 -7
- data/lib/generators/templates/blast_db.rb +6 -6
- data/lib/generators/templates/fetch +3 -3
- data/lib/generators/templates/quorum_initializer.rb +1 -1
- data/lib/generators/templates/quorum_settings.yml +1 -1
- data/lib/generators/templates/search +8 -8
- data/lib/generators/templates/trollop.rb +4 -4
- data/lib/quorum/sequence.rb +6 -6
- data/lib/quorum/version.rb +1 -1
- data/lib/quorum.rb +1 -1
- data/lib/tasks/blastdb/build_blast_db.rb +7 -7
- data/lib/tasks/quorum_tasks.rake +6 -6
- data/lib/workers/quorum.rb +2 -2
- data/quorum.gemspec +1 -1
- data/spec/dummy/quorum/blastdb/test.nin +0 -0
- data/spec/dummy/quorum/blastdb/test.pin +0 -0
- data/spec/javascripts/fixtures/quorum_search_form.html +8 -8
- data/spec/javascripts/quorum_spec.js +12 -12
- data/spec/javascripts/string_spec.js +2 -2
- data/spec/models/blastn_job_report_spec.rb +3 -3
- data/spec/models/blastp_job_report_spec.rb +3 -3
- data/spec/models/blastx_job_report_spec.rb +3 -3
- data/spec/models/job_spec.rb +1 -1
- data/spec/models/tblastn_job_report_spec.rb +3 -3
- data/spec/quorum/quorum_sequence_spec.rb +1 -1
- data/spec/requests/jobs_spec.rb +12 -11
- data/spec/spec_helper.rb +1 -1
- data/spec/tasks/blastdb_rake_spec.rb +5 -5
- data/spec/templates/blast_spec.rb +5 -5
- data/vendor/assets/javascripts/jquery.autohint.js +16 -16
- data/vendor/assets/javascripts/jquery.tipsy.js +33 -33
- metadata +96 -31
data/Gemfile.lock
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
quorum (0.3.
|
4
|
+
quorum (0.3.1)
|
5
5
|
bio-blastxmlparser (~> 1.0.1)
|
6
6
|
jquery-rails
|
7
7
|
net-ssh (~> 2.3.0)
|
@@ -12,12 +12,12 @@ PATH
|
|
12
12
|
GEM
|
13
13
|
remote: http://rubygems.org/
|
14
14
|
specs:
|
15
|
-
actionmailer (3.2.
|
16
|
-
actionpack (= 3.2.
|
15
|
+
actionmailer (3.2.2)
|
16
|
+
actionpack (= 3.2.2)
|
17
17
|
mail (~> 2.4.0)
|
18
|
-
actionpack (3.2.
|
19
|
-
activemodel (= 3.2.
|
20
|
-
activesupport (= 3.2.
|
18
|
+
actionpack (3.2.2)
|
19
|
+
activemodel (= 3.2.2)
|
20
|
+
activesupport (= 3.2.2)
|
21
21
|
builder (~> 3.0.0)
|
22
22
|
erubis (~> 2.7.0)
|
23
23
|
journey (~> 1.0.1)
|
@@ -25,21 +25,21 @@ GEM
|
|
25
25
|
rack-cache (~> 1.1)
|
26
26
|
rack-test (~> 0.6.1)
|
27
27
|
sprockets (~> 2.1.2)
|
28
|
-
activemodel (3.2.
|
29
|
-
activesupport (= 3.2.
|
28
|
+
activemodel (3.2.2)
|
29
|
+
activesupport (= 3.2.2)
|
30
30
|
builder (~> 3.0.0)
|
31
|
-
activerecord (3.2.
|
32
|
-
activemodel (= 3.2.
|
33
|
-
activesupport (= 3.2.
|
34
|
-
arel (~> 3.0.
|
31
|
+
activerecord (3.2.2)
|
32
|
+
activemodel (= 3.2.2)
|
33
|
+
activesupport (= 3.2.2)
|
34
|
+
arel (~> 3.0.2)
|
35
35
|
tzinfo (~> 0.3.29)
|
36
|
-
activeresource (3.2.
|
37
|
-
activemodel (= 3.2.
|
38
|
-
activesupport (= 3.2.
|
39
|
-
activesupport (3.2.
|
36
|
+
activeresource (3.2.2)
|
37
|
+
activemodel (= 3.2.2)
|
38
|
+
activesupport (= 3.2.2)
|
39
|
+
activesupport (3.2.2)
|
40
40
|
i18n (~> 0.6)
|
41
41
|
multi_json (~> 1.0)
|
42
|
-
arel (3.0.
|
42
|
+
arel (3.0.2)
|
43
43
|
bio-blastxmlparser (1.0.1)
|
44
44
|
bio-logger (>= 1.0.0)
|
45
45
|
nokogiri (>= 1.5.0)
|
@@ -53,15 +53,15 @@ GEM
|
|
53
53
|
rack-test (>= 0.5.4)
|
54
54
|
selenium-webdriver (~> 2.0)
|
55
55
|
xpath (~> 0.1.4)
|
56
|
-
childprocess (0.3.
|
56
|
+
childprocess (0.3.1)
|
57
57
|
ffi (~> 1.0.6)
|
58
|
-
database_cleaner (0.7.
|
58
|
+
database_cleaner (0.7.2)
|
59
59
|
diff-lcs (1.1.3)
|
60
60
|
erubis (2.7.0)
|
61
|
-
factory_girl (2.
|
62
|
-
activesupport
|
63
|
-
factory_girl_rails (1.
|
64
|
-
factory_girl (~> 2.
|
61
|
+
factory_girl (2.6.4)
|
62
|
+
activesupport (>= 2.3.9)
|
63
|
+
factory_girl_rails (1.7.0)
|
64
|
+
factory_girl (~> 2.6.0)
|
65
65
|
railties (>= 3.0.0)
|
66
66
|
ffi (1.0.11)
|
67
67
|
hike (1.2.1)
|
@@ -72,24 +72,24 @@ GEM
|
|
72
72
|
rspec (>= 1.3.1)
|
73
73
|
selenium-webdriver (>= 0.1.3)
|
74
74
|
jasmine-core (1.1.0)
|
75
|
-
journey (1.0.
|
76
|
-
jquery-rails (2.0.
|
77
|
-
railties (>= 3.2.0
|
75
|
+
journey (1.0.3)
|
76
|
+
jquery-rails (2.0.1)
|
77
|
+
railties (>= 3.2.0, < 5.0)
|
78
78
|
thor (~> 0.14)
|
79
|
-
json (1.6.
|
79
|
+
json (1.6.6)
|
80
80
|
log4r (1.1.10)
|
81
|
-
mail (2.4.
|
81
|
+
mail (2.4.4)
|
82
82
|
i18n (>= 0.4.0)
|
83
83
|
mime-types (~> 1.16)
|
84
84
|
treetop (~> 1.4.8)
|
85
|
-
mime-types (1.
|
86
|
-
multi_json (1.0
|
85
|
+
mime-types (1.18)
|
86
|
+
multi_json (1.2.0)
|
87
87
|
mysql2 (0.3.11)
|
88
88
|
net-ssh (2.3.0)
|
89
|
-
nokogiri (1.5.
|
89
|
+
nokogiri (1.5.2)
|
90
90
|
polyglot (0.3.3)
|
91
91
|
rack (1.4.1)
|
92
|
-
rack-cache (1.
|
92
|
+
rack-cache (1.2)
|
93
93
|
rack (>= 0.4)
|
94
94
|
rack-protection (1.2.0)
|
95
95
|
rack
|
@@ -97,17 +97,17 @@ GEM
|
|
97
97
|
rack
|
98
98
|
rack-test (0.6.1)
|
99
99
|
rack (>= 1.0)
|
100
|
-
rails (3.2.
|
101
|
-
actionmailer (= 3.2.
|
102
|
-
actionpack (= 3.2.
|
103
|
-
activerecord (= 3.2.
|
104
|
-
activeresource (= 3.2.
|
105
|
-
activesupport (= 3.2.
|
100
|
+
rails (3.2.2)
|
101
|
+
actionmailer (= 3.2.2)
|
102
|
+
actionpack (= 3.2.2)
|
103
|
+
activerecord (= 3.2.2)
|
104
|
+
activeresource (= 3.2.2)
|
105
|
+
activesupport (= 3.2.2)
|
106
106
|
bundler (~> 1.0)
|
107
|
-
railties (= 3.2.
|
108
|
-
railties (3.2.
|
109
|
-
actionpack (= 3.2.
|
110
|
-
activesupport (= 3.2.
|
107
|
+
railties (= 3.2.2)
|
108
|
+
railties (3.2.2)
|
109
|
+
actionpack (= 3.2.2)
|
110
|
+
activesupport (= 3.2.2)
|
111
111
|
rack-ssl (~> 1.3.2)
|
112
112
|
rake (>= 0.8.7)
|
113
113
|
rdoc (~> 3.4)
|
@@ -128,27 +128,27 @@ GEM
|
|
128
128
|
resque-result (1.0.1)
|
129
129
|
resque (~> 1.9)
|
130
130
|
resque-meta (~> 1.0)
|
131
|
-
resque_spec (0.9.
|
131
|
+
resque_spec (0.9.2)
|
132
132
|
resque (>= 1.19.0)
|
133
133
|
rspec (>= 2.5.0)
|
134
|
-
rspec (2.
|
135
|
-
rspec-core (~> 2.
|
136
|
-
rspec-expectations (~> 2.
|
137
|
-
rspec-mocks (~> 2.
|
138
|
-
rspec-core (2.
|
139
|
-
rspec-expectations (2.
|
140
|
-
diff-lcs (~> 1.1.
|
141
|
-
rspec-mocks (2.
|
142
|
-
rspec-rails (2.
|
134
|
+
rspec (2.9.0)
|
135
|
+
rspec-core (~> 2.9.0)
|
136
|
+
rspec-expectations (~> 2.9.0)
|
137
|
+
rspec-mocks (~> 2.9.0)
|
138
|
+
rspec-core (2.9.0)
|
139
|
+
rspec-expectations (2.9.0)
|
140
|
+
diff-lcs (~> 1.1.3)
|
141
|
+
rspec-mocks (2.9.0)
|
142
|
+
rspec-rails (2.9.0)
|
143
143
|
actionpack (>= 3.0)
|
144
144
|
activesupport (>= 3.0)
|
145
145
|
railties (>= 3.0)
|
146
|
-
rspec (~> 2.
|
147
|
-
rubyzip (0.9.
|
148
|
-
selenium-webdriver (2.
|
146
|
+
rspec (~> 2.9.0)
|
147
|
+
rubyzip (0.9.6.1)
|
148
|
+
selenium-webdriver (2.20.0)
|
149
149
|
childprocess (>= 0.2.5)
|
150
|
-
ffi (~> 1.0
|
151
|
-
multi_json (~> 1.0
|
150
|
+
ffi (~> 1.0)
|
151
|
+
multi_json (~> 1.0)
|
152
152
|
rubyzip
|
153
153
|
sinatra (1.3.2)
|
154
154
|
rack (~> 1.3, >= 1.3.6)
|
@@ -163,7 +163,7 @@ GEM
|
|
163
163
|
treetop (1.4.10)
|
164
164
|
polyglot
|
165
165
|
polyglot (>= 0.3.1)
|
166
|
-
tzinfo (0.3.
|
166
|
+
tzinfo (0.3.32)
|
167
167
|
vegas (0.1.11)
|
168
168
|
rack (>= 1.0.0)
|
169
169
|
xpath (0.1.4)
|
data/HISTORY.md
CHANGED
data/README.rdoc
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
|
3
3
|
A flexible bioinformatics search tool.
|
4
4
|
|
5
|
-
Quorum is a Rails 3.1 mountable engine that supports the following
|
5
|
+
Quorum is a Rails 3.1 mountable engine that supports the following
|
6
6
|
bioinformatics search tools.
|
7
7
|
|
8
8
|
* NCBI Blast+ (http://blast.ncbi.nlm.nih.gov)
|
@@ -30,7 +30,7 @@ After you install Quorum and add it to your Gemfile, run the generator.
|
|
30
30
|
|
31
31
|
The generator will create a directory in your application's root path
|
32
32
|
|
33
|
-
quorum/
|
33
|
+
quorum/
|
34
34
|
|
35
35
|
as well as the necessary config files to run and customize Quorum. You
|
36
36
|
MUST customize "config/quorum_settings.yml" before using Quorum. See Remote
|
@@ -49,7 +49,7 @@ Follow these steps to safely upgrade Quorum.
|
|
49
49
|
|
50
50
|
<tt>cp config/quorum_settings.yml config/quorum_settings.yml.old</tt>
|
51
51
|
|
52
|
-
* If you overrode Quorum's styles and / or views, make a copy of the
|
52
|
+
* If you overrode Quorum's styles and / or views, make a copy of the
|
53
53
|
existing directories before upgrading.
|
54
54
|
|
55
55
|
<tt>cp -R app/assets/stylesheets/quorum app/assets/stylesheets/quorum_old</tt>
|
@@ -96,7 +96,7 @@ Arguments:
|
|
96
96
|
to contigs.fa.
|
97
97
|
|
98
98
|
* REBUILD_DB= - removes existing blast database(s) before building {true or
|
99
|
-
false}. Defaults to false.
|
99
|
+
false}. Defaults to false.
|
100
100
|
|
101
101
|
* EMPTY= - skip makeblastdb and create necessary directories {true or false}.
|
102
102
|
Defaults to false. Set this argument to true if you wish to create your own
|
@@ -115,13 +115,13 @@ For a full list of supported arguments.
|
|
115
115
|
|
116
116
|
rake -D
|
117
117
|
|
118
|
-
Don't forget to update "config/quorum_settings.yml" with your newly created
|
118
|
+
Don't forget to update "config/quorum_settings.yml" with your newly created
|
119
119
|
database(s).
|
120
120
|
|
121
121
|
==== Download Blast Hit Sequence
|
122
122
|
|
123
123
|
Quorum provides a link to download a Blast hit sequence in the detailed report.
|
124
|
-
For this process to work smoothly, the sequence identifier MUST be unique
|
124
|
+
For this process to work smoothly, the sequence identifier MUST be unique
|
125
125
|
across ALL Blast databases.
|
126
126
|
|
127
127
|
Example:
|
@@ -140,11 +140,11 @@ you wish to remove the link to download a Blast hit sequence, follow the
|
|
140
140
|
steps below.
|
141
141
|
|
142
142
|
* Override Quorum's views (see Customize Quorum below)
|
143
|
-
* Comment out or remove the lines below in
|
144
|
-
"app/views/quorum/jobs/templates/_blast_detailed_report_template.html.erb"
|
143
|
+
* Comment out or remove the lines below in
|
144
|
+
"app/views/quorum/jobs/templates/_blast_detailed_report_template.html.erb"
|
145
145
|
|
146
146
|
<p class="small">
|
147
|
-
<a id="download_sequence_{{= id }}"
|
147
|
+
<a id="download_sequence_{{= id }}"
|
148
148
|
onclick="downloadSequence(<%= @jobs.id %>, {{= id }}, '{{= algo }}', this)">
|
149
149
|
Download Sequence
|
150
150
|
</a>
|
@@ -154,18 +154,18 @@ steps below.
|
|
154
154
|
|
155
155
|
Follow the steps below to execute Quorum remotely via Net::SSH.
|
156
156
|
|
157
|
-
* Ensure your ActiveRecord Database adapter in "config/database.yml" is set to
|
157
|
+
* Ensure your ActiveRecord Database adapter in "config/database.yml" is set to
|
158
158
|
*any* supported adapter other than sqlite3.
|
159
159
|
|
160
160
|
* Ensure your database host is set and accessible via the remote machine(s).
|
161
161
|
|
162
|
-
* Ensure you have supplied the necessary information in
|
162
|
+
* Ensure you have supplied the necessary information in
|
163
163
|
"config/quorum_settings.yml" to execute Quorum remotely.
|
164
164
|
|
165
165
|
<tt>remote: true</tt>
|
166
166
|
<tt>ssh_host: remote.machine.org</tt>
|
167
167
|
<tt>ssh_user: remote_user</tt>
|
168
|
-
|
168
|
+
|
169
169
|
Net::SSH.start() optional params (http://net-ssh.github.com/ssh/v2/api/index.html)
|
170
170
|
|
171
171
|
ssh_options:
|
@@ -186,7 +186,7 @@ Net::SSH.start() optional params (http://net-ssh.github.com/ssh/v2/api/index.htm
|
|
186
186
|
|
187
187
|
<tt>tar -xzvf quorum.tar.gz</tt>
|
188
188
|
|
189
|
-
* Ensure Quorum script dependencies are added to the remote machine's PATH.
|
189
|
+
* Ensure Quorum script dependencies are added to the remote machine's PATH.
|
190
190
|
If the remote machine doesn't have a .bashrc file, create one.
|
191
191
|
|
192
192
|
<tt>touch /path/to/.bashrc</tt>
|
@@ -201,8 +201,8 @@ To override Quorum's default views, run the generator.
|
|
201
201
|
|
202
202
|
rails generate quorum:views
|
203
203
|
|
204
|
-
A copy of Quorum's views can be found in your application under
|
205
|
-
"app/views/quorum/".
|
204
|
+
A copy of Quorum's layouts and views can be found in your application under
|
205
|
+
"app/views/layouts/quorum/" "app/views/quorum/".
|
206
206
|
|
207
207
|
To override Quorum's default styles, run the generator.
|
208
208
|
|
@@ -214,7 +214,7 @@ it's a good idea to remove
|
|
214
214
|
|
215
215
|
*= require_tree .
|
216
216
|
|
217
|
-
in "app/assets/stylesheets/application.css" and require your stylesheets
|
217
|
+
in "app/assets/stylesheets/application.css" and require your stylesheets
|
218
218
|
individually.
|
219
219
|
|
220
220
|
To override Quorum's default images, run the generator.
|
@@ -233,8 +233,8 @@ Don't like Quorum's jQuery UI theme? Override it!
|
|
233
233
|
* Replace Quorum's theme in "app/assets/{stylesheets:images}/quorum" with
|
234
234
|
your own.
|
235
235
|
|
236
|
-
Don't plan on supporting all of Quorum's alogrithms? Override Quorum's views
|
237
|
-
and comment out any unwanted algorithms in "app/views/quorum/jobs/new.html.erb"
|
236
|
+
Don't plan on supporting all of Quorum's alogrithms? Override Quorum's views
|
237
|
+
and comment out any unwanted algorithms in "app/views/quorum/jobs/new.html.erb"
|
238
238
|
and "app/views/quorum/jobs/show.html.erb".
|
239
239
|
|
240
240
|
For example:
|
@@ -245,19 +245,19 @@ Remove Blastp in "app/views/quorum/jobs/new.html.erb"
|
|
245
245
|
<!-- Comment out an algorithm below to remove it from the form. -->
|
246
246
|
|
247
247
|
<!-- blastn -->
|
248
|
-
<%= render :partial => "quorum/jobs/form/blastn_form", :locals => {
|
248
|
+
<%= render :partial => "quorum/jobs/form/blastn_form", :locals => {
|
249
249
|
:f => f, :blast_dbs => @blast_dbs } %>
|
250
250
|
|
251
251
|
<!-- blastx -->
|
252
|
-
<%= render :partial => "quorum/jobs/form/blastx_form", :locals => {
|
252
|
+
<%= render :partial => "quorum/jobs/form/blastx_form", :locals => {
|
253
253
|
:f => f, :blast_dbs => @blast_dbs } %>
|
254
254
|
|
255
255
|
<!-- tblastn -->
|
256
|
-
<%= render :partial => "quorum/jobs/form/tblastn_form", :locals => {
|
256
|
+
<%= render :partial => "quorum/jobs/form/tblastn_form", :locals => {
|
257
257
|
:f => f, :blast_dbs => @blast_dbs } %>
|
258
258
|
|
259
259
|
<!-- blastp -->
|
260
|
-
<% render :partial => "quorum/jobs/form/blastp_form", :locals => {
|
260
|
+
<% render :partial => "quorum/jobs/form/blastp_form", :locals => {
|
261
261
|
:f => f, :blast_dbs => @blast_dbs } %>
|
262
262
|
|
263
263
|
<!-- End Search Algorithms -->
|
@@ -278,21 +278,21 @@ Remove Blastp in "app/views/quorum/jobs/show.html.erb"
|
|
278
278
|
<div id="tabs-1">
|
279
279
|
<h2>Blastn</h2>
|
280
280
|
<div id="blastn-results">
|
281
|
-
Searching... <%= image_tag "quorum/loading.gif" %>
|
281
|
+
Searching... <%= image_tag "quorum/loading.gif" %>
|
282
282
|
</div>
|
283
283
|
</div>
|
284
284
|
|
285
285
|
<div id="tabs-2">
|
286
286
|
<h2>Blastx</h2>
|
287
287
|
<div id="blastx-results">
|
288
|
-
Searching... <%= image_tag "quorum/loading.gif" %>
|
288
|
+
Searching... <%= image_tag "quorum/loading.gif" %>
|
289
289
|
</div>
|
290
290
|
</div>
|
291
291
|
|
292
292
|
<div id="tabs-3">
|
293
293
|
<h2>Tblastn</h2>
|
294
294
|
<div id="tblastn-results">
|
295
|
-
Searching... <%= image_tag "quorum/loading.gif" %>
|
295
|
+
Searching... <%= image_tag "quorum/loading.gif" %>
|
296
296
|
</div>
|
297
297
|
</div>
|
298
298
|
|
@@ -300,7 +300,7 @@ Remove Blastp in "app/views/quorum/jobs/show.html.erb"
|
|
300
300
|
<div id="tabs-4">
|
301
301
|
<h2>Blastp</h2>
|
302
302
|
<div id="blastp-results">
|
303
|
-
Searching... <%= image_tag "quorum/loading.gif" %>
|
303
|
+
Searching... <%= image_tag "quorum/loading.gif" %>
|
304
304
|
</div>
|
305
305
|
</div>
|
306
306
|
-->
|
@@ -315,15 +315,15 @@ For detailed Redis installation instructions, follow the links below.
|
|
315
315
|
|
316
316
|
=== Resque
|
317
317
|
|
318
|
-
Quorum provides a simple Rails environment rake task for spawning Resque
|
319
|
-
workers. To customize Resque workers by adding monitoring etc., follow
|
318
|
+
Quorum provides a simple Rails environment rake task for spawning Resque
|
319
|
+
workers. To customize Resque workers by adding monitoring etc., follow
|
320
320
|
the link below.
|
321
321
|
|
322
322
|
* Resque (https://github.com/defunkt/resque)
|
323
323
|
|
324
324
|
<b>Resque Web Interface</b>
|
325
325
|
|
326
|
-
Quorum mounts Resque's web interface by default via
|
326
|
+
Quorum mounts Resque's web interface by default via
|
327
327
|
|
328
328
|
mount Resque::Server.new, :at => "/quorum/resque"
|
329
329
|
|
@@ -350,9 +350,9 @@ Devise plus Declarative Authorization Example:
|
|
350
350
|
|
351
351
|
# Only superusers can access Resque's web interface.
|
352
352
|
resque_constraint = lambda do |request|
|
353
|
-
request.env["warden"].authenticate? &&
|
353
|
+
request.env["warden"].authenticate? &&
|
354
354
|
request.env["warden"].user.role_symbols.include?(:superuser)
|
355
|
-
end
|
355
|
+
end
|
356
356
|
|
357
357
|
constraints resque_constraint do
|
358
358
|
mount Resque::Server.new, :at => "/quorum/resque"
|