foodcritic 10.4.1 → 11.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (90) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +26 -1
  3. data/Rakefile +7 -1
  4. data/features/step_definitions/cookbook_steps.rb +0 -96
  5. data/lib/foodcritic/api.rb +77 -79
  6. data/lib/foodcritic/rules/fc008.rb +2 -2
  7. data/lib/foodcritic/rules/fc029.rb +1 -1
  8. data/lib/foodcritic/rules/fc042.rb +1 -1
  9. data/lib/foodcritic/rules/fc052.rb +1 -1
  10. data/lib/foodcritic/rules/fc053.rb +1 -1
  11. data/lib/foodcritic/rules/fc057.rb +1 -1
  12. data/lib/foodcritic/rules/fc058.rb +1 -1
  13. data/lib/foodcritic/rules/fc060.rb +1 -1
  14. data/lib/foodcritic/rules/fc061.rb +3 -3
  15. data/lib/foodcritic/rules/fc063.rb +1 -2
  16. data/lib/foodcritic/rules/fc069.rb +2 -4
  17. data/lib/foodcritic/rules/fc078.rb +2 -3
  18. data/lib/foodcritic/rules/fc079.rb +6 -0
  19. data/lib/foodcritic/rules/fc080.rb +6 -0
  20. data/lib/foodcritic/rules/fc081.rb +6 -0
  21. data/lib/foodcritic/rules/fc082.rb +9 -0
  22. data/lib/foodcritic/rules/fc083.rb +6 -0
  23. data/lib/foodcritic/rules/fc084.rb +9 -0
  24. data/lib/foodcritic/rules/fc085.rb +12 -0
  25. data/lib/foodcritic/version.rb +1 -1
  26. data/spec/functional/fc007_spec.rb +127 -0
  27. data/spec/functional/fc049_spec.rb +56 -0
  28. data/spec/functional/fc050_spec.rb +85 -0
  29. data/spec/functional/fc066_spec.rb +20 -0
  30. data/spec/functional/fc069_spec.rb +15 -0
  31. data/spec/functional/fc070_spec.rb +9 -0
  32. data/spec/functional/fc076_spec.rb +2 -2
  33. data/spec/functional/fc077_spec.rb +2 -2
  34. data/spec/functional/fc078_spec.rb +14 -4
  35. data/spec/functional/fc079_spec.rb +21 -0
  36. data/spec/functional/fc080_spec.rb +68 -0
  37. data/spec/functional/fc081_spec.rb +25 -0
  38. data/spec/functional/fc082_spec.rb +23 -0
  39. data/spec/functional/fc083_spec.rb +34 -0
  40. data/spec/functional/fc084_spec.rb +49 -0
  41. data/spec/functional/fc085_spec.rb +58 -0
  42. data/spec/regression/expected/aix.txt +1 -0
  43. data/spec/regression/expected/aws.txt +3 -0
  44. data/spec/regression/expected/chef-client.txt +2 -0
  45. data/spec/regression/expected/chef.txt +67 -0
  46. data/spec/regression/expected/database.txt +1 -0
  47. data/spec/regression/expected/drbd.txt +1 -0
  48. data/spec/regression/expected/jetty.txt +1 -0
  49. data/spec/regression/expected/mysql.txt +4 -0
  50. data/spec/regression/expected/openssh.txt +1 -0
  51. data/spec/regression/expected/postfix.txt +1 -0
  52. data/spec/regression/expected/rsyslog.txt +1 -0
  53. data/spec/regression/expected/smokeping.txt +1 -0
  54. data/spec/regression/expected/sql_server.txt +1 -0
  55. data/spec/regression/expected/ufw.txt +1 -0
  56. data/spec/regression/expected/users.txt +2 -0
  57. data/spec/regression/expected/xml.txt +1 -0
  58. data/spec/regression/expected/yum.txt +0 -1
  59. data/spec/regression/regression_spec.rb +2 -2
  60. data/spec/unit/api_spec.rb +130 -149
  61. metadata +20 -32
  62. data/features/007_check_for_undeclared_recipe_dependencies.feature +0 -59
  63. data/features/049_check_for_role_name_mismatch_with_file_name.feature +0 -31
  64. data/features/050_check_for_invalid_name.feature +0 -33
  65. data/man/foodcritic.1 +0 -81
  66. data/spec/foodcritic/coverage/assets/0.10.0/application.css +0 -799
  67. data/spec/foodcritic/coverage/assets/0.10.0/application.js +0 -1707
  68. data/spec/foodcritic/coverage/assets/0.10.0/colorbox/border.png +0 -0
  69. data/spec/foodcritic/coverage/assets/0.10.0/colorbox/controls.png +0 -0
  70. data/spec/foodcritic/coverage/assets/0.10.0/colorbox/loading.gif +0 -0
  71. data/spec/foodcritic/coverage/assets/0.10.0/colorbox/loading_background.png +0 -0
  72. data/spec/foodcritic/coverage/assets/0.10.0/favicon_green.png +0 -0
  73. data/spec/foodcritic/coverage/assets/0.10.0/favicon_red.png +0 -0
  74. data/spec/foodcritic/coverage/assets/0.10.0/favicon_yellow.png +0 -0
  75. data/spec/foodcritic/coverage/assets/0.10.0/loading.gif +0 -0
  76. data/spec/foodcritic/coverage/assets/0.10.0/magnify.png +0 -0
  77. data/spec/foodcritic/coverage/assets/0.10.0/smoothness/images/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
  78. data/spec/foodcritic/coverage/assets/0.10.0/smoothness/images/ui-bg_flat_75_ffffff_40x100.png +0 -0
  79. data/spec/foodcritic/coverage/assets/0.10.0/smoothness/images/ui-bg_glass_55_fbf9ee_1x400.png +0 -0
  80. data/spec/foodcritic/coverage/assets/0.10.0/smoothness/images/ui-bg_glass_65_ffffff_1x400.png +0 -0
  81. data/spec/foodcritic/coverage/assets/0.10.0/smoothness/images/ui-bg_glass_75_dadada_1x400.png +0 -0
  82. data/spec/foodcritic/coverage/assets/0.10.0/smoothness/images/ui-bg_glass_75_e6e6e6_1x400.png +0 -0
  83. data/spec/foodcritic/coverage/assets/0.10.0/smoothness/images/ui-bg_glass_95_fef1ec_1x400.png +0 -0
  84. data/spec/foodcritic/coverage/assets/0.10.0/smoothness/images/ui-bg_highlight-soft_75_cccccc_1x100.png +0 -0
  85. data/spec/foodcritic/coverage/assets/0.10.0/smoothness/images/ui-icons_222222_256x240.png +0 -0
  86. data/spec/foodcritic/coverage/assets/0.10.0/smoothness/images/ui-icons_2e83ff_256x240.png +0 -0
  87. data/spec/foodcritic/coverage/assets/0.10.0/smoothness/images/ui-icons_454545_256x240.png +0 -0
  88. data/spec/foodcritic/coverage/assets/0.10.0/smoothness/images/ui-icons_888888_256x240.png +0 -0
  89. data/spec/foodcritic/coverage/assets/0.10.0/smoothness/images/ui-icons_cd0a0a_256x240.png +0 -0
  90. data/spec/foodcritic/coverage/index.html +0 -72
@@ -1,59 +0,0 @@
1
- Feature: Check for undeclared recipe dependencies
2
-
3
- In order to prevent failure of my Chef run due to a missing cookbook
4
- As a developer
5
- I want to identify included recipes that are not expressed in cookbook metadata
6
-
7
- Scenario Outline: Cookbook includes undeclared recipe dependency
8
- Given a cookbook recipe that includes an undeclared recipe dependency <qualifiers>
9
- When I check the cookbook
10
- Then the undeclared dependency warning 007 should be displayed
11
- Examples:
12
- | qualifiers |
13
- | |
14
- | with parentheses |
15
- | unscoped |
16
- | unscoped with parentheses |
17
-
18
- Scenario: Cookbook includes recipe via expression
19
- Given a cookbook recipe that includes a recipe name from an expression
20
- When I check the cookbook
21
- Then the undeclared dependency warning 007 should not be displayed
22
-
23
- Scenario Outline: Cookbook includes recipe via expression (embedded)
24
- Given a cookbook recipe that includes a recipe name from an embedded expression <recipe_expression>
25
- When I check the cookbook
26
- Then the undeclared dependency warning 007 should not be displayed
27
- Examples:
28
- | recipe_expression |
29
- | foo::#{node['foo']['fighter']} |
30
- | #{cookbook_name}::other |
31
- | #{cbk}_other::other |
32
-
33
- Scenario Outline: Declared dependencies
34
- Given a cookbook recipe that includes <dependency_type>
35
- When I check the cookbook
36
- Then the undeclared dependency warning 007 should not be displayed
37
- Examples:
38
- | dependency_type |
39
- | a declared recipe dependency |
40
- | a declared recipe dependency unscoped |
41
- | several declared recipe dependencies - block |
42
- | several declared recipe dependencies - brace |
43
- | a local recipe |
44
- | a local recipe where the directory is differently named |
45
-
46
- Scenario: Cookbook includes mix of declared and undeclared recipe dependencies
47
- Given a cookbook recipe that includes both declared and undeclared recipe dependencies
48
- When I check the cookbook
49
- Then the undeclared dependency warning 007 should be displayed only for the undeclared dependencies
50
-
51
- Scenario: Cookbook has no metadata file
52
- Given a cookbook that does not have defined metadata
53
- When I check the cookbook
54
- Then the undeclared dependency warning 007 should not be displayed
55
-
56
- Scenario: Cookbook uses the include_recipe shorthand syntax
57
- Given a cookbook that uses the include_recipe shorthand syntax
58
- When I check the cookbook
59
- Then the undeclared dependency warning 007 should not be displayed
@@ -1,31 +0,0 @@
1
- Feature: Identify roles names that do not match filenames
2
-
3
- In order to avoid confusion
4
- As a developer
5
- I want to identify roles whose names differ from their filename
6
-
7
- Scenario Outline: Illustrates role paths
8
- Given a directory that contains a role file <filename> in <format> that defines role name <role_name>
9
- When I check the role directory as a <path_type> path
10
- Then the role name does not match file name warning 049 <show_warning> be shown
11
- Examples:
12
- | filename | format | role_name | path_type | show_warning |
13
- | webserver.rb | ruby | webserver | role | should not |
14
- | webserver.rb | ruby | apache | role | should |
15
- | webserver.json | json | webserver | role | should not |
16
- | webserver.json | json | apache | role | should not |
17
- | webserver.rb | ruby | webserver | cookbook | should not |
18
- | webserver.rb | ruby | apache | cookbook | should not |
19
- | webserver.rb | ruby | webserver | default | should not |
20
- | webserver.rb | ruby | apache | default | should not |
21
-
22
- Scenario: Role name references variable
23
- Given a directory that contains a ruby role with an expression as its name
24
- When I check the role directory
25
- Then the role name does not match file name warning 049 should not be shown
26
-
27
- Scenario: Multiple role names declared
28
- Given a directory that contains a ruby role that declares the role name more than once
29
- And the last role name declared does not match the containing filename
30
- When I check the role directory
31
- Then the role name does not match file name warning 049 should be shown against the second name
@@ -1,33 +0,0 @@
1
- Feature: Check for invalid names
2
-
3
- In order to identify issues more quickly
4
- As a developer
5
- I want to identify roles or environments whose names are invalid
6
-
7
- Scenario Outline: Role name validity
8
- Given a ruby role file that defines a role with name <role_name>
9
- When I check the role directory
10
- Then the invalid role name warning 050 <show_warning> be shown
11
- Examples:
12
- | role_name | show_warning |
13
- | webserver | should not |
14
- | web_server | should not |
15
- | web-server | should not |
16
- | webserver123 | should not |
17
- | Webserver | should not |
18
- | web server | should |
19
- | webserver% | should |
20
-
21
- Scenario Outline: Environment name validity
22
- Given a ruby environment file that defines an environment with name <environment_name>
23
- When I check the environment directory
24
- Then the invalid environment name warning 050 <show_warning> be shown
25
- Examples:
26
- | environment_name | show_warning |
27
- | production | should not |
28
- | pre_production | should not |
29
- | production-eu | should not |
30
- | production2 | should not |
31
- | Production | should not |
32
- | EU West | should |
33
- | production (eu-west) | should |
data/man/foodcritic.1 DELETED
@@ -1,81 +0,0 @@
1
- .\" generated with Ronn/v0.7.3
2
- .\" http://github.com/rtomayko/ronn/tree/0.7.3
3
- .
4
- .TH "FOODCRITIC" "1" "February 2016" "" ""
5
- .
6
- .SH "NAME"
7
- \fBfoodcritic\fR \- lint tool for chef cookbooks
8
- .
9
- .SH "SYNOPSIS"
10
- \fBfoodcritic\fR [\fIoptions\fR\.\.\.] \fIcookbook\fR\.\.\.
11
- .
12
- .P
13
- \fBfoodcritic\fR [\fIoptions\fR\.\.\.] \-\-list
14
- .
15
- .SH "DESCRIPTION"
16
- \fBfoodcritic\fR makes it easier to flag problems in your Chef cookbooks that will cause Chef to blow up when you attempt to converge\. This is about faster feedback\.
17
- .
18
- .P
19
- Each \fBcookbook\fR path specified will be examined for common problems and poor style\.
20
- .
21
- .SH "OPTIONS"
22
- .
23
- .TP
24
- \fB\-t\fR, \fB\-\-tags\fR \fITAGS\fR
25
- Only check against rules with the specified tags\. Prefix tags with a tilde \fB~\fR to exclude rules\.
26
- .
27
- .TP
28
- \fB\-l\fR, \fB\-\-list\fR
29
- Do not perform a lint check; instead simply list the rules that would be enabled based on the defaults and the rule selection options (\-t, \-I)
30
- .
31
- .TP
32
- \fB\-f\fR, \fB\-\-epic\-fail\fR \fITAGS\fR
33
- Exit non\-zero if any of the specified tags are matched\. Use the pseudo\-tag \fBany\fR to fail if any tag is matched\.
34
- .
35
- .TP
36
- \fB\-c\fR, \fB\-\-chef\-version\fR \fIVERSION\fR
37
- Only check against rules valid for this version of Chef\.
38
- .
39
- .TP
40
- \fB\-B\fR, \fB\-\-cookbook\-path\fR
41
- Cookbook path(s) to check\.
42
- .
43
- .TP
44
- \fB\-C\fR, \fB\-\-\fR[\fBno\-\fR]\fBcontext\fR
45
- Show lines matched against rather than the default summary\.
46
- .
47
- .TP
48
- \fB\-E\fR, \fB\-\-environment\-path\fR
49
- Environment path(s) to check\.
50
- .
51
- .TP
52
- \fB\-I\fR, \fB\-\-include\fR \fIPATH\fR
53
- Additional rule file path(s) to load\.
54
- .
55
- .TP
56
- \fB\-R\fR, \fB\-\-role\-path\fR
57
- Role path(s) to check\.
58
- .
59
- .TP
60
- \fB\-S\fR, \fB\-\-search\-grammar\fR \fIPATH\fR
61
- Specify grammar to use when validating search syntax\. (Default: the grammar of any installed Chef)
62
- .
63
- .TP
64
- \fB\-V\fR, \fB\-\-version\fR
65
- Display the foodcritic version\.
66
- .
67
- .TP
68
- \fB\-X\fR, \fB\-\-exclude\fR \fIPATH\fR
69
- Exclude path(s) from being linted\.
70
- .
71
- .SH "RETURN VALUES"
72
- By default, \fBfoodcritic\fR will always return \fB0\fR\.
73
- .
74
- .P
75
- If \fB\-\-epic\-fail\fR is specified, then \fBfoodcritic\fR will return \fB3\fR if any tags are matched\.
76
- .
77
- .SH "COPYRIGHT"
78
- \fBfoodcritic\fR is Copyright 2011 by Andrew Crump\.
79
- .
80
- .SH "SEE ALSO"
81
- chef(1)
@@ -1,799 +0,0 @@
1
- /* -----------------------------------------------------------------------
2
-
3
-
4
- Blueprint CSS Framework 0.9
5
- http://blueprintcss.org
6
-
7
- * Copyright (c) 2007-Present. See LICENSE for more info.
8
- * See README for instructions on how to use Blueprint.
9
- * For credits and origins, see AUTHORS.
10
- * This is a compressed file. See the sources in the 'src' directory.
11
-
12
- ----------------------------------------------------------------------- */
13
-
14
- /* reset.css */
15
-
16
- html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, code, del, dfn, em, img, q, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, dialog, figure, footer, header, hgroup, nav, section {margin:0;padding:0;border:0;font-weight:inherit;font-style:inherit;font-size:100%;font-family:inherit;vertical-align:baseline;}
17
- article, aside, dialog, figure, footer, header, hgroup, nav, section {display:block;}
18
- body {line-height:1.5;}
19
- table {border-collapse:separate;border-spacing:0;}
20
- caption, th, td {text-align:left;font-weight:normal;}
21
- table, td, th {vertical-align:middle;}
22
- blockquote:before, blockquote:after, q:before, q:after {content:"";}
23
- blockquote, q {quotes:"" "";}
24
- a img {border:none;}
25
-
26
- /* typography.css */
27
- html {font-size:100.01%;}
28
- body {font-size:82%;color:#222;background:#fff;font-family:"Helvetica Neue", Arial, Helvetica, sans-serif;}
29
- h1, h2, h3, h4, h5, h6 {font-weight:normal;color:#111;}
30
- h1 {font-size:3em;line-height:1;margin-bottom:0.5em;}
31
- h2 {font-size:2em;margin-bottom:0.75em;}
32
- h3 {font-size:1.5em;line-height:1;margin-bottom:1em;}
33
- h4 {font-size:1.2em;line-height:1.25;margin-bottom:1.25em;}
34
- h5 {font-size:1em;font-weight:bold;margin-bottom:1.5em;}
35
- h6 {font-size:1em;font-weight:bold;}
36
- h1 img, h2 img, h3 img, h4 img, h5 img, h6 img {margin:0;}
37
- p {margin:0 0 1.5em;}
38
- p img.left {float:left;margin:1.5em 1.5em 1.5em 0;padding:0;}
39
- p img.right {float:right;margin:1.5em 0 1.5em 1.5em;}
40
- a:focus, a:hover {color:#000;}
41
- a {color:#009;text-decoration:underline;}
42
- blockquote {margin:1.5em;color:#666;font-style:italic;}
43
- strong {font-weight:bold;}
44
- em, dfn {font-style:italic;}
45
- dfn {font-weight:bold;}
46
- sup, sub {line-height:0;}
47
- abbr, acronym {border-bottom:1px dotted #666;}
48
- address {margin:0 0 1.5em;font-style:italic;}
49
- del {color:#666;}
50
- pre {margin:1.5em 0;white-space:pre;}
51
- pre, code, tt {font:1em 'andale mono', 'lucida console', monospace;line-height:1.5;}
52
- li ul, li ol {margin:0;}
53
- ul, ol {margin:0 1.5em 1.5em 0;padding-left:3.333em;}
54
- ul {list-style-type:disc;}
55
- ol {list-style-type:decimal;}
56
- dl {margin:0 0 1.5em 0;}
57
- dl dt {font-weight:bold;}
58
- dd {margin-left:1.5em;}
59
- table {margin-bottom:1.4em;width:100%;}
60
- th {font-weight:bold;}
61
- thead th {background:#c3d9ff;}
62
- th, td, caption {padding:4px 10px 4px 5px;}
63
- tr.even td {background:#efefef;}
64
- tfoot {font-style:italic;}
65
- caption {background:#eee;}
66
- .small {font-size:.8em;margin-bottom:1.875em;line-height:1.875em;}
67
- .large {font-size:1.2em;line-height:2.5em;margin-bottom:1.25em;}
68
- .hide {display:none;}
69
- .quiet {color:#666;}
70
- .loud {color:#000;}
71
- .highlight {background:#ff0;}
72
- .added {background:#060;color:#fff;}
73
- .removed {background:#900;color:#fff;}
74
- .first {margin-left:0;padding-left:0;}
75
- .last {margin-right:0;padding-right:0;}
76
- .top {margin-top:0;padding-top:0;}
77
- .bottom {margin-bottom:0;padding-bottom:0;}
78
-
79
- /* forms.css */
80
- label {font-weight:bold;}
81
- fieldset {padding:1.4em;margin:0 0 1.5em 0;border:1px solid #ccc;}
82
- legend {font-weight:bold;font-size:1.2em;}
83
- input[type=text], input[type=password], input.text, input.title, textarea, select {background-color:#fff;border:1px solid #bbb;}
84
- input[type=text]:focus, input[type=password]:focus, input.text:focus, input.title:focus, textarea:focus, select:focus {border-color:#666;}
85
- input[type=text], input[type=password], input.text, input.title, textarea, select {margin:0.5em 0;}
86
- input.text, input.title {width:300px;padding:5px;}
87
- input.title {font-size:1.5em;}
88
- textarea {width:390px;height:250px;padding:5px;}
89
- input[type=checkbox], input[type=radio], input.checkbox, input.radio {position:relative;top:.25em;}
90
- form.inline {line-height:3;}
91
- form.inline p {margin-bottom:0;}
92
- .error, .notice, .success {padding:.8em;margin-bottom:1em;border:2px solid #ddd;}
93
- .error {background:#FBE3E4;color:#8a1f11;border-color:#FBC2C4;}
94
- .notice {background:#FFF6BF;color:#514721;border-color:#FFD324;}
95
- .success {background:#E6EFC2;color:#264409;border-color:#C6D880;}
96
- .error a {color:#8a1f11;}
97
- .notice a {color:#514721;}
98
- .success a {color:#264409;}
99
- .box {padding:1.5em;margin-bottom:1.5em;background:#E5ECF9;}
100
- hr {background:#ddd;color:#ddd;clear:both;float:none;width:100%;height:.1em;margin:0 0 1.45em;border:none;}
101
- hr.space {background:#fff;color:#fff;visibility:hidden;}
102
- .clearfix:after, .container:after {content:"\0020";display:block;height:0;clear:both;visibility:hidden;overflow:hidden;}
103
- .clearfix, .container {display:block;}
104
- .clear {clear:both;}
105
- /*
106
- github.com style (c) Vasily Polovnyov <vast@whiteants.net>
107
- */
108
-
109
-
110
- pre code {
111
- }
112
-
113
- pre .comment,
114
- pre .template_comment,
115
- pre .diff .header,
116
- pre .javadoc {
117
- color: #998;
118
- font-style: italic
119
- }
120
-
121
- pre .keyword,
122
- pre .css .rule .keyword,
123
- pre .winutils,
124
- pre .javascript .title,
125
- pre .lisp .title {
126
- color: #000;
127
- font-weight: bold
128
- }
129
-
130
- pre .number,
131
- pre .hexcolor {
132
- color: #458
133
- }
134
-
135
-
136
- pre .string,
137
- pre .tag .value,
138
- pre .phpdoc,
139
- pre .tex .formula {
140
- color: #d14
141
- }
142
-
143
- pre .subst {
144
- color: #712;
145
- }
146
-
147
- pre .constant,
148
- pre .title,
149
- pre .id {
150
- color: #900;
151
- font-weight: bold
152
- }
153
-
154
- pre .javascript .title,
155
- pre .lisp .title,
156
- pre .subst {
157
- font-weight: normal
158
- }
159
-
160
- pre .class .title,
161
- pre .haskell .label,
162
- pre .tex .command {
163
- color: #458;
164
- font-weight: bold
165
- }
166
-
167
- pre .tag,
168
- pre .tag .title,
169
- pre .rules .property,
170
- pre .django .tag .keyword {
171
- color: #000080;
172
- font-weight: normal
173
- }
174
-
175
- pre .attribute,
176
- pre .variable,
177
- pre .instancevar,
178
- pre .lisp .body {
179
- color: #008080
180
- }
181
-
182
- pre .regexp {
183
- color: #009926
184
- }
185
-
186
- pre .class {
187
- color: #458;
188
- font-weight: bold
189
- }
190
-
191
- pre .symbol,
192
- pre .ruby .symbol .string,
193
- pre .ruby .symbol .keyword,
194
- pre .ruby .symbol .keymethods,
195
- pre .lisp .keyword,
196
- pre .tex .special,
197
- pre .input_number {
198
- color: #990073
199
- }
200
-
201
- pre .builtin,
202
- pre .built_in,
203
- pre .lisp .title {
204
- color: #0086b3
205
- }
206
-
207
- pre .preprocessor,
208
- pre .pi,
209
- pre .doctype,
210
- pre .shebang,
211
- pre .cdata {
212
- color: #999;
213
- font-weight: bold
214
- }
215
-
216
- pre .deletion {
217
- background: #fdd
218
- }
219
-
220
- pre .addition {
221
- background: #dfd
222
- }
223
-
224
- pre .diff .change {
225
- background: #0086b3
226
- }
227
-
228
- pre .chunk {
229
- color: #aaa
230
- }
231
-
232
- pre .tex .formula {
233
- opacity: 0.5;
234
- }
235
- /*
236
- * jQuery UI CSS Framework @VERSION
237
- *
238
- * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)
239
- * Dual licensed under the MIT or GPL Version 2 licenses.
240
- * http://jquery.org/license
241
- *
242
- * http://docs.jquery.com/UI/Theming/API
243
- */
244
-
245
- /* Layout helpers
246
- ----------------------------------*/
247
-
248
- .ui-helper-hidden { display: none; }
249
- .ui-helper-hidden-accessible { position: absolute; left: -99999999px; }
250
- .ui-helper-reset { margin: 0; padding: 0; border: 0; outline: 0; line-height: 1.3; text-decoration: none; font-size: 100%; list-style: none; }
251
- .ui-helper-clearfix:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; }
252
- .ui-helper-clearfix { display: inline-block; }
253
- /* required comment for clearfix to work in Opera \*/
254
- * html .ui-helper-clearfix { height:1%; }
255
- .ui-helper-clearfix { display:block; }
256
- /* end clearfix */
257
- .ui-helper-zfix { width: 100%; height: 100%; top: 0; left: 0; position: absolute; opacity: 0; filter:Alpha(Opacity=0); }
258
-
259
-
260
- /* Interaction Cues
261
- ----------------------------------*/
262
- .ui-state-disabled { cursor: default !important; }
263
-
264
-
265
- /* Icons
266
- ----------------------------------*/
267
-
268
- /* states and images */
269
- .ui-icon { display: block; text-indent: -99999px; overflow: hidden; background-repeat: no-repeat; }
270
-
271
-
272
- /* Misc visuals
273
- ----------------------------------*/
274
-
275
- /* Overlays */
276
- .ui-widget-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
277
-
278
-
279
- /*
280
- * jQuery UI CSS Framework @VERSION
281
- *
282
- * Copyright 2010, AUTHORS.txt (http://jqueryui.com/about)
283
- * Dual licensed under the MIT or GPL Version 2 licenses.
284
- * http://jquery.org/license
285
- *
286
- * http://docs.jquery.com/UI/Theming/API
287
- *
288
- * To view and modify this theme, visit http://jqueryui.com/themeroller/?ffDefault=Verdana,Arial,sans-serif&fwDefault=normal&fsDefault=1.1em&cornerRadius=4px&bgColorHeader=cccccc&bgTextureHeader=03_highlight_soft.png&bgImgOpacityHeader=75&borderColorHeader=aaaaaa&fcHeader=222222&iconColorHeader=222222&bgColorContent=ffffff&bgTextureContent=01_flat.png&bgImgOpacityContent=75&borderColorContent=aaaaaa&fcContent=222222&iconColorContent=222222&bgColorDefault=e6e6e6&bgTextureDefault=02_glass.png&bgImgOpacityDefault=75&borderColorDefault=d3d3d3&fcDefault=555555&iconColorDefault=888888&bgColorHover=dadada&bgTextureHover=02_glass.png&bgImgOpacityHover=75&borderColorHover=999999&fcHover=212121&iconColorHover=454545&bgColorActive=ffffff&bgTextureActive=02_glass.png&bgImgOpacityActive=65&borderColorActive=aaaaaa&fcActive=212121&iconColorActive=454545&bgColorHighlight=fbf9ee&bgTextureHighlight=02_glass.png&bgImgOpacityHighlight=55&borderColorHighlight=fcefa1&fcHighlight=363636&iconColorHighlight=2e83ff&bgColorError=fef1ec&bgTextureError=02_glass.png&bgImgOpacityError=95&borderColorError=cd0a0a&fcError=cd0a0a&iconColorError=cd0a0a&bgColorOverlay=aaaaaa&bgTextureOverlay=01_flat.png&bgImgOpacityOverlay=0&opacityOverlay=30&bgColorShadow=aaaaaa&bgTextureShadow=01_flat.png&bgImgOpacityShadow=0&opacityShadow=30&thicknessShadow=8px&offsetTopShadow=-8px&offsetLeftShadow=-8px&cornerRadiusShadow=8px
289
- */
290
-
291
-
292
- /* Component containers
293
- ----------------------------------*/
294
- .ui-widget { font-family: Verdana,Arial,sans-serif; font-size: 1.1em; }
295
- .ui-widget .ui-widget { font-size: 1em; }
296
- .ui-widget input, .ui-widget select, .ui-widget textarea, .ui-widget button { font-family: Verdana,Arial,sans-serif; font-size: 1em; }
297
- .ui-widget-content { border: 1px solid #aaaaaa; background: #ffffff url(images/ui-bg_flat_75_ffffff_40x100.png) 50% 50% repeat-x; color: #222222; }
298
- .ui-widget-content a { color: #222222; }
299
- .ui-widget-header { border: 1px solid #aaaaaa; background: #cccccc url(images/ui-bg_highlight-soft_75_cccccc_1x100.png) 50% 50% repeat-x; color: #222222; font-weight: bold; }
300
- .ui-widget-header a { color: #222222; }
301
-
302
- /* Interaction states
303
- ----------------------------------*/
304
- .ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default { border: 1px solid #d3d3d3; background: #e6e6e6 url(images/ui-bg_glass_75_e6e6e6_1x400.png) 50% 50% repeat-x; font-weight: normal; color: #555555; }
305
- .ui-state-default a, .ui-state-default a:link, .ui-state-default a:visited { color: #555555; text-decoration: none; }
306
- .ui-state-hover, .ui-widget-content .ui-state-hover, .ui-widget-header .ui-state-hover, .ui-state-focus, .ui-widget-content .ui-state-focus, .ui-widget-header .ui-state-focus { border: 1px solid #999999; background: #dadada url(images/ui-bg_glass_75_dadada_1x400.png) 50% 50% repeat-x; font-weight: normal; color: #212121; }
307
- .ui-state-hover a, .ui-state-hover a:hover { color: #212121; text-decoration: none; }
308
- .ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active { border: 1px solid #aaaaaa; background: #ffffff url(images/ui-bg_glass_65_ffffff_1x400.png) 50% 50% repeat-x; font-weight: normal; color: #212121; }
309
- .ui-state-active a, .ui-state-active a:link, .ui-state-active a:visited { color: #212121; text-decoration: none; }
310
- .ui-widget :active { outline: none; }
311
-
312
- /* Interaction Cues
313
- ----------------------------------*/
314
- .ui-state-highlight, .ui-widget-content .ui-state-highlight, .ui-widget-header .ui-state-highlight {border: 1px solid #fcefa1; background: #fbf9ee url(images/ui-bg_glass_55_fbf9ee_1x400.png) 50% 50% repeat-x; color: #363636; }
315
- .ui-state-highlight a, .ui-widget-content .ui-state-highlight a,.ui-widget-header .ui-state-highlight a { color: #363636; }
316
- .ui-state-error, .ui-widget-content .ui-state-error, .ui-widget-header .ui-state-error {border: 1px solid #cd0a0a; background: #fef1ec url(images/ui-bg_glass_95_fef1ec_1x400.png) 50% 50% repeat-x; color: #cd0a0a; }
317
- .ui-state-error a, .ui-widget-content .ui-state-error a, .ui-widget-header .ui-state-error a { color: #cd0a0a; }
318
- .ui-state-error-text, .ui-widget-content .ui-state-error-text, .ui-widget-header .ui-state-error-text { color: #cd0a0a; }
319
- .ui-priority-primary, .ui-widget-content .ui-priority-primary, .ui-widget-header .ui-priority-primary { font-weight: bold; }
320
- .ui-priority-secondary, .ui-widget-content .ui-priority-secondary, .ui-widget-header .ui-priority-secondary { opacity: .7; filter:Alpha(Opacity=70); font-weight: normal; }
321
- .ui-state-disabled, .ui-widget-content .ui-state-disabled, .ui-widget-header .ui-state-disabled { opacity: .35; filter:Alpha(Opacity=35); background-image: none; }
322
-
323
- /* Icons
324
- ----------------------------------*/
325
-
326
- /* states and images */
327
- .ui-icon { width: 16px; height: 16px; background-image: url(images/ui-icons_222222_256x240.png); }
328
- .ui-widget-content .ui-icon {background-image: url(images/ui-icons_222222_256x240.png); }
329
- .ui-widget-header .ui-icon {background-image: url(images/ui-icons_222222_256x240.png); }
330
- .ui-state-default .ui-icon { background-image: url(images/ui-icons_888888_256x240.png); }
331
- .ui-state-hover .ui-icon, .ui-state-focus .ui-icon {background-image: url(images/ui-icons_454545_256x240.png); }
332
- .ui-state-active .ui-icon {background-image: url(images/ui-icons_454545_256x240.png); }
333
- .ui-state-highlight .ui-icon {background-image: url(images/ui-icons_2e83ff_256x240.png); }
334
- .ui-state-error .ui-icon, .ui-state-error-text .ui-icon {background-image: url(images/ui-icons_cd0a0a_256x240.png); }
335
-
336
- /* positioning */
337
- .ui-icon-carat-1-n { background-position: 0 0; }
338
- .ui-icon-carat-1-ne { background-position: -16px 0; }
339
- .ui-icon-carat-1-e { background-position: -32px 0; }
340
- .ui-icon-carat-1-se { background-position: -48px 0; }
341
- .ui-icon-carat-1-s { background-position: -64px 0; }
342
- .ui-icon-carat-1-sw { background-position: -80px 0; }
343
- .ui-icon-carat-1-w { background-position: -96px 0; }
344
- .ui-icon-carat-1-nw { background-position: -112px 0; }
345
- .ui-icon-carat-2-n-s { background-position: -128px 0; }
346
- .ui-icon-carat-2-e-w { background-position: -144px 0; }
347
- .ui-icon-triangle-1-n { background-position: 0 -16px; }
348
- .ui-icon-triangle-1-ne { background-position: -16px -16px; }
349
- .ui-icon-triangle-1-e { background-position: -32px -16px; }
350
- .ui-icon-triangle-1-se { background-position: -48px -16px; }
351
- .ui-icon-triangle-1-s { background-position: -64px -16px; }
352
- .ui-icon-triangle-1-sw { background-position: -80px -16px; }
353
- .ui-icon-triangle-1-w { background-position: -96px -16px; }
354
- .ui-icon-triangle-1-nw { background-position: -112px -16px; }
355
- .ui-icon-triangle-2-n-s { background-position: -128px -16px; }
356
- .ui-icon-triangle-2-e-w { background-position: -144px -16px; }
357
- .ui-icon-arrow-1-n { background-position: 0 -32px; }
358
- .ui-icon-arrow-1-ne { background-position: -16px -32px; }
359
- .ui-icon-arrow-1-e { background-position: -32px -32px; }
360
- .ui-icon-arrow-1-se { background-position: -48px -32px; }
361
- .ui-icon-arrow-1-s { background-position: -64px -32px; }
362
- .ui-icon-arrow-1-sw { background-position: -80px -32px; }
363
- .ui-icon-arrow-1-w { background-position: -96px -32px; }
364
- .ui-icon-arrow-1-nw { background-position: -112px -32px; }
365
- .ui-icon-arrow-2-n-s { background-position: -128px -32px; }
366
- .ui-icon-arrow-2-ne-sw { background-position: -144px -32px; }
367
- .ui-icon-arrow-2-e-w { background-position: -160px -32px; }
368
- .ui-icon-arrow-2-se-nw { background-position: -176px -32px; }
369
- .ui-icon-arrowstop-1-n { background-position: -192px -32px; }
370
- .ui-icon-arrowstop-1-e { background-position: -208px -32px; }
371
- .ui-icon-arrowstop-1-s { background-position: -224px -32px; }
372
- .ui-icon-arrowstop-1-w { background-position: -240px -32px; }
373
- .ui-icon-arrowthick-1-n { background-position: 0 -48px; }
374
- .ui-icon-arrowthick-1-ne { background-position: -16px -48px; }
375
- .ui-icon-arrowthick-1-e { background-position: -32px -48px; }
376
- .ui-icon-arrowthick-1-se { background-position: -48px -48px; }
377
- .ui-icon-arrowthick-1-s { background-position: -64px -48px; }
378
- .ui-icon-arrowthick-1-sw { background-position: -80px -48px; }
379
- .ui-icon-arrowthick-1-w { background-position: -96px -48px; }
380
- .ui-icon-arrowthick-1-nw { background-position: -112px -48px; }
381
- .ui-icon-arrowthick-2-n-s { background-position: -128px -48px; }
382
- .ui-icon-arrowthick-2-ne-sw { background-position: -144px -48px; }
383
- .ui-icon-arrowthick-2-e-w { background-position: -160px -48px; }
384
- .ui-icon-arrowthick-2-se-nw { background-position: -176px -48px; }
385
- .ui-icon-arrowthickstop-1-n { background-position: -192px -48px; }
386
- .ui-icon-arrowthickstop-1-e { background-position: -208px -48px; }
387
- .ui-icon-arrowthickstop-1-s { background-position: -224px -48px; }
388
- .ui-icon-arrowthickstop-1-w { background-position: -240px -48px; }
389
- .ui-icon-arrowreturnthick-1-w { background-position: 0 -64px; }
390
- .ui-icon-arrowreturnthick-1-n { background-position: -16px -64px; }
391
- .ui-icon-arrowreturnthick-1-e { background-position: -32px -64px; }
392
- .ui-icon-arrowreturnthick-1-s { background-position: -48px -64px; }
393
- .ui-icon-arrowreturn-1-w { background-position: -64px -64px; }
394
- .ui-icon-arrowreturn-1-n { background-position: -80px -64px; }
395
- .ui-icon-arrowreturn-1-e { background-position: -96px -64px; }
396
- .ui-icon-arrowreturn-1-s { background-position: -112px -64px; }
397
- .ui-icon-arrowrefresh-1-w { background-position: -128px -64px; }
398
- .ui-icon-arrowrefresh-1-n { background-position: -144px -64px; }
399
- .ui-icon-arrowrefresh-1-e { background-position: -160px -64px; }
400
- .ui-icon-arrowrefresh-1-s { background-position: -176px -64px; }
401
- .ui-icon-arrow-4 { background-position: 0 -80px; }
402
- .ui-icon-arrow-4-diag { background-position: -16px -80px; }
403
- .ui-icon-extlink { background-position: -32px -80px; }
404
- .ui-icon-newwin { background-position: -48px -80px; }
405
- .ui-icon-refresh { background-position: -64px -80px; }
406
- .ui-icon-shuffle { background-position: -80px -80px; }
407
- .ui-icon-transfer-e-w { background-position: -96px -80px; }
408
- .ui-icon-transferthick-e-w { background-position: -112px -80px; }
409
- .ui-icon-folder-collapsed { background-position: 0 -96px; }
410
- .ui-icon-folder-open { background-position: -16px -96px; }
411
- .ui-icon-document { background-position: -32px -96px; }
412
- .ui-icon-document-b { background-position: -48px -96px; }
413
- .ui-icon-note { background-position: -64px -96px; }
414
- .ui-icon-mail-closed { background-position: -80px -96px; }
415
- .ui-icon-mail-open { background-position: -96px -96px; }
416
- .ui-icon-suitcase { background-position: -112px -96px; }
417
- .ui-icon-comment { background-position: -128px -96px; }
418
- .ui-icon-person { background-position: -144px -96px; }
419
- .ui-icon-print { background-position: -160px -96px; }
420
- .ui-icon-trash { background-position: -176px -96px; }
421
- .ui-icon-locked { background-position: -192px -96px; }
422
- .ui-icon-unlocked { background-position: -208px -96px; }
423
- .ui-icon-bookmark { background-position: -224px -96px; }
424
- .ui-icon-tag { background-position: -240px -96px; }
425
- .ui-icon-home { background-position: 0 -112px; }
426
- .ui-icon-flag { background-position: -16px -112px; }
427
- .ui-icon-calendar { background-position: -32px -112px; }
428
- .ui-icon-cart { background-position: -48px -112px; }
429
- .ui-icon-pencil { background-position: -64px -112px; }
430
- .ui-icon-clock { background-position: -80px -112px; }
431
- .ui-icon-disk { background-position: -96px -112px; }
432
- .ui-icon-calculator { background-position: -112px -112px; }
433
- .ui-icon-zoomin { background-position: -128px -112px; }
434
- .ui-icon-zoomout { background-position: -144px -112px; }
435
- .ui-icon-search { background-position: -160px -112px; }
436
- .ui-icon-wrench { background-position: -176px -112px; }
437
- .ui-icon-gear { background-position: -192px -112px; }
438
- .ui-icon-heart { background-position: -208px -112px; }
439
- .ui-icon-star { background-position: -224px -112px; }
440
- .ui-icon-link { background-position: -240px -112px; }
441
- .ui-icon-cancel { background-position: 0 -128px; }
442
- .ui-icon-plus { background-position: -16px -128px; }
443
- .ui-icon-plusthick { background-position: -32px -128px; }
444
- .ui-icon-minus { background-position: -48px -128px; }
445
- .ui-icon-minusthick { background-position: -64px -128px; }
446
- .ui-icon-close { background-position: -80px -128px; }
447
- .ui-icon-closethick { background-position: -96px -128px; }
448
- .ui-icon-key { background-position: -112px -128px; }
449
- .ui-icon-lightbulb { background-position: -128px -128px; }
450
- .ui-icon-scissors { background-position: -144px -128px; }
451
- .ui-icon-clipboard { background-position: -160px -128px; }
452
- .ui-icon-copy { background-position: -176px -128px; }
453
- .ui-icon-contact { background-position: -192px -128px; }
454
- .ui-icon-image { background-position: -208px -128px; }
455
- .ui-icon-video { background-position: -224px -128px; }
456
- .ui-icon-script { background-position: -240px -128px; }
457
- .ui-icon-alert { background-position: 0 -144px; }
458
- .ui-icon-info { background-position: -16px -144px; }
459
- .ui-icon-notice { background-position: -32px -144px; }
460
- .ui-icon-help { background-position: -48px -144px; }
461
- .ui-icon-check { background-position: -64px -144px; }
462
- .ui-icon-bullet { background-position: -80px -144px; }
463
- .ui-icon-radio-off { background-position: -96px -144px; }
464
- .ui-icon-radio-on { background-position: -112px -144px; }
465
- .ui-icon-pin-w { background-position: -128px -144px; }
466
- .ui-icon-pin-s { background-position: -144px -144px; }
467
- .ui-icon-play { background-position: 0 -160px; }
468
- .ui-icon-pause { background-position: -16px -160px; }
469
- .ui-icon-seek-next { background-position: -32px -160px; }
470
- .ui-icon-seek-prev { background-position: -48px -160px; }
471
- .ui-icon-seek-end { background-position: -64px -160px; }
472
- .ui-icon-seek-start { background-position: -80px -160px; }
473
- /* ui-icon-seek-first is deprecated, use ui-icon-seek-start instead */
474
- .ui-icon-seek-first { background-position: -80px -160px; }
475
- .ui-icon-stop { background-position: -96px -160px; }
476
- .ui-icon-eject { background-position: -112px -160px; }
477
- .ui-icon-volume-off { background-position: -128px -160px; }
478
- .ui-icon-volume-on { background-position: -144px -160px; }
479
- .ui-icon-power { background-position: 0 -176px; }
480
- .ui-icon-signal-diag { background-position: -16px -176px; }
481
- .ui-icon-signal { background-position: -32px -176px; }
482
- .ui-icon-battery-0 { background-position: -48px -176px; }
483
- .ui-icon-battery-1 { background-position: -64px -176px; }
484
- .ui-icon-battery-2 { background-position: -80px -176px; }
485
- .ui-icon-battery-3 { background-position: -96px -176px; }
486
- .ui-icon-circle-plus { background-position: 0 -192px; }
487
- .ui-icon-circle-minus { background-position: -16px -192px; }
488
- .ui-icon-circle-close { background-position: -32px -192px; }
489
- .ui-icon-circle-triangle-e { background-position: -48px -192px; }
490
- .ui-icon-circle-triangle-s { background-position: -64px -192px; }
491
- .ui-icon-circle-triangle-w { background-position: -80px -192px; }
492
- .ui-icon-circle-triangle-n { background-position: -96px -192px; }
493
- .ui-icon-circle-arrow-e { background-position: -112px -192px; }
494
- .ui-icon-circle-arrow-s { background-position: -128px -192px; }
495
- .ui-icon-circle-arrow-w { background-position: -144px -192px; }
496
- .ui-icon-circle-arrow-n { background-position: -160px -192px; }
497
- .ui-icon-circle-zoomin { background-position: -176px -192px; }
498
- .ui-icon-circle-zoomout { background-position: -192px -192px; }
499
- .ui-icon-circle-check { background-position: -208px -192px; }
500
- .ui-icon-circlesmall-plus { background-position: 0 -208px; }
501
- .ui-icon-circlesmall-minus { background-position: -16px -208px; }
502
- .ui-icon-circlesmall-close { background-position: -32px -208px; }
503
- .ui-icon-squaresmall-plus { background-position: -48px -208px; }
504
- .ui-icon-squaresmall-minus { background-position: -64px -208px; }
505
- .ui-icon-squaresmall-close { background-position: -80px -208px; }
506
- .ui-icon-grip-dotted-vertical { background-position: 0 -224px; }
507
- .ui-icon-grip-dotted-horizontal { background-position: -16px -224px; }
508
- .ui-icon-grip-solid-vertical { background-position: -32px -224px; }
509
- .ui-icon-grip-solid-horizontal { background-position: -48px -224px; }
510
- .ui-icon-gripsmall-diagonal-se { background-position: -64px -224px; }
511
- .ui-icon-grip-diagonal-se { background-position: -80px -224px; }
512
-
513
-
514
- /* Misc visuals
515
- ----------------------------------*/
516
-
517
- /* Corner radius */
518
- .ui-corner-tl { -moz-border-radius-topleft: 4px; -webkit-border-top-left-radius: 4px; border-top-left-radius: 4px; }
519
- .ui-corner-tr { -moz-border-radius-topright: 4px; -webkit-border-top-right-radius: 4px; border-top-right-radius: 4px; }
520
- .ui-corner-bl { -moz-border-radius-bottomleft: 4px; -webkit-border-bottom-left-radius: 4px; border-bottom-left-radius: 4px; }
521
- .ui-corner-br { -moz-border-radius-bottomright: 4px; -webkit-border-bottom-right-radius: 4px; border-bottom-right-radius: 4px; }
522
- .ui-corner-top { -moz-border-radius-topleft: 4px; -webkit-border-top-left-radius: 4px; border-top-left-radius: 4px; -moz-border-radius-topright: 4px; -webkit-border-top-right-radius: 4px; border-top-right-radius: 4px; }
523
- .ui-corner-bottom { -moz-border-radius-bottomleft: 4px; -webkit-border-bottom-left-radius: 4px; border-bottom-left-radius: 4px; -moz-border-radius-bottomright: 4px; -webkit-border-bottom-right-radius: 4px; border-bottom-right-radius: 4px; }
524
- .ui-corner-right { -moz-border-radius-topright: 4px; -webkit-border-top-right-radius: 4px; border-top-right-radius: 4px; -moz-border-radius-bottomright: 4px; -webkit-border-bottom-right-radius: 4px; border-bottom-right-radius: 4px; }
525
- .ui-corner-left { -moz-border-radius-topleft: 4px; -webkit-border-top-left-radius: 4px; border-top-left-radius: 4px; -moz-border-radius-bottomleft: 4px; -webkit-border-bottom-left-radius: 4px; border-bottom-left-radius: 4px; }
526
- .ui-corner-all { -moz-border-radius: 4px; -webkit-border-radius: 4px; border-radius: 4px; }
527
-
528
- /* Overlays */
529
- .ui-widget-overlay { background: #aaaaaa url(images/ui-bg_flat_0_aaaaaa_40x100.png) 50% 50% repeat-x; opacity: .30;filter:Alpha(Opacity=30); }
530
- .ui-widget-shadow { margin: -8px 0 0 -8px; padding: 8px; background: #aaaaaa url(images/ui-bg_flat_0_aaaaaa_40x100.png) 50% 50% repeat-x; opacity: .30;filter:Alpha(Opacity=30); -moz-border-radius: 8px; -webkit-border-radius: 8px; border-radius: 8px; }
531
- /*
532
- ColorBox Core Style:
533
- The following CSS is consistent between example themes and should not be altered.
534
- */
535
- #colorbox, #cboxOverlay, #cboxWrapper{position:absolute; top:0; left:0; z-index:9999; overflow:hidden;}
536
- #cboxOverlay{position:fixed; width:100%; height:100%;}
537
- #cboxMiddleLeft, #cboxBottomLeft{clear:left;}
538
- #cboxContent{position:relative;}
539
- #cboxLoadedContent{overflow:auto;}
540
- #cboxTitle{margin:0;}
541
- #cboxLoadingOverlay, #cboxLoadingGraphic{position:absolute; top:0; left:0; width:100%; height:100%;}
542
- #cboxPrevious, #cboxNext, #cboxClose, #cboxSlideshow{cursor:pointer;}
543
- .cboxPhoto{float:left; margin:auto; border:0; display:block; max-width:none;}
544
- .cboxIframe{width:100%; height:100%; display:block; border:0;}
545
- #colorbox, #cboxContent, #cboxLoadedContent{box-sizing:content-box;}
546
-
547
- /*
548
- User Style:
549
- Change the following styles to modify the appearance of ColorBox. They are
550
- ordered & tabbed in a way that represents the nesting of the generated HTML.
551
- */
552
- #cboxOverlay{background:#000;}
553
- #colorbox{}
554
- #cboxTopLeft{width:14px; height:14px; background:url(colorbox/controls.png) no-repeat 0 0;}
555
- #cboxTopCenter{height:14px; background:url(colorbox/border.png) repeat-x top left;}
556
- #cboxTopRight{width:14px; height:14px; background:url(colorbox/controls.png) no-repeat -36px 0;}
557
- #cboxBottomLeft{width:14px; height:43px; background:url(colorbox/controls.png) no-repeat 0 -32px;}
558
- #cboxBottomCenter{height:43px; background:url(colorbox/border.png) repeat-x bottom left;}
559
- #cboxBottomRight{width:14px; height:43px; background:url(colorbox/controls.png) no-repeat -36px -32px;}
560
- #cboxMiddleLeft{width:14px; background:url(colorbox/controls.png) repeat-y -175px 0;}
561
- #cboxMiddleRight{width:14px; background:url(colorbox/controls.png) repeat-y -211px 0;}
562
- #cboxContent{background:#fff; overflow:visible;}
563
- .cboxIframe{background:#fff;}
564
- #cboxError{padding:50px; border:1px solid #ccc;}
565
- #cboxLoadedContent{margin-bottom:5px;}
566
- #cboxLoadingOverlay{background:url(colorbox/loading_background.png) no-repeat center center;}
567
- #cboxLoadingGraphic{background:url(colorbox/loading.gif) no-repeat center center;}
568
- #cboxTitle{position:absolute; bottom:-25px; left:0; text-align:center; width:100%; font-weight:bold; color:#7C7C7C;}
569
- #cboxCurrent{position:absolute; bottom:-25px; left:58px; font-weight:bold; color:#7C7C7C;}
570
-
571
- #cboxPrevious, #cboxNext, #cboxClose, #cboxSlideshow{position:absolute; bottom:-29px; background:url(colorbox/controls.png) no-repeat 0px 0px; width:23px; height:23px; text-indent:-9999px;}
572
- #cboxPrevious{left:0px; background-position: -51px -25px;}
573
- #cboxPrevious:hover{background-position:-51px 0px;}
574
- #cboxNext{left:27px; background-position:-75px -25px;}
575
- #cboxNext:hover{background-position:-75px 0px;}
576
- #cboxClose{right:0; background-position:-100px -25px;}
577
- #cboxClose:hover{background-position:-100px 0px;}
578
-
579
- .cboxSlideshow_on #cboxSlideshow{background-position:-125px 0px; right:27px;}
580
- .cboxSlideshow_on #cboxSlideshow:hover{background-position:-150px 0px;}
581
- .cboxSlideshow_off #cboxSlideshow{background-position:-150px -25px; right:27px;}
582
- .cboxSlideshow_off #cboxSlideshow:hover{background-position:-125px 0px;}
583
- #loading {
584
- position: fixed;
585
- left: 40%;
586
- top: 50%; }
587
-
588
- a {
589
- color: #333333;
590
- text-decoration: none; }
591
- a:hover {
592
- color: black;
593
- text-decoration: underline; }
594
-
595
- body {
596
- font-family: "Lucida Grande", Helvetica, "Helvetica Neue", Arial, sans-serif;
597
- padding: 12px;
598
- background-color: #333333; }
599
-
600
- h1, h2, h3, h4 {
601
- color: #1c2324;
602
- margin: 0;
603
- padding: 0;
604
- margin-bottom: 12px; }
605
-
606
- table {
607
- width: 100%; }
608
-
609
- #content {
610
- clear: left;
611
- background-color: white;
612
- border: 2px solid #dddddd;
613
- border-top: 8px solid #dddddd;
614
- padding: 18px;
615
- -webkit-border-bottom-left-radius: 5px;
616
- -webkit-border-bottom-right-radius: 5px;
617
- -webkit-border-top-right-radius: 5px;
618
- -moz-border-radius-bottomleft: 5px;
619
- -moz-border-radius-bottomright: 5px;
620
- -moz-border-radius-topright: 5px;
621
- border-bottom-left-radius: 5px;
622
- border-bottom-right-radius: 5px;
623
- border-top-right-radius: 5px; }
624
-
625
- .dataTables_filter, .dataTables_info {
626
- padding: 2px 6px; }
627
-
628
- abbr.timeago {
629
- text-decoration: none;
630
- border: none;
631
- font-weight: bold; }
632
-
633
- .timestamp {
634
- float: right;
635
- color: #dddddd; }
636
-
637
- .group_tabs {
638
- list-style: none;
639
- float: left;
640
- margin: 0;
641
- padding: 0; }
642
- .group_tabs li {
643
- display: inline;
644
- float: left; }
645
- .group_tabs li a {
646
- font-family: Helvetica, Arial, sans-serif;
647
- display: block;
648
- float: left;
649
- text-decoration: none;
650
- padding: 4px 8px;
651
- background-color: #aaaaaa;
652
- background: -webkit-gradient(linear, 0 0, 0 bottom, from(#dddddd), to(#aaaaaa));
653
- background: -moz-linear-gradient(#dddddd, #aaaaaa);
654
- background: linear-gradient(#dddddd, #aaaaaa);
655
- text-shadow: #e5e5e5 1px 1px 0px;
656
- border-bottom: none;
657
- color: #333333;
658
- font-weight: bold;
659
- margin-right: 8px;
660
- border-top: 1px solid #efefef;
661
- -webkit-border-top-left-radius: 2px;
662
- -webkit-border-top-right-radius: 2px;
663
- -moz-border-radius-topleft: 2px;
664
- -moz-border-radius-topright: 2px;
665
- border-top-left-radius: 2px;
666
- border-top-right-radius: 2px; }
667
- .group_tabs li a:hover {
668
- background-color: #cccccc;
669
- background: -webkit-gradient(linear, 0 0, 0 bottom, from(#eeeeee), to(#aaaaaa));
670
- background: -moz-linear-gradient(#eeeeee, #aaaaaa);
671
- background: linear-gradient(#eeeeee, #aaaaaa); }
672
- .group_tabs li a:active {
673
- padding-top: 5px;
674
- padding-bottom: 3px; }
675
- .group_tabs li.active a {
676
- color: black;
677
- text-shadow: white 1px 1px 0px;
678
- background-color: #dddddd;
679
- background: -webkit-gradient(linear, 0 0, 0 bottom, from(white), to(#dddddd));
680
- background: -moz-linear-gradient(white, #dddddd);
681
- background: linear-gradient(white, #dddddd); }
682
-
683
- .file_list {
684
- margin-bottom: 18px; }
685
-
686
- a.src_link {
687
- background: url("./magnify.png") no-repeat left 50%;
688
- padding-left: 18px; }
689
-
690
- tr, td {
691
- margin: 0;
692
- padding: 0; }
693
-
694
- th {
695
- white-space: nowrap; }
696
- th.ui-state-default {
697
- cursor: pointer; }
698
- th span.ui-icon {
699
- float: left; }
700
-
701
- td {
702
- padding: 4px 8px; }
703
- td.strong {
704
- font-weight: bold; }
705
-
706
- .source_table h3, .source_table h4 {
707
- padding: 0;
708
- margin: 0;
709
- margin-bottom: 4px; }
710
- .source_table .header {
711
- padding: 10px; }
712
- .source_table pre {
713
- margin: 0;
714
- padding: 0;
715
- white-space: normal;
716
- color: black;
717
- font-family: "Monaco", "Inconsolata", "Consolas", monospace; }
718
- .source_table code {
719
- color: black;
720
- font-family: "Monaco", "Inconsolata", "Consolas", monospace; }
721
- .source_table pre {
722
- background-color: #333333; }
723
- .source_table pre ol {
724
- margin: 0px;
725
- padding: 0px;
726
- margin-left: 45px;
727
- font-size: 12px;
728
- color: white; }
729
- .source_table pre li {
730
- margin: 0px;
731
- padding: 2px 6px;
732
- border-left: 5px solid white; }
733
- .source_table pre li code {
734
- white-space: pre;
735
- white-space: pre-wrap; }
736
- .source_table pre .hits {
737
- float: right;
738
- margin-left: 10px;
739
- padding: 2px 4px;
740
- background-color: #444444;
741
- background: -webkit-gradient(linear, 0 0, 0 bottom, from(#222222), to(#666666));
742
- background: -moz-linear-gradient(#222222, #666666);
743
- background: linear-gradient(#222222, #666666);
744
- color: white;
745
- font-family: Helvetica, "Helvetica Neue", Arial, sans-serif;
746
- font-size: 10px;
747
- font-weight: bold;
748
- text-align: center;
749
- border-radius: 6px; }
750
-
751
- #footer {
752
- color: #dddddd;
753
- font-size: 12px;
754
- font-weight: bold;
755
- margin-top: 12px;
756
- text-align: right; }
757
- #footer a {
758
- color: #eeeeee;
759
- text-decoration: underline; }
760
- #footer a:hover {
761
- color: white;
762
- text-decoration: none; }
763
-
764
- .green {
765
- color: #009900; }
766
-
767
- .red {
768
- color: #990000; }
769
-
770
- .yellow {
771
- color: #ddaa00; }
772
-
773
- .source_table .covered {
774
- border-color: #009900; }
775
- .source_table .missed {
776
- border-color: #990000; }
777
- .source_table .never {
778
- border-color: black; }
779
- .source_table .skipped {
780
- border-color: #ffcc00; }
781
- .source_table .covered:nth-child(odd) {
782
- background-color: #cdf2cd; }
783
- .source_table .covered:nth-child(even) {
784
- background-color: #dbf2db; }
785
- .source_table .missed:nth-child(odd) {
786
- background-color: #f7c0c0; }
787
- .source_table .missed:nth-child(even) {
788
- background-color: #f7cfcf; }
789
- .source_table .never:nth-child(odd) {
790
- background-color: #efefef; }
791
- .source_table .never:nth-child(even) {
792
- background-color: #f4f4f4; }
793
- .source_table .skipped:nth-child(odd) {
794
- background-color: #fbf0c0; }
795
- .source_table .skipped:nth-child(even) {
796
- background-color: #fbffcf; }
797
-
798
-
799
-