tap 0.7.9
Sign up to get free protection for your applications and to get access to all the features.
- data/MIT-LICENSE +21 -0
- data/README +71 -0
- data/Rakefile +117 -0
- data/bin/tap +63 -0
- data/lib/tap.rb +15 -0
- data/lib/tap/app.rb +739 -0
- data/lib/tap/file_task.rb +354 -0
- data/lib/tap/generator.rb +29 -0
- data/lib/tap/generator/generators/config/USAGE +0 -0
- data/lib/tap/generator/generators/config/config_generator.rb +23 -0
- data/lib/tap/generator/generators/config/templates/config.erb +2 -0
- data/lib/tap/generator/generators/file_task/USAGE +0 -0
- data/lib/tap/generator/generators/file_task/file_task_generator.rb +21 -0
- data/lib/tap/generator/generators/file_task/templates/task.erb +27 -0
- data/lib/tap/generator/generators/file_task/templates/test.erb +12 -0
- data/lib/tap/generator/generators/root/USAGE +0 -0
- data/lib/tap/generator/generators/root/root_generator.rb +36 -0
- data/lib/tap/generator/generators/root/templates/Rakefile +48 -0
- data/lib/tap/generator/generators/root/templates/app.yml +19 -0
- data/lib/tap/generator/generators/root/templates/config/process_tap_request.yml +4 -0
- data/lib/tap/generator/generators/root/templates/lib/process_tap_request.rb +26 -0
- data/lib/tap/generator/generators/root/templates/public/images/nav.jpg +0 -0
- data/lib/tap/generator/generators/root/templates/public/stylesheets/color.css +57 -0
- data/lib/tap/generator/generators/root/templates/public/stylesheets/layout.css +108 -0
- data/lib/tap/generator/generators/root/templates/public/stylesheets/normalize.css +40 -0
- data/lib/tap/generator/generators/root/templates/public/stylesheets/typography.css +21 -0
- data/lib/tap/generator/generators/root/templates/server/config/environment.rb +60 -0
- data/lib/tap/generator/generators/root/templates/server/lib/tasks/clear_database_prerequisites.rake +5 -0
- data/lib/tap/generator/generators/root/templates/server/test/test_helper.rb +53 -0
- data/lib/tap/generator/generators/root/templates/test/tap_test_helper.rb +3 -0
- data/lib/tap/generator/generators/root/templates/test/tap_test_suite.rb +4 -0
- data/lib/tap/generator/generators/task/USAGE +0 -0
- data/lib/tap/generator/generators/task/task_generator.rb +21 -0
- data/lib/tap/generator/generators/task/templates/task.erb +21 -0
- data/lib/tap/generator/generators/task/templates/test.erb +29 -0
- data/lib/tap/generator/generators/workflow/USAGE +0 -0
- data/lib/tap/generator/generators/workflow/templates/task.erb +16 -0
- data/lib/tap/generator/generators/workflow/templates/test.erb +7 -0
- data/lib/tap/generator/generators/workflow/workflow_generator.rb +21 -0
- data/lib/tap/generator/options.rb +26 -0
- data/lib/tap/generator/usage.rb +26 -0
- data/lib/tap/root.rb +275 -0
- data/lib/tap/script/console.rb +7 -0
- data/lib/tap/script/destroy.rb +8 -0
- data/lib/tap/script/generate.rb +8 -0
- data/lib/tap/script/run.rb +111 -0
- data/lib/tap/script/server.rb +12 -0
- data/lib/tap/support/audit.rb +415 -0
- data/lib/tap/support/batch_queue.rb +165 -0
- data/lib/tap/support/combinator.rb +114 -0
- data/lib/tap/support/logger.rb +91 -0
- data/lib/tap/support/rap.rb +38 -0
- data/lib/tap/support/run_error.rb +20 -0
- data/lib/tap/support/template.rb +81 -0
- data/lib/tap/support/templater.rb +155 -0
- data/lib/tap/support/versions.rb +63 -0
- data/lib/tap/task.rb +448 -0
- data/lib/tap/test.rb +320 -0
- data/lib/tap/test/env_vars.rb +16 -0
- data/lib/tap/test/inference_methods.rb +298 -0
- data/lib/tap/test/subset_methods.rb +260 -0
- data/lib/tap/version.rb +3 -0
- data/lib/tap/workflow.rb +73 -0
- data/test/app/config/addition_template.yml +6 -0
- data/test/app/config/batch.yml +2 -0
- data/test/app/config/empty.yml +0 -0
- data/test/app/config/erb.yml +1 -0
- data/test/app/config/template.yml +6 -0
- data/test/app/config/version-0.1.yml +1 -0
- data/test/app/config/version.yml +1 -0
- data/test/app/lib/app_test_task.rb +2 -0
- data/test/app_class_test.rb +33 -0
- data/test/app_test.rb +1372 -0
- data/test/file_task/config/batch.yml +2 -0
- data/test/file_task/config/configured.yml +1 -0
- data/test/file_task/old_file_one.txt +0 -0
- data/test/file_task/old_file_two.txt +0 -0
- data/test/file_task_test.rb +1041 -0
- data/test/root/alt_lib/alt_module.rb +4 -0
- data/test/root/lib/absolute_alt_filepath.rb +2 -0
- data/test/root/lib/alternative_filepath.rb +2 -0
- data/test/root/lib/another_module.rb +2 -0
- data/test/root/lib/nested/some_module.rb +4 -0
- data/test/root/lib/no_module_included.rb +0 -0
- data/test/root/lib/some/module.rb +4 -0
- data/test/root/lib/some_class.rb +2 -0
- data/test/root/lib/some_module.rb +3 -0
- data/test/root/load_path/load_path_module.rb +2 -0
- data/test/root/load_path/skip_module.rb +2 -0
- data/test/root/mtime/older.txt +0 -0
- data/test/root/unload/full_path.rb +2 -0
- data/test/root/unload/loaded_by_nested.rb +2 -0
- data/test/root/unload/nested/nested_load.rb +6 -0
- data/test/root/unload/nested/nested_with_ext.rb +4 -0
- data/test/root/unload/nested/relative_path.rb +4 -0
- data/test/root/unload/older.rb +2 -0
- data/test/root/unload/unload_base.rb +9 -0
- data/test/root/versions/another.yml +0 -0
- data/test/root/versions/file-0.1.2.yml +0 -0
- data/test/root/versions/file-0.1.yml +0 -0
- data/test/root/versions/file.yml +0 -0
- data/test/root_test.rb +483 -0
- data/test/support/audit_test.rb +449 -0
- data/test/support/batch_queue_test.rb +320 -0
- data/test/support/combinator_test.rb +249 -0
- data/test/support/logger_test.rb +31 -0
- data/test/support/template_test.rb +122 -0
- data/test/support/templater/erb.txt +2 -0
- data/test/support/templater/erb.yml +2 -0
- data/test/support/templater/somefile.txt +2 -0
- data/test/support/templater_test.rb +192 -0
- data/test/support/versions_test.rb +71 -0
- data/test/tap_test_helper.rb +4 -0
- data/test/tap_test_suite.rb +4 -0
- data/test/task/config/batch.yml +2 -0
- data/test/task/config/batched.yml +2 -0
- data/test/task/config/configured.yml +1 -0
- data/test/task/config/example.yml +1 -0
- data/test/task/config/overriding.yml +2 -0
- data/test/task/config/task_with_config.yml +1 -0
- data/test/task/config/template.yml +4 -0
- data/test/task_class_test.rb +118 -0
- data/test/task_execute_test.rb +233 -0
- data/test/task_test.rb +424 -0
- data/test/test/inference_methods/test_assert_expected/expected/file.txt +1 -0
- data/test/test/inference_methods/test_assert_expected/expected/folder/file.txt +1 -0
- data/test/test/inference_methods/test_assert_expected/input/file.txt +1 -0
- data/test/test/inference_methods/test_assert_expected/input/folder/file.txt +1 -0
- data/test/test/inference_methods/test_assert_files_exist/input/input_1.txt +0 -0
- data/test/test/inference_methods/test_assert_files_exist/input/input_2.txt +0 -0
- data/test/test/inference_methods/test_file_compare/expected/output_1.txt +3 -0
- data/test/test/inference_methods/test_file_compare/expected/output_2.txt +1 -0
- data/test/test/inference_methods/test_file_compare/input/input_1.txt +3 -0
- data/test/test/inference_methods/test_file_compare/input/input_2.txt +3 -0
- data/test/test/inference_methods/test_infer_glob/expected/file.yml +0 -0
- data/test/test/inference_methods/test_infer_glob/expected/file_1.txt +0 -0
- data/test/test/inference_methods/test_infer_glob/expected/file_2.txt +0 -0
- data/test/test/inference_methods/test_yml_compare/expected/output_1.yml +6 -0
- data/test/test/inference_methods/test_yml_compare/expected/output_2.yml +6 -0
- data/test/test/inference_methods/test_yml_compare/input/input_1.yml +4 -0
- data/test/test/inference_methods/test_yml_compare/input/input_2.yml +4 -0
- data/test/test/inference_methods_test.rb +311 -0
- data/test/test/subset_methods_test.rb +115 -0
- data/test/test_test.rb +233 -0
- data/test/workflow_test.rb +108 -0
- metadata +274 -0
@@ -0,0 +1,12 @@
|
|
1
|
+
require File.join(File.dirname(__FILE__), '<%= '../' * class_nesting_depth %>tap_test_helper.rb')
|
2
|
+
require '<%= class_path.empty? ? file_name : File.join(class_path, file_name) %>'
|
3
|
+
|
4
|
+
class <%= class_name %>Test < Test::Unit::TestCase
|
5
|
+
acts_as_tap_test
|
6
|
+
|
7
|
+
def test_<%= file_name.underscore %>
|
8
|
+
t = <%= class_name %>.new
|
9
|
+
file_task_test(t, :quiet => true)
|
10
|
+
end
|
11
|
+
|
12
|
+
end
|
File without changes
|
@@ -0,0 +1,36 @@
|
|
1
|
+
require 'tap/root'
|
2
|
+
|
3
|
+
module Tap::Generator::Generators
|
4
|
+
class RootGenerator < Rails::Generator::NamedBase # :nodoc:
|
5
|
+
def initialize(*args)
|
6
|
+
super(*args)
|
7
|
+
Tap::App.instance.root = File.join(Tap::App.instance[:root], class_path, file_name)
|
8
|
+
@destination_root = Tap::App.instance[:root]
|
9
|
+
end
|
10
|
+
|
11
|
+
def manifest
|
12
|
+
record do |m|
|
13
|
+
# directories
|
14
|
+
m.directory "lib"
|
15
|
+
m.directory "config"
|
16
|
+
m.directory "test"
|
17
|
+
m.directory "public"
|
18
|
+
m.directory "public/images"
|
19
|
+
m.directory "public/stylesheets"
|
20
|
+
m.directory "gemspecs"
|
21
|
+
m.directory "server/config"
|
22
|
+
m.directory "server/test"
|
23
|
+
m.directory "server/lib/tasks"
|
24
|
+
|
25
|
+
# files
|
26
|
+
template_dir = File.dirname(__FILE__) + "/templates"
|
27
|
+
Dir.glob(template_dir + "/**/*").each do |fname|
|
28
|
+
next if File.directory?(fname)
|
29
|
+
|
30
|
+
fname = Tap::Root.relative_filepath(template_dir, fname)
|
31
|
+
m.file fname, fname
|
32
|
+
end
|
33
|
+
end
|
34
|
+
end
|
35
|
+
end
|
36
|
+
end
|
@@ -0,0 +1,48 @@
|
|
1
|
+
require 'rake'
|
2
|
+
require 'rake/testtask'
|
3
|
+
require 'rake/rdoctask'
|
4
|
+
require 'rake/gempackagetask'
|
5
|
+
|
6
|
+
# tasks
|
7
|
+
desc 'Default: Run tests.'
|
8
|
+
task :default => :test
|
9
|
+
|
10
|
+
desc 'Run tests.'
|
11
|
+
Rake::TestTask.new(:test) do |t|
|
12
|
+
t.libs << 'lib'
|
13
|
+
t.pattern = File.join('test', ENV['subset'] || '', ENV['pattern'] || '**/*_test.rb')
|
14
|
+
t.verbose = true
|
15
|
+
end
|
16
|
+
|
17
|
+
desc 'Generate documentation.'
|
18
|
+
Rake::RDocTask.new(:rdoc) do |rdoc|
|
19
|
+
rdoc.rdoc_dir = 'rdoc'
|
20
|
+
rdoc.title = 'Local' # should be changed
|
21
|
+
rdoc.options << '--line-numbers' << '--inline-source'
|
22
|
+
rdoc.rdoc_files.include('README')
|
23
|
+
rdoc.rdoc_files.include('lib/**/*.rb')
|
24
|
+
end
|
25
|
+
|
26
|
+
#
|
27
|
+
# Gem specification
|
28
|
+
#
|
29
|
+
spec = Gem::Specification.new do |s|
|
30
|
+
#s.name = "gemname"
|
31
|
+
s.version = "0.0.1"
|
32
|
+
#s.author = "Your Name Here"
|
33
|
+
#s.email = "your.email@pubfactory.edu"
|
34
|
+
#s.homepage = "http://rubyforge.org/projects/gemname/"
|
35
|
+
s.platform = Gem::Platform::RUBY
|
36
|
+
#s.summary = "Description"
|
37
|
+
s.files = Dir.glob("{test,lib,docs}/**/*")
|
38
|
+
s.require_path = "lib"
|
39
|
+
s.test_file = "test/tap_test_suite.rb" # should be changed
|
40
|
+
|
41
|
+
s.has_rdoc = true
|
42
|
+
s.extra_rdoc_files = ["README"]
|
43
|
+
s.add_dependency("tap", ">= 0.1.0")
|
44
|
+
end
|
45
|
+
|
46
|
+
Rake::GemPackageTask.new(spec) do |pkg|
|
47
|
+
pkg.need_tar = true
|
48
|
+
end
|
@@ -0,0 +1,19 @@
|
|
1
|
+
# Put your app configurations here:
|
2
|
+
|
3
|
+
#root: #
|
4
|
+
#directories: # uncomment to specify aliases for directories
|
5
|
+
#lib:
|
6
|
+
#log:
|
7
|
+
#...
|
8
|
+
|
9
|
+
#options: # uncomment to specify options
|
10
|
+
#trace: true # full error output, increased logging
|
11
|
+
#quiet: true # supresses logging
|
12
|
+
#... # you can add your own options
|
13
|
+
|
14
|
+
logger:
|
15
|
+
#device: # STDOUT by default
|
16
|
+
#level: 1 # [DEBUG, INFO, WARN, ERROR, FATAL, ANY]
|
17
|
+
datetime_format: %H:%M:%S # Hour:Minute:Second
|
18
|
+
|
19
|
+
loadable: 'lib'
|
@@ -0,0 +1,26 @@
|
|
1
|
+
require 'net/http'
|
2
|
+
require 'cgi'
|
3
|
+
require 'yaml'
|
4
|
+
|
5
|
+
class ProcessTapRequest < Tap::Task
|
6
|
+
def process(input)
|
7
|
+
id = input['id']
|
8
|
+
key = input['key']
|
9
|
+
|
10
|
+
url = URI.parse(config[:remote_url])
|
11
|
+
res = Net::HTTP.start(url.host, url.port) do |http|
|
12
|
+
http.get("/tap/queue/#{id}?key=#{key}")
|
13
|
+
end
|
14
|
+
|
15
|
+
unless res.kind_of?(Net::HTTPSuccess)
|
16
|
+
puts res.body
|
17
|
+
return
|
18
|
+
end
|
19
|
+
|
20
|
+
queue = YAML.load(res.body)
|
21
|
+
task = queue['task']
|
22
|
+
input = queue['input']
|
23
|
+
|
24
|
+
Tap::App.run(task, *input)
|
25
|
+
end
|
26
|
+
end
|
Binary file
|
@@ -0,0 +1,57 @@
|
|
1
|
+
/* Color scheme
|
2
|
+
|
3
|
+
off_white background: #f1f8ee;
|
4
|
+
light background: #DCE6CF;
|
5
|
+
dark background: #648F7D;
|
6
|
+
|
7
|
+
content text: black
|
8
|
+
red text: #8a181d;
|
9
|
+
identifiers: #708059;
|
10
|
+
|
11
|
+
muted:
|
12
|
+
links _ color: #805976;
|
13
|
+
hover _ color: #CC0099;
|
14
|
+
|
15
|
+
bold:
|
16
|
+
links _ color: #0000FF;
|
17
|
+
hover _ color: #800080;
|
18
|
+
|
19
|
+
light contrast (notifications and links): #708059;
|
20
|
+
strong contrast (notifications and hover): #CC0099;
|
21
|
+
|
22
|
+
*/
|
23
|
+
|
24
|
+
body {
|
25
|
+
color: black;
|
26
|
+
background-color: #DCE6CF;
|
27
|
+
}
|
28
|
+
|
29
|
+
a { color: #8a181d; }
|
30
|
+
a:hover{ color: #800080;}
|
31
|
+
|
32
|
+
a.muted { color: #805976; }
|
33
|
+
a.muted:hover{ color: #CC0099; }
|
34
|
+
|
35
|
+
.highlight {color: #FF0000;}
|
36
|
+
|
37
|
+
#flash { color: #99BF60; }
|
38
|
+
|
39
|
+
/* Branding */
|
40
|
+
div#brandingLogo {
|
41
|
+
color: #f1f8ee;
|
42
|
+
}
|
43
|
+
|
44
|
+
/* Navigation */
|
45
|
+
div#navMain ul li {
|
46
|
+
background-color: #B4CC8F;
|
47
|
+
border-top-color: #805976;
|
48
|
+
border-right-color: #805976;
|
49
|
+
}
|
50
|
+
div#navSupp ul li {
|
51
|
+
background-color: #B4CC8F;
|
52
|
+
border-top-color: #805976;
|
53
|
+
border-left-color: #805976;
|
54
|
+
}
|
55
|
+
div#navControl a {
|
56
|
+
color: #f1f8ee;
|
57
|
+
}
|
@@ -0,0 +1,108 @@
|
|
1
|
+
@import url(normalize.css);
|
2
|
+
@import url(color.css);
|
3
|
+
@import url(typography.css);
|
4
|
+
|
5
|
+
body {
|
6
|
+
margin: 0;
|
7
|
+
padding: 0;
|
8
|
+
width: 100%;
|
9
|
+
}
|
10
|
+
|
11
|
+
div#branding, div#nav, div#content {
|
12
|
+
position: relative;
|
13
|
+
min-width: 50em;
|
14
|
+
width: 100%;
|
15
|
+
}
|
16
|
+
|
17
|
+
/* Branding */
|
18
|
+
div#branding {
|
19
|
+
position: absolute;
|
20
|
+
z-index: 10; /* sets the branding above the nav background */
|
21
|
+
}
|
22
|
+
div#brandingLogo {
|
23
|
+
position: absolute;
|
24
|
+
top: .5em;
|
25
|
+
left: .5em;
|
26
|
+
}
|
27
|
+
|
28
|
+
/* Navigation */
|
29
|
+
div#nav {
|
30
|
+
top: 0;
|
31
|
+
left: 0;
|
32
|
+
height: 6em;
|
33
|
+
background-image: url(../images/nav.jpg);
|
34
|
+
background-repeat: no-repeat;
|
35
|
+
background-position: center top;
|
36
|
+
}
|
37
|
+
|
38
|
+
/* Control Navigation */
|
39
|
+
div#navControl {
|
40
|
+
position: absolute;
|
41
|
+
top: 0;
|
42
|
+
right: 0;
|
43
|
+
}
|
44
|
+
|
45
|
+
/* Main and Supp Navigation */
|
46
|
+
div#navMain, div#navSupp {
|
47
|
+
position: absolute;
|
48
|
+
bottom: 0;
|
49
|
+
}
|
50
|
+
div#navMain {
|
51
|
+
left:0;
|
52
|
+
}
|
53
|
+
div#navSupp {
|
54
|
+
right: 0;
|
55
|
+
}
|
56
|
+
|
57
|
+
div#nav ul li {
|
58
|
+
float: left;
|
59
|
+
padding-left: .5em;
|
60
|
+
padding-right: .5em;
|
61
|
+
}
|
62
|
+
div#navMain ul li {
|
63
|
+
border-top-style: solid;
|
64
|
+
border-top-width: 1px;
|
65
|
+
border-right-style: solid;
|
66
|
+
border-right-width: 1px;
|
67
|
+
}
|
68
|
+
div#navSupp ul li {
|
69
|
+
border-top-style: solid;
|
70
|
+
border-top-width: 1px;
|
71
|
+
border-left-style: solid;
|
72
|
+
border-left-width: 1px;
|
73
|
+
}
|
74
|
+
|
75
|
+
/* Misc Navigation - these are intended for contentSupp */
|
76
|
+
.navMisc {
|
77
|
+
padding-top: 1em;
|
78
|
+
padding-left: 3em;
|
79
|
+
padding-right: 1em;
|
80
|
+
}
|
81
|
+
.navMisc ul {
|
82
|
+
padding-left: 1em;
|
83
|
+
}
|
84
|
+
|
85
|
+
/* Content */
|
86
|
+
div#contentMain {
|
87
|
+
left: 0;
|
88
|
+
width: 75%;
|
89
|
+
}
|
90
|
+
div#contentSupp {
|
91
|
+
left: 75%;
|
92
|
+
width: 25%;
|
93
|
+
}
|
94
|
+
|
95
|
+
/* Inman clearing */
|
96
|
+
.pc,.sc {position:absolute; top:0;}
|
97
|
+
.clear_children,.cc_tallest { position: relative; } /**/* html .clear_children { display: inline;}/* PREVENTS MISSING CHILDREN IN IE WIN 5.0 */
|
98
|
+
.cc_tallest:after { content: ''; } /* PREVENTS A REDRAW BUG IN SAFARI */
|
99
|
+
|
100
|
+
/* Site Infor */
|
101
|
+
div#siteInfo {
|
102
|
+
text-align:center;
|
103
|
+
width: 75%;
|
104
|
+
min-width: 37.5em;
|
105
|
+
}
|
106
|
+
div#siteInfo p {
|
107
|
+
display: inline;
|
108
|
+
}
|
@@ -0,0 +1,40 @@
|
|
1
|
+
/* normalize.css */
|
2
|
+
/* Based the normalizations presented in Transcending CSS - Andy Clarke 2007
|
3
|
+
* and undohtml.css file by Tantek Celik 2004
|
4
|
+
* http://tantek.com/log/2004/undohtml.css */
|
5
|
+
|
6
|
+
/* Normalize margin, padding */
|
7
|
+
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,p,blockquote,th,td
|
8
|
+
{ margin: 0; padding: 0 }
|
9
|
+
|
10
|
+
/* Normalize font-size for headers */
|
11
|
+
h1,h2,h3,h4,h5,h6
|
12
|
+
{ font-size: 100% }
|
13
|
+
|
14
|
+
/* Removes list-style from lists */
|
15
|
+
ul,ol
|
16
|
+
{ list-style: none }
|
17
|
+
|
18
|
+
/* Normalize font-style and font-weight to normal */
|
19
|
+
address,caption,cite,code,dfn,em,strong,th,var
|
20
|
+
{ font-style: normal; font-weight: normal;}
|
21
|
+
|
22
|
+
/* Normalizes table style*/
|
23
|
+
table
|
24
|
+
{ border-collapse: collapse; border-spacing: 0;}
|
25
|
+
|
26
|
+
/* Remove border from fieldset and img */
|
27
|
+
fieldset,img
|
28
|
+
{ border: 0;}
|
29
|
+
|
30
|
+
/* Left-align text in caption and th */
|
31
|
+
caption,th
|
32
|
+
{ text-align: left;}
|
33
|
+
|
34
|
+
/* Remove quotation marks from q */
|
35
|
+
q:before,q:after
|
36
|
+
{ content:'';}
|
37
|
+
|
38
|
+
/* link underlines tend to make hypertext less readable,
|
39
|
+
because underlines obscure the shapes of the lower halves of words */
|
40
|
+
a:link,a:visited { text-decoration:none }
|
@@ -0,0 +1,21 @@
|
|
1
|
+
|
2
|
+
body {
|
3
|
+
font-family: trebuchet ms, verdana, arial, tahoma;
|
4
|
+
font-size: 100%; /* can't remember why, but for an IE bug this was included */
|
5
|
+
}
|
6
|
+
|
7
|
+
.emphasize {font-weight: bold;}
|
8
|
+
|
9
|
+
/* Branding */
|
10
|
+
div#brandingLogo {
|
11
|
+
font-size: 2em;
|
12
|
+
}
|
13
|
+
|
14
|
+
|
15
|
+
/* Navigation */
|
16
|
+
div#navMain, div#navSupp {
|
17
|
+
font-weight: bold;
|
18
|
+
}
|
19
|
+
div#navControl {
|
20
|
+
font-size: 0.8em;
|
21
|
+
}
|
@@ -0,0 +1,60 @@
|
|
1
|
+
# Be sure to restart your web server when you modify this file.
|
2
|
+
|
3
|
+
# Uncomment below to force Rails into production mode when
|
4
|
+
# you don't control web/app server and can't set it the proper way
|
5
|
+
# ENV['RAILS_ENV'] ||= 'production'
|
6
|
+
|
7
|
+
# Specifies gem version of Rails to use when vendor/rails is not present
|
8
|
+
RAILS_GEM_VERSION = '1.2.3' unless defined? RAILS_GEM_VERSION
|
9
|
+
|
10
|
+
# Bootstrap the Rails environment, frameworks, and default configuration
|
11
|
+
require File.join(File.dirname(__FILE__), 'boot')
|
12
|
+
|
13
|
+
Rails::Initializer.run do |config|
|
14
|
+
# Settings in config/environments/* take precedence over those specified here
|
15
|
+
|
16
|
+
# Skip frameworks you're not going to use (only works if using vendor/rails)
|
17
|
+
config.frameworks -= [ :action_web_service, :action_mailer ]
|
18
|
+
|
19
|
+
# Only load the plugins named here, by default all plugins in vendor/plugins are loaded
|
20
|
+
# config.plugins = %W( exception_notification ssl_requirement )
|
21
|
+
|
22
|
+
# Add additional load paths for your own custom dirs
|
23
|
+
# config.load_paths += %W( #{RAILS_ROOT}/extras )
|
24
|
+
|
25
|
+
# Force all environments to use the same logger level
|
26
|
+
# (by default production uses :info, the others :debug)
|
27
|
+
# config.log_level = :debug
|
28
|
+
|
29
|
+
# Use the database for sessions instead of the file system
|
30
|
+
# (create the session table with 'rake db:sessions:create')
|
31
|
+
# config.action_controller.session_store = :active_record_store
|
32
|
+
|
33
|
+
# Use SQL instead of Active Record's schema dumper when creating the test database.
|
34
|
+
# This is necessary if your schema can't be completely dumped by the schema dumper,
|
35
|
+
# like if you have constraints or database-specific column types
|
36
|
+
# config.active_record.schema_format = :sql
|
37
|
+
|
38
|
+
# Activate observers that should always be running
|
39
|
+
# config.active_record.observers = :cacher, :garbage_collector
|
40
|
+
|
41
|
+
# Make Active Record use UTC-base instead of local time
|
42
|
+
# config.active_record.default_timezone = :utc
|
43
|
+
|
44
|
+
# See Rails::Configuration for more options
|
45
|
+
end
|
46
|
+
|
47
|
+
# Add new inflection rules using the following format
|
48
|
+
# (all these examples are active by default):
|
49
|
+
# Inflector.inflections do |inflect|
|
50
|
+
# inflect.plural /^(ox)$/i, '\1en'
|
51
|
+
# inflect.singular /^(ox)en/i, '\1'
|
52
|
+
# inflect.irregular 'person', 'people'
|
53
|
+
# inflect.uncountable %w( fish sheep )
|
54
|
+
# end
|
55
|
+
|
56
|
+
# Add new mime types for use in respond_to blocks:
|
57
|
+
# Mime::Type.register "text/richtext", :rtf
|
58
|
+
# Mime::Type.register "application/x-mobile", :mobile
|
59
|
+
|
60
|
+
# Include your application configuration below
|