quorum 0.5.2 → 0.6.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/.gitignore +3 -5
- data/.travis.yml +0 -2
- data/Gemfile.lock +2 -2
- data/HISTORY.md +12 -0
- data/Rakefile +13 -48
- data/app/models/quorum/blastn_job.rb +15 -22
- data/app/models/quorum/blastp_job.rb +15 -22
- data/app/models/quorum/blastx_job.rb +15 -22
- data/app/models/quorum/tblastn_job.rb +15 -22
- data/app/views/quorum/jobs/form/_blastn_form.html.erb +4 -4
- data/app/views/quorum/jobs/form/_blastp_form.html.erb +4 -4
- data/app/views/quorum/jobs/form/_blastx_form.html.erb +4 -4
- data/app/views/quorum/jobs/form/_tblastn_form.html.erb +4 -4
- data/app/views/quorum/jobs/templates/_blast_detailed_report_template.html.erb +6 -17
- data/db/migrate/20120918205556_rename_max_score_column.rb +15 -0
- data/lib/generators/templates/blast.rb +37 -31
- data/lib/quorum/version.rb +1 -1
- data/spec/config/quorum_settings.yml +55 -0
- data/spec/javascripts/fixtures/quorum_search_form.html +8 -8
- data/spec/javascripts/jobs_spec.js +8 -8
- data/spec/lib/tasks/travis.rake +120 -0
- data/spec/models/blastn_job_spec.rb +41 -22
- data/spec/models/blastp_job_spec.rb +41 -22
- data/spec/models/blastx_job_spec.rb +41 -22
- data/spec/models/job_spec.rb +1 -1
- data/spec/models/tblastn_job_spec.rb +41 -22
- data/spec/requests/jobs_spec.rb +8 -8
- data/spec/templates/blast_db_spec.rb +1 -1
- data/spec/templates/blast_spec.rb +1 -1
- metadata +7 -32
- data/spec/dummy/config/initializers/quorum_initializer.rb +0 -36
- data/spec/dummy/config/locales/quorum.en.yml +0 -8
- data/spec/dummy/config/quorum_settings.yml +0 -141
- data/spec/dummy/db/schema.rb +0 -213
- data/spec/dummy/quorum/bin/fetch +0 -115
- data/spec/dummy/quorum/bin/search +0 -141
- data/spec/dummy/quorum/blastdb/test/contigs.fa +0 -15
- data/spec/dummy/quorum/blastdb/test/peptides.fa +0 -4
- data/spec/dummy/quorum/blastdb/test.nhd +0 -2
- data/spec/dummy/quorum/blastdb/test.nhi +0 -0
- data/spec/dummy/quorum/blastdb/test.nhr +0 -0
- data/spec/dummy/quorum/blastdb/test.nin +0 -0
- data/spec/dummy/quorum/blastdb/test.nog +0 -0
- data/spec/dummy/quorum/blastdb/test.nsd +0 -2
- data/spec/dummy/quorum/blastdb/test.nsi +0 -0
- data/spec/dummy/quorum/blastdb/test.nsq +0 -0
- data/spec/dummy/quorum/blastdb/test.phd +0 -2
- data/spec/dummy/quorum/blastdb/test.phi +0 -0
- data/spec/dummy/quorum/blastdb/test.phr +0 -0
- data/spec/dummy/quorum/blastdb/test.pin +0 -0
- data/spec/dummy/quorum/blastdb/test.pog +0 -0
- data/spec/dummy/quorum/blastdb/test.psd +0 -2
- data/spec/dummy/quorum/blastdb/test.psi +0 -0
- data/spec/dummy/quorum/blastdb/test.psq +0 -0
- data/spec/dummy/quorum/lib/fetch_tools/blast_db.rb +0 -106
- data/spec/dummy/quorum/lib/logger.rb +0 -43
- data/spec/dummy/quorum/lib/search_tools/blast.rb +0 -452
- data/spec/dummy/quorum/lib/trollop.rb +0 -781
data/.gitignore
CHANGED
@@ -1,10 +1,8 @@
|
|
1
1
|
.bundle/
|
2
2
|
log/*.log
|
3
3
|
pkg/
|
4
|
-
spec/dummy/db
|
5
|
-
spec/dummy/db/migrate/
|
4
|
+
spec/dummy/db/*
|
6
5
|
spec/dummy/log/*.log
|
7
|
-
spec/dummy/tmp
|
6
|
+
spec/dummy/tmp/*
|
8
7
|
spec/dummy/config/database.yml
|
9
|
-
spec/dummy/quorum/
|
10
|
-
spec/dummy/quorum/tmp/*
|
8
|
+
spec/dummy/quorum/
|
data/.travis.yml
CHANGED
data/Gemfile.lock
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
quorum (0.
|
4
|
+
quorum (0.6.0)
|
5
5
|
bio-blastxmlparser (~> 1.1.0)
|
6
6
|
jquery-rails
|
7
7
|
net-ssh (~> 2.3.0)
|
@@ -136,7 +136,7 @@ GEM
|
|
136
136
|
rspec-core (2.11.1)
|
137
137
|
rspec-expectations (2.11.3)
|
138
138
|
diff-lcs (~> 1.1.3)
|
139
|
-
rspec-mocks (2.11.
|
139
|
+
rspec-mocks (2.11.3)
|
140
140
|
rspec-rails (2.11.0)
|
141
141
|
actionpack (>= 3.0)
|
142
142
|
activesupport (>= 3.0)
|
data/HISTORY.md
CHANGED
@@ -1,3 +1,15 @@
|
|
1
|
+
## 0.6.0 (2012-09-21)
|
2
|
+
|
3
|
+
* Renamed blast report max_score to max_target_seqs to match NCBI Blast
|
4
|
+
reports. Updated search interface. NOTE: requires migration install.
|
5
|
+
* Updated the default search interface:
|
6
|
+
* Enabled gapped alignments by default.
|
7
|
+
* Improved existing filter options (NCBI Blast DUST and SEG) to use NCBI Blast
|
8
|
+
default values.
|
9
|
+
* Fixed Rails 3.2 multiple select validation error.
|
10
|
+
* Refactored travis-ci rake tasks.
|
11
|
+
* Added default spec runner task.
|
12
|
+
|
1
13
|
## 0.5.2 (2012-09-14)
|
2
14
|
|
3
15
|
* Removed jQuery ajax timeout for long lasting blast jobs.
|
data/Rakefile
CHANGED
@@ -25,58 +25,23 @@ load 'rails/tasks/engine.rake'
|
|
25
25
|
|
26
26
|
require 'rspec/core/rake_task'
|
27
27
|
RSpec::Core::RakeTask.new(:spec)
|
28
|
-
task :default => :spec
|
29
28
|
|
30
29
|
Bundler::GemHelper.install_tasks
|
31
30
|
|
32
|
-
# Travis
|
33
|
-
|
34
|
-
# Specs
|
35
|
-
task :spec do
|
36
|
-
Rake::Task["travis:create_dirs"].execute
|
37
|
-
["rake spec", "rake app:jasmine:ci JASMINE_PORT=53331"].each do |cmd|
|
38
|
-
puts "Starting to run #{cmd}..."
|
39
|
-
system("export DISPLAY=:99.0 && bundle exec #{cmd}")
|
40
|
-
raise "#{cmd} failed!" unless $?.exitstatus == 0
|
41
|
-
end
|
42
|
-
Rake::Task["travis:remove_db_config"].execute
|
43
|
-
end
|
31
|
+
# Travis tasks
|
32
|
+
load 'spec/lib/tasks/travis.rake'
|
44
33
|
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
" username: root\n password:\n host: localhost\n encoding: utf8"
|
51
|
-
end
|
34
|
+
# Spec runner
|
35
|
+
task :spec_runner do
|
36
|
+
unless File.exists?(File.expand_path("../spec/dummy/quorum", __FILE__))
|
37
|
+
Rake::Task["travis:quorum_install"].execute
|
38
|
+
Rake::Task["travis:copy_quorum_settings"].execute
|
52
39
|
end
|
53
|
-
|
54
|
-
|
55
|
-
task :remove_db_config do
|
56
|
-
config = File.expand_path("../spec/dummy/config", __FILE__)
|
57
|
-
File.delete(File.join(config, "database.yml"))
|
58
|
-
end
|
59
|
-
|
60
|
-
# Create necessary directories for test. Mimic a real app install
|
61
|
-
# via rails g quorum:install.
|
62
|
-
#
|
63
|
-
# The directories below are not in the git repo.
|
64
|
-
task :create_dirs do
|
65
|
-
app = File.expand_path("../spec/dummy", __FILE__)
|
66
|
-
quorum = File.expand_path("../spec/dummy/quorum", __FILE__)
|
67
|
-
|
68
|
-
app_tmp = File.join(app, "tmp")
|
69
|
-
app_pids = File.join(app_tmp, "pids")
|
70
|
-
app_cache = File.join(app_tmp, "cache")
|
71
|
-
|
72
|
-
Dir.mkdir(app_tmp) unless File.directory?(app_tmp)
|
73
|
-
Dir.mkdir(app_pids) unless File.directory?(app_pids)
|
74
|
-
Dir.mkdir(app_cache) unless File.directory?(app_cache)
|
75
|
-
|
76
|
-
quorum_log = File.join(quorum, "log")
|
77
|
-
quorum_tmp = File.join(quorum, "tmp")
|
78
|
-
|
79
|
-
Dir.mkdir(quorum_log) unless File.directory?(quorum_log)
|
80
|
-
Dir.mkdir(quorum_tmp) unless File.directory?(quorum_tmp)
|
40
|
+
unless File.exists?(File.expand_path("../spec/dummy/tmp", __FILE__))
|
41
|
+
Rake::Task["travis:create_dummy_tmp"].execute
|
81
42
|
end
|
43
|
+
Rake::Task["spec"].execute
|
44
|
+
Rake::Task["app:jasmine:ci"].execute
|
82
45
|
end
|
46
|
+
|
47
|
+
task :default => :spec_runner
|
@@ -1,6 +1,8 @@
|
|
1
1
|
module Quorum
|
2
2
|
class BlastnJob < ActiveRecord::Base
|
3
3
|
|
4
|
+
before_validation :check_blast_dbs, :if => :queue
|
5
|
+
|
4
6
|
before_save :set_optional_params, :set_blast_dbs
|
5
7
|
|
6
8
|
belongs_to :job
|
@@ -9,7 +11,7 @@ module Quorum
|
|
9
11
|
:foreign_key => :blastn_job_id,
|
10
12
|
:primary_key => :job_id
|
11
13
|
|
12
|
-
attr_accessible :expectation, :
|
14
|
+
attr_accessible :expectation, :max_target_seqs, :min_bit_score,
|
13
15
|
:filter, :gapped_alignments, :gap_opening_penalty,
|
14
16
|
:gap_extension_penalty, :gap_opening_extension, :queue,
|
15
17
|
:blast_dbs
|
@@ -18,7 +20,7 @@ module Quorum
|
|
18
20
|
:with => /^[+-]?[0-9]*\.?[0-9]+([eE][-+]?[0-9]+)?$/,
|
19
21
|
:message => " - Valid formats (12, 32.05, 43e-123)",
|
20
22
|
:allow_blank => true
|
21
|
-
validates_numericality_of :
|
23
|
+
validates_numericality_of :max_target_seqs,
|
22
24
|
:only_integer => true,
|
23
25
|
:allow_blank => true
|
24
26
|
validates_numericality_of :min_bit_score,
|
@@ -31,7 +33,6 @@ module Quorum
|
|
31
33
|
:only_integer => true,
|
32
34
|
:allow_blank => true
|
33
35
|
validates_presence_of :blast_dbs, :if => :queue
|
34
|
-
validate :gap_opening_extension_exists
|
35
36
|
|
36
37
|
#
|
37
38
|
# Gapped alignment helper.
|
@@ -79,32 +80,24 @@ module Quorum
|
|
79
80
|
|
80
81
|
private
|
81
82
|
|
82
|
-
def
|
83
|
+
def check_blast_dbs
|
83
84
|
if self.blast_dbs.present?
|
84
|
-
self.blast_dbs = self.blast_dbs.delete_if { |b| b.empty? }
|
85
|
+
self.blast_dbs = self.blast_dbs.delete_if { |b| b.empty? }
|
85
86
|
end
|
86
87
|
end
|
87
88
|
|
88
|
-
def
|
89
|
-
|
90
|
-
|
91
|
-
self.min_bit_score ||= 0
|
92
|
-
unless self.gapped_alignments
|
93
|
-
self.gap_opening_penalty = 0
|
94
|
-
self.gap_extension_penalty = 0
|
89
|
+
def set_blast_dbs
|
90
|
+
if self.blast_dbs.present?
|
91
|
+
self.blast_dbs = self.blast_dbs.join(';')
|
95
92
|
end
|
96
93
|
end
|
97
94
|
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
:gap_opening_extension,
|
105
|
-
" - Please select a value."
|
106
|
-
)
|
107
|
-
end
|
95
|
+
def set_optional_params
|
96
|
+
self.expectation = "5e-20" if self.expectation.blank?
|
97
|
+
self.max_target_seqs ||= 25
|
98
|
+
self.min_bit_score ||= 0
|
99
|
+
self.gap_opening_penalty ||= nil
|
100
|
+
self.gap_extension_penalty ||= nil
|
108
101
|
end
|
109
102
|
|
110
103
|
end
|
@@ -1,6 +1,8 @@
|
|
1
1
|
module Quorum
|
2
2
|
class BlastpJob < ActiveRecord::Base
|
3
3
|
|
4
|
+
before_validation :check_blast_dbs, :if => :queue
|
5
|
+
|
4
6
|
before_save :set_optional_params, :set_blast_dbs
|
5
7
|
|
6
8
|
belongs_to :job
|
@@ -9,7 +11,7 @@ module Quorum
|
|
9
11
|
:foreign_key => :blastp_job_id,
|
10
12
|
:primary_key => :job_id
|
11
13
|
|
12
|
-
attr_accessible :expectation, :
|
14
|
+
attr_accessible :expectation, :max_target_seqs, :min_bit_score,
|
13
15
|
:filter, :gapped_alignments, :gap_opening_penalty,
|
14
16
|
:gap_extension_penalty, :gap_opening_extension, :queue,
|
15
17
|
:blast_dbs
|
@@ -18,7 +20,7 @@ module Quorum
|
|
18
20
|
:with => /^[+-]?[0-9]*\.?[0-9]+([eE][-+]?[0-9]+)?$/,
|
19
21
|
:message => " - Valid formats (12, 32.05, 43e-123)",
|
20
22
|
:allow_blank => true
|
21
|
-
validates_numericality_of :
|
23
|
+
validates_numericality_of :max_target_seqs,
|
22
24
|
:only_integer => true,
|
23
25
|
:allow_blank => true
|
24
26
|
validates_numericality_of :min_bit_score,
|
@@ -31,7 +33,6 @@ module Quorum
|
|
31
33
|
:only_integer => true,
|
32
34
|
:allow_blank => true
|
33
35
|
validates_presence_of :blast_dbs, :if => :queue
|
34
|
-
validate :gap_opening_extension_exists
|
35
36
|
|
36
37
|
#
|
37
38
|
# Gapped alignment helper.
|
@@ -79,32 +80,24 @@ module Quorum
|
|
79
80
|
|
80
81
|
private
|
81
82
|
|
82
|
-
def
|
83
|
+
def check_blast_dbs
|
83
84
|
if self.blast_dbs.present?
|
84
|
-
self.blast_dbs = self.blast_dbs.delete_if { |b| b.empty? }
|
85
|
+
self.blast_dbs = self.blast_dbs.delete_if { |b| b.empty? }
|
85
86
|
end
|
86
87
|
end
|
87
88
|
|
88
|
-
def
|
89
|
-
|
90
|
-
|
91
|
-
self.min_bit_score ||= 0
|
92
|
-
unless self.gapped_alignments
|
93
|
-
self.gap_opening_penalty = 0
|
94
|
-
self.gap_extension_penalty = 0
|
89
|
+
def set_blast_dbs
|
90
|
+
if self.blast_dbs.present?
|
91
|
+
self.blast_dbs = self.blast_dbs.join(';')
|
95
92
|
end
|
96
93
|
end
|
97
94
|
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
:gap_opening_extension,
|
105
|
-
" - Please select a value."
|
106
|
-
)
|
107
|
-
end
|
95
|
+
def set_optional_params
|
96
|
+
self.expectation = "5e-20" if self.expectation.blank?
|
97
|
+
self.max_target_seqs ||= 25
|
98
|
+
self.min_bit_score ||= 0
|
99
|
+
self.gap_opening_penalty ||= nil
|
100
|
+
self.gap_extension_penalty ||= nil
|
108
101
|
end
|
109
102
|
|
110
103
|
end
|
@@ -1,6 +1,8 @@
|
|
1
1
|
module Quorum
|
2
2
|
class BlastxJob < ActiveRecord::Base
|
3
3
|
|
4
|
+
before_validation :check_blast_dbs, :if => :queue
|
5
|
+
|
4
6
|
before_save :set_optional_params, :set_blast_dbs
|
5
7
|
|
6
8
|
belongs_to :job
|
@@ -9,7 +11,7 @@ module Quorum
|
|
9
11
|
:foreign_key => :blastx_job_id,
|
10
12
|
:primary_key => :job_id
|
11
13
|
|
12
|
-
attr_accessible :expectation, :
|
14
|
+
attr_accessible :expectation, :max_target_seqs, :min_bit_score,
|
13
15
|
:filter, :gapped_alignments, :gap_opening_penalty,
|
14
16
|
:gap_extension_penalty, :gap_opening_extension, :queue,
|
15
17
|
:blast_dbs
|
@@ -18,7 +20,7 @@ module Quorum
|
|
18
20
|
:with => /^[+-]?[0-9]*\.?[0-9]+([eE][-+]?[0-9]+)?$/,
|
19
21
|
:message => " - Valid formats (12, 32.05, 43e-123)",
|
20
22
|
:allow_blank => true
|
21
|
-
validates_numericality_of :
|
23
|
+
validates_numericality_of :max_target_seqs,
|
22
24
|
:only_integer => true,
|
23
25
|
:allow_blank => true
|
24
26
|
validates_numericality_of :min_bit_score,
|
@@ -31,7 +33,6 @@ module Quorum
|
|
31
33
|
:only_integer => true,
|
32
34
|
:allow_blank => true
|
33
35
|
validates_presence_of :blast_dbs, :if => :queue
|
34
|
-
validate :gap_opening_extension_exists
|
35
36
|
|
36
37
|
#
|
37
38
|
# Gapped alignment helper.
|
@@ -79,32 +80,24 @@ module Quorum
|
|
79
80
|
|
80
81
|
private
|
81
82
|
|
82
|
-
def
|
83
|
+
def check_blast_dbs
|
83
84
|
if self.blast_dbs.present?
|
84
|
-
self.blast_dbs = self.blast_dbs.delete_if { |b| b.empty? }
|
85
|
+
self.blast_dbs = self.blast_dbs.delete_if { |b| b.empty? }
|
85
86
|
end
|
86
87
|
end
|
87
88
|
|
88
|
-
def
|
89
|
-
|
90
|
-
|
91
|
-
self.min_bit_score ||= 0
|
92
|
-
unless self.gapped_alignments
|
93
|
-
self.gap_opening_penalty = 0
|
94
|
-
self.gap_extension_penalty = 0
|
89
|
+
def set_blast_dbs
|
90
|
+
if self.blast_dbs.present?
|
91
|
+
self.blast_dbs = self.blast_dbs.join(';')
|
95
92
|
end
|
96
93
|
end
|
97
94
|
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
:gap_opening_extension,
|
105
|
-
" - Please select a value."
|
106
|
-
)
|
107
|
-
end
|
95
|
+
def set_optional_params
|
96
|
+
self.expectation = "5e-20" if self.expectation.blank?
|
97
|
+
self.max_target_seqs ||= 25
|
98
|
+
self.min_bit_score ||= 0
|
99
|
+
self.gap_opening_penalty ||= nil
|
100
|
+
self.gap_extension_penalty ||= nil
|
108
101
|
end
|
109
102
|
|
110
103
|
end
|
@@ -1,6 +1,8 @@
|
|
1
1
|
module Quorum
|
2
2
|
class TblastnJob < ActiveRecord::Base
|
3
3
|
|
4
|
+
before_validation :check_blast_dbs, :if => :queue
|
5
|
+
|
4
6
|
before_save :set_optional_params, :set_blast_dbs
|
5
7
|
|
6
8
|
belongs_to :job
|
@@ -9,7 +11,7 @@ module Quorum
|
|
9
11
|
:foreign_key => :tblastn_job_id,
|
10
12
|
:primary_key => :job_id
|
11
13
|
|
12
|
-
attr_accessible :expectation, :
|
14
|
+
attr_accessible :expectation, :max_target_seqs, :min_bit_score,
|
13
15
|
:filter, :gapped_alignments, :gap_opening_penalty,
|
14
16
|
:gap_extension_penalty, :gap_opening_extension, :queue,
|
15
17
|
:blast_dbs
|
@@ -18,7 +20,7 @@ module Quorum
|
|
18
20
|
:with => /^[+-]?[0-9]*\.?[0-9]+([eE][-+]?[0-9]+)?$/,
|
19
21
|
:message => " - Valid formats (12, 32.05, 43e-123)",
|
20
22
|
:allow_blank => true
|
21
|
-
validates_numericality_of :
|
23
|
+
validates_numericality_of :max_target_seqs,
|
22
24
|
:only_integer => true,
|
23
25
|
:allow_blank => true
|
24
26
|
validates_numericality_of :min_bit_score,
|
@@ -31,7 +33,6 @@ module Quorum
|
|
31
33
|
:only_integer => true,
|
32
34
|
:allow_blank => true
|
33
35
|
validates_presence_of :blast_dbs, :if => :queue
|
34
|
-
validate :gap_opening_extension_exists
|
35
36
|
|
36
37
|
#
|
37
38
|
# Gapped alignment helper.
|
@@ -79,32 +80,24 @@ module Quorum
|
|
79
80
|
|
80
81
|
private
|
81
82
|
|
82
|
-
def
|
83
|
+
def check_blast_dbs
|
83
84
|
if self.blast_dbs.present?
|
84
|
-
self.blast_dbs = self.blast_dbs.delete_if { |b| b.empty? }
|
85
|
+
self.blast_dbs = self.blast_dbs.delete_if { |b| b.empty? }
|
85
86
|
end
|
86
87
|
end
|
87
88
|
|
88
|
-
def
|
89
|
-
|
90
|
-
|
91
|
-
self.min_bit_score ||= 0
|
92
|
-
unless self.gapped_alignments
|
93
|
-
self.gap_opening_penalty = 0
|
94
|
-
self.gap_extension_penalty = 0
|
89
|
+
def set_blast_dbs
|
90
|
+
if self.blast_dbs.present?
|
91
|
+
self.blast_dbs = self.blast_dbs.join(';')
|
95
92
|
end
|
96
93
|
end
|
97
94
|
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
:gap_opening_extension,
|
105
|
-
" - Please select a value."
|
106
|
-
)
|
107
|
-
end
|
95
|
+
def set_optional_params
|
96
|
+
self.expectation = "5e-20" if self.expectation.blank?
|
97
|
+
self.max_target_seqs ||= 25
|
98
|
+
self.min_bit_score ||= 0
|
99
|
+
self.gap_opening_penalty ||= nil
|
100
|
+
self.gap_extension_penalty ||= nil
|
108
101
|
end
|
109
102
|
|
110
103
|
end
|
@@ -16,7 +16,7 @@
|
|
16
16
|
<%= n.label :filter, "DUST" %>
|
17
17
|
</td>
|
18
18
|
<td>
|
19
|
-
<%= n.
|
19
|
+
<%= n.select :filter, [['Yes', true],['No', false]] %>
|
20
20
|
</td>
|
21
21
|
</tr>
|
22
22
|
<tr>
|
@@ -37,17 +37,17 @@
|
|
37
37
|
</tr>
|
38
38
|
<tr>
|
39
39
|
<td>
|
40
|
-
<%= n.label :
|
40
|
+
<%= n.label :max_target_seqs, "Max target sequences" %>
|
41
41
|
</td>
|
42
42
|
<td>
|
43
|
-
<%= n.text_field :
|
43
|
+
<%= n.text_field :max_target_seqs, :size => 15, :title => "25",
|
44
44
|
:class => "auto-hint" %>
|
45
45
|
</td>
|
46
46
|
<td>
|
47
47
|
<%= n.label :gapped_alignments %>
|
48
48
|
</td>
|
49
49
|
<td>
|
50
|
-
<%= n.select :gapped_alignments, [['
|
50
|
+
<%= n.select :gapped_alignments, [['Yes', true],['No', false]] %>
|
51
51
|
</td>
|
52
52
|
</tr>
|
53
53
|
<tr>
|
@@ -16,7 +16,7 @@
|
|
16
16
|
<%= n.label :filter, "SEG" %>
|
17
17
|
</td>
|
18
18
|
<td>
|
19
|
-
<%= n.
|
19
|
+
<%= n.select :filter, [['No', false], ['Yes', true]] %>
|
20
20
|
</td>
|
21
21
|
</tr>
|
22
22
|
<tr>
|
@@ -37,17 +37,17 @@
|
|
37
37
|
</tr>
|
38
38
|
<tr>
|
39
39
|
<td>
|
40
|
-
<%= n.label :
|
40
|
+
<%= n.label :max_target_seqs, "Max target sequences" %>
|
41
41
|
</td>
|
42
42
|
<td>
|
43
|
-
<%= n.text_field :
|
43
|
+
<%= n.text_field :max_target_seqs, :size => 15, :title => "25",
|
44
44
|
:class => "auto-hint" %>
|
45
45
|
</td>
|
46
46
|
<td>
|
47
47
|
<%= n.label :gapped_alignments %>
|
48
48
|
</td>
|
49
49
|
<td>
|
50
|
-
<%= n.select :gapped_alignments, [['
|
50
|
+
<%= n.select :gapped_alignments, [['Yes', true],['No', false]] %>
|
51
51
|
</td>
|
52
52
|
</tr>
|
53
53
|
<tr>
|
@@ -16,7 +16,7 @@
|
|
16
16
|
<%= n.label :filter, "SEG" %>
|
17
17
|
</td>
|
18
18
|
<td>
|
19
|
-
<%= n.
|
19
|
+
<%= n.select :filter, [['Yes', true],['No', false]] %>
|
20
20
|
</td>
|
21
21
|
</tr>
|
22
22
|
<tr>
|
@@ -37,17 +37,17 @@
|
|
37
37
|
</tr>
|
38
38
|
<tr>
|
39
39
|
<td>
|
40
|
-
<%= n.label :
|
40
|
+
<%= n.label :max_target_seqs, "Max target sequences" %>
|
41
41
|
</td>
|
42
42
|
<td>
|
43
|
-
<%= n.text_field :
|
43
|
+
<%= n.text_field :max_target_seqs, :size => 15, :title => "25",
|
44
44
|
:class => "auto-hint" %>
|
45
45
|
</td>
|
46
46
|
<td>
|
47
47
|
<%= n.label :gapped_alignments %>
|
48
48
|
</td>
|
49
49
|
<td>
|
50
|
-
<%= n.select :gapped_alignments, [['
|
50
|
+
<%= n.select :gapped_alignments, [['Yes', true],['No', false]] %>
|
51
51
|
</td>
|
52
52
|
</tr>
|
53
53
|
<tr>
|
@@ -16,7 +16,7 @@
|
|
16
16
|
<%= n.label :filter, "SEG" %>
|
17
17
|
</td>
|
18
18
|
<td>
|
19
|
-
<%= n.
|
19
|
+
<%= n.select :filter, [['Yes', true],['No', false]] %>
|
20
20
|
</td>
|
21
21
|
</tr>
|
22
22
|
<tr>
|
@@ -37,17 +37,17 @@
|
|
37
37
|
</tr>
|
38
38
|
<tr>
|
39
39
|
<td>
|
40
|
-
<%= n.label :
|
40
|
+
<%= n.label :max_target_seqs, "Max target sequences" %>
|
41
41
|
</td>
|
42
42
|
<td>
|
43
|
-
<%= n.text_field :
|
43
|
+
<%= n.text_field :max_target_seqs, :size => 15, :title => "25",
|
44
44
|
:class => "auto-hint" %>
|
45
45
|
</td>
|
46
46
|
<td>
|
47
47
|
<%= n.label :gapped_alignments %>
|
48
48
|
</td>
|
49
49
|
<td>
|
50
|
-
<%= n.select :gapped_alignments, [['
|
50
|
+
<%= n.select :gapped_alignments, [['Yes', true],['No', false]] %>
|
51
51
|
</td>
|
52
52
|
</tr>
|
53
53
|
<tr>
|
@@ -2,19 +2,8 @@
|
|
2
2
|
<script type="text/template" id="detailed_report_template">
|
3
3
|
<h3>Query Accession {{= query }}</h3>
|
4
4
|
{{ _.each(data, function(v) { }}
|
5
|
-
|
6
|
-
|
7
|
-
{{ var midline = v.midline }}
|
8
|
-
{{ var hseq = v.hseq }}
|
9
|
-
{{ var q_from = v.query_from }}
|
10
|
-
{{ var q_to = v.query_to }}
|
11
|
-
{{ var h_from = v.hit_from }}
|
12
|
-
{{ var h_to = v.hit_to }}
|
13
|
-
{{ var qstrand = v.query_frame }}
|
14
|
-
{{ var hstrand = v.hit_frame }}
|
15
|
-
{{ var hsp_group = v.hsp_group }}
|
16
|
-
<div id="{{= id }}">
|
17
|
-
<p class="small">{{= QUORUM.displayHspLinks(id, hsp_group, data) }}</p>
|
5
|
+
<div id="{{= v.id }}">
|
6
|
+
<p class="small">{{= QUORUM.displayHspLinks(v.id, v.hsp_group, data) }}</p>
|
18
7
|
<p class="small">Hit Accession: {{= v.hit_display_id }}</p>
|
19
8
|
<p class="small">Hit Description: {{= v.hit_def }}</p>
|
20
9
|
<table class="report_details">
|
@@ -25,7 +14,7 @@
|
|
25
14
|
</tr>
|
26
15
|
<tr>
|
27
16
|
<td>Alignment Length: {{= v.align_len }}</td>
|
28
|
-
<td>Qstrand / Hstrand: {{= QUORUM.formatStrand(
|
17
|
+
<td>Qstrand / Hstrand: {{= QUORUM.formatStrand(v.query_frame, v.hit_frame) }}</td>
|
29
18
|
<td></td>
|
30
19
|
</tr>
|
31
20
|
<tr>
|
@@ -40,12 +29,12 @@
|
|
40
29
|
</tr>
|
41
30
|
</table>
|
42
31
|
<p class="small">
|
43
|
-
<a id="download_sequence_{{= id }}"
|
44
|
-
onclick="QUORUM.downloadSequence({{= id }}, '{{= algo }}', this)">
|
32
|
+
<a id="download_sequence_{{= v.id }}"
|
33
|
+
onclick="QUORUM.downloadSequence({{= v.id }}, '{{= algo }}', this)">
|
45
34
|
Download Sequence
|
46
35
|
</a>
|
47
36
|
</p>
|
48
|
-
{{= QUORUM.formatSequenceReport(qseq, midline, hseq,
|
37
|
+
{{= QUORUM.formatSequenceReport(v.qseq, v.midline, v.hseq, v.query_from, v.query_to, v.hit_from, v.hit_to, algo) }}
|
49
38
|
</div>
|
50
39
|
<hr />
|
51
40
|
{{ }); }}
|
@@ -0,0 +1,15 @@
|
|
1
|
+
class RenameMaxScoreColumn < ActiveRecord::Migration
|
2
|
+
def up
|
3
|
+
rename_column :quorum_blastn_jobs, :max_score, :max_target_seqs
|
4
|
+
rename_column :quorum_blastp_jobs, :max_score, :max_target_seqs
|
5
|
+
rename_column :quorum_blastx_jobs, :max_score, :max_target_seqs
|
6
|
+
rename_column :quorum_tblastn_jobs, :max_score, :max_target_seqs
|
7
|
+
end
|
8
|
+
|
9
|
+
def down
|
10
|
+
rename_column :quorum_blastn_jobs, :max_target_seqs, :max_score
|
11
|
+
rename_column :quorum_blastp_jobs, :max_target_seqs, :max_score
|
12
|
+
rename_column :quorum_blastx_jobs, :max_target_seqs, :max_score
|
13
|
+
rename_column :quorum_tblastn_jobs, :max_target_seqs, :max_score
|
14
|
+
end
|
15
|
+
end
|