atrium 0.0.1.alpha

Sign up to get free protection for your applications and to get access to all the features.
Files changed (212) hide show
  1. data/.gitignore +13 -0
  2. data/.gitmodules +3 -0
  3. data/.rvmrc +32 -0
  4. data/GETTING_STARTED.textile +109 -0
  5. data/Gemfile +4 -0
  6. data/Gemfile.lock +320 -0
  7. data/Guardfile +10 -0
  8. data/README.mkd +56 -0
  9. data/Rakefile +6 -0
  10. data/app/assets/images/atrium/ajax-loader.gif +0 -0
  11. data/app/assets/images/atrium/lightbox-ico-loading.gif +0 -0
  12. data/app/assets/images/atrium/logo.png +0 -0
  13. data/app/assets/javascripts/atrium/atrium.js +281 -0
  14. data/app/assets/javascripts/chosen.jquery.js +899 -0
  15. data/app/assets/javascripts/ckeditor.warning.js +65 -0
  16. data/app/assets/javascripts/ckeditor/config.js.coffee +6 -0
  17. data/app/assets/javascripts/ckeditor/jquery.generateId.js +13 -0
  18. data/app/assets/javascripts/ckeditor/jquery.jeditable.ckeditor.js +59 -0
  19. data/app/assets/javascripts/ckeditor/plugins/linkItem/application_link.png +0 -0
  20. data/app/assets/javascripts/ckeditor/plugins/linkItem/dialogs/linkItem.js +1470 -0
  21. data/app/assets/javascripts/ckeditor/plugins/linkItem/plugin.js +16 -0
  22. data/app/assets/javascripts/ckeditor/plugins/linkItem/ui_toolbar_pencil.png +0 -0
  23. data/app/assets/javascripts/jquery.colorbox.js +864 -0
  24. data/app/assets/javascripts/jquery.jeditable.js +543 -0
  25. data/app/assets/stylesheets/atrium/atrium.css +216 -0
  26. data/app/assets/stylesheets/atrium/chosen-sprite.png +0 -0
  27. data/app/assets/stylesheets/atrium/chosen.css +367 -0
  28. data/app/assets/stylesheets/colorbox.css +42 -0
  29. data/app/assets/stylesheets/controls.png +0 -0
  30. data/app/assets/stylesheets/loading.gif +0 -0
  31. data/app/controllers/atrium/base_controller.rb +25 -0
  32. data/app/controllers/atrium/collection_exhibit_order_controller.rb +21 -0
  33. data/app/controllers/atrium/collections_controller.rb +165 -0
  34. data/app/controllers/atrium/customization_controller.rb +41 -0
  35. data/app/controllers/atrium/descriptions_controller.rb +177 -0
  36. data/app/controllers/atrium/exhibit_facet_order_controller.rb +19 -0
  37. data/app/controllers/atrium/exhibits_controller.rb +108 -0
  38. data/app/controllers/atrium/showcases_controller.rb +193 -0
  39. data/app/helpers/atrium/base_helper.rb +6 -0
  40. data/app/models/ability.rb +14 -0
  41. data/app/models/atrium/browse_level.rb +41 -0
  42. data/app/models/atrium/collection.rb +121 -0
  43. data/app/models/atrium/description.rb +128 -0
  44. data/app/models/atrium/essay.rb +21 -0
  45. data/app/models/atrium/exhibit.rb +58 -0
  46. data/app/models/atrium/search/facet.rb +29 -0
  47. data/app/models/atrium/search/facet_selection.rb +17 -0
  48. data/app/models/atrium/showcase.rb +173 -0
  49. data/app/models/atrium/showcase/facet_selection.rb +21 -0
  50. data/app/models/atrium/showcase/item.rb +19 -0
  51. data/app/models/role_mapper.rb +23 -0
  52. data/app/views/_user_util_links.html.erb +25 -0
  53. data/app/views/atrium/collections/_bookmark_control.html.erb +25 -0
  54. data/app/views/atrium/collections/_browse_index.html.erb +20 -0
  55. data/app/views/atrium/collections/_collection_items_index.html.erb +10 -0
  56. data/app/views/atrium/collections/_document.html.erb +24 -0
  57. data/app/views/atrium/collections/_document_list.html.erb +6 -0
  58. data/app/views/atrium/collections/_edit_navigation.html.erb +20 -0
  59. data/app/views/atrium/collections/_folder_control.html.erb +12 -0
  60. data/app/views/atrium/collections/_form.html.erb +93 -0
  61. data/app/views/atrium/collections/_listing.html.erb +18 -0
  62. data/app/views/atrium/collections/_navigation.html.erb +45 -0
  63. data/app/views/atrium/collections/_results_pagination.html.erb +9 -0
  64. data/app/views/atrium/collections/_sort_and_per_page.html.erb +23 -0
  65. data/app/views/atrium/collections/edit.html.erb +5 -0
  66. data/app/views/atrium/collections/new.html.erb +6 -0
  67. data/app/views/atrium/collections/show.html.erb +22 -0
  68. data/app/views/atrium/descriptions/_form.html.erb +64 -0
  69. data/app/views/atrium/descriptions/edit.html.erb +4 -0
  70. data/app/views/atrium/descriptions/index.html.erb +4 -0
  71. data/app/views/atrium/descriptions/new.html.erb +2 -0
  72. data/app/views/atrium/descriptions/show.html.erb +20 -0
  73. data/app/views/atrium/exhibits/_bookmark_control.html.erb +25 -0
  74. data/app/views/atrium/exhibits/_folder_control.html.erb +12 -0
  75. data/app/views/atrium/exhibits/_form.html.erb +108 -0
  76. data/app/views/atrium/exhibits/edit.html.erb +9 -0
  77. data/app/views/atrium/exhibits/new.html.erb +6 -0
  78. data/app/views/atrium/exhibits/show.html.erb +26 -0
  79. data/app/views/atrium/showcases/_showcase_navigation.html.erb +23 -0
  80. data/app/views/atrium/showcases/show.html.erb +1 -0
  81. data/app/views/catalog/_collection_home_text.html.erb +6 -0
  82. data/app/views/catalog/_constraints.html.erb +9 -0
  83. data/app/views/catalog/_default_collection_text.html.erb +18 -0
  84. data/app/views/catalog/_default_home_text.html.erb +6 -0
  85. data/app/views/catalog/_home_text.html.erb +6 -0
  86. data/app/views/catalog/_index_partials/_description.html.erb +8 -0
  87. data/app/views/catalog/_search_form.html.erb +66 -0
  88. data/app/views/catalog/_show_partials/_description.html.erb +15 -0
  89. data/app/views/catalog/browse_show.html.erb +18 -0
  90. data/app/views/catalog/index.html.erb +35 -0
  91. data/app/views/catalog/list_description.html.erb +24 -0
  92. data/app/views/catalog/list_item.html.erb +3 -0
  93. data/app/views/layouts/atrium.html.erb +86 -0
  94. data/app/views/layouts/atrium_themes/default.html.erb +4 -0
  95. data/app/views/layouts/item_listing.html.erb +36 -0
  96. data/app/views/listing/_document.html.erb +27 -0
  97. data/app/views/listing/_document_list.html.erb +3 -0
  98. data/app/views/listing/_item_search.html.erb +27 -0
  99. data/app/views/shared/_banner.html.erb +5 -0
  100. data/app/views/shared/_collection_complete_list.html.erb +33 -0
  101. data/app/views/shared/_collection_search_form.html.erb +12 -0
  102. data/app/views/shared/_collection_title_header.html.erb +3 -0
  103. data/app/views/shared/_featured_sources.html.erb +20 -0
  104. data/app/views/shared/_list_descriptions.html.erb +38 -0
  105. data/app/views/shared/_navigation_browse_levels.html.erb +34 -0
  106. data/app/views/shared/_showcase_configure_menu.html.erb +22 -0
  107. data/app/views/shared/_top_navigation.html.erb +9 -0
  108. data/atrium.gemspec +76 -0
  109. data/config/routes.rb +12 -0
  110. data/init.rb +3 -0
  111. data/lib/application_controller.rb +24 -0
  112. data/lib/atrium.rb +42 -0
  113. data/lib/atrium/application_helper.rb +24 -0
  114. data/lib/atrium/atrium_helper_behavior.rb +162 -0
  115. data/lib/atrium/catalog.rb +203 -0
  116. data/lib/atrium/collections_helper.rb +139 -0
  117. data/lib/atrium/controller.rb +10 -0
  118. data/lib/atrium/descriptions_helper.rb +23 -0
  119. data/lib/atrium/engine.rb +12 -0
  120. data/lib/atrium/layout_helper.rb +13 -0
  121. data/lib/atrium/routes.rb +99 -0
  122. data/lib/atrium/solr_helper.rb +440 -0
  123. data/lib/atrium/version.rb +3 -0
  124. data/lib/generators/atrium/assets_generator.rb +44 -0
  125. data/lib/generators/atrium/atrium_generator.rb +149 -0
  126. data/lib/generators/atrium/cucumber_support_generator.rb +29 -0
  127. data/lib/generators/atrium/templates/config/role_map_cucumber.yml +2 -0
  128. data/lib/generators/atrium/templates/config/role_map_development.yml +2 -0
  129. data/lib/generators/atrium/templates/config/role_map_production.yml +2 -0
  130. data/lib/generators/atrium/templates/config/role_map_test.yml +2 -0
  131. data/lib/generators/atrium/templates/config/solr.yml +10 -0
  132. data/lib/generators/atrium/templates/db/seeds.rb +87 -0
  133. data/lib/generators/atrium/templates/migrations/create_atrium_browse_levels.rb +18 -0
  134. data/lib/generators/atrium/templates/migrations/create_atrium_collections.rb +20 -0
  135. data/lib/generators/atrium/templates/migrations/create_atrium_descriptions.rb +16 -0
  136. data/lib/generators/atrium/templates/migrations/create_atrium_essays.rb +15 -0
  137. data/lib/generators/atrium/templates/migrations/create_atrium_exhibits.rb +16 -0
  138. data/lib/generators/atrium/templates/migrations/create_atrium_search_facets.rb +14 -0
  139. data/lib/generators/atrium/templates/migrations/create_atrium_showcase_facet_selections.rb +15 -0
  140. data/lib/generators/atrium/templates/migrations/create_atrium_showcase_items.rb +17 -0
  141. data/lib/generators/atrium/templates/migrations/create_atrium_showcases.rb +16 -0
  142. data/lib/generators/atrium/templates/themes/example.html.erb +21 -0
  143. data/lib/railties/all_tests.rake +23 -0
  144. data/lib/railties/atrium_cucumber.rake +121 -0
  145. data/lib/railties/index.rake +37 -0
  146. data/tasks/atrium.rake +268 -0
  147. data/tasks/atrium_rspec.rake +91 -0
  148. data/test_support/etc/Gemfile +33 -0
  149. data/test_support/etc/bundle_config +3 -0
  150. data/test_support/etc/rvmrc +32 -0
  151. data/test_support/features/atrium_collections.feature +162 -0
  152. data/test_support/features/atrium_exhibits.feature +164 -0
  153. data/test_support/features/step_definitions/atrium_collection_steps.rb +102 -0
  154. data/test_support/features/step_definitions/atrium_exhibit_steps.rb +53 -0
  155. data/test_support/features/step_definitions/bookmarks_steps.rb +6 -0
  156. data/test_support/features/step_definitions/error_steps.rb +5 -0
  157. data/test_support/features/step_definitions/folder_steps.rb +27 -0
  158. data/test_support/features/step_definitions/general_steps.rb +50 -0
  159. data/test_support/features/step_definitions/record_view_steps.rb +12 -0
  160. data/test_support/features/step_definitions/saved_searches_steps.rb +22 -0
  161. data/test_support/features/step_definitions/search_facets_steps.rb +29 -0
  162. data/test_support/features/step_definitions/search_history_steps.rb +9 -0
  163. data/test_support/features/step_definitions/search_result_steps.rb +114 -0
  164. data/test_support/features/step_definitions/search_steps.rb +103 -0
  165. data/test_support/features/step_definitions/user_steps.rb +5 -0
  166. data/test_support/features/step_definitions/web_steps.rb +213 -0
  167. data/test_support/features/support/env.rb +67 -0
  168. data/test_support/features/support/paths.rb +76 -0
  169. data/test_support/features/support/selectors.rb +40 -0
  170. data/test_support/fixtures/atrium_exhibits.yml +3 -0
  171. data/test_support/spec/controllers/atrium/base_controller_spec.rb +13 -0
  172. data/test_support/spec/controllers/atrium/collection_exhibit_order_controller_spec.rb +29 -0
  173. data/test_support/spec/controllers/atrium/collections_controller_spec.rb +185 -0
  174. data/test_support/spec/controllers/atrium/customization_controller_spec.rb +38 -0
  175. data/test_support/spec/controllers/atrium/descriptions_controller_spec.rb +150 -0
  176. data/test_support/spec/controllers/atrium/exhibit_facet_order_controller_spec.rb +36 -0
  177. data/test_support/spec/controllers/atrium/exhibits_controller_spec.rb +192 -0
  178. data/test_support/spec/controllers/atrium/showcases_controller_spec.rb +185 -0
  179. data/test_support/spec/helpers/atrium_collections_helper_spec.rb +147 -0
  180. data/test_support/spec/helpers/atrium_description_helper_spec.rb +47 -0
  181. data/test_support/spec/helpers/atrium_solr_helper_spec.rb +512 -0
  182. data/test_support/spec/models/atrium/browse_level_spec.rb +31 -0
  183. data/test_support/spec/models/atrium/collection_spec.rb +30 -0
  184. data/test_support/spec/models/atrium/description_spec.rb +67 -0
  185. data/test_support/spec/models/atrium/essay_spec.rb +12 -0
  186. data/test_support/spec/models/atrium/exhibit_spec.rb +76 -0
  187. data/test_support/spec/models/atrium/search/facet_selection_spec.rb +24 -0
  188. data/test_support/spec/models/atrium/search/facet_spec.rb +11 -0
  189. data/test_support/spec/models/atrium/search_facet_spec.rb +54 -0
  190. data/test_support/spec/models/atrium/showcase/facet_selection_spec.rb +15 -0
  191. data/test_support/spec/models/atrium/showcase/item_spec.rb +12 -0
  192. data/test_support/spec/models/atrium/showcase_facet_selection_spec.rb +65 -0
  193. data/test_support/spec/models/atrium/showcase_spec.rb +134 -0
  194. data/test_support/spec/rcov.opts +3 -0
  195. data/test_support/spec/routing/atrium/collections_routing_spec.rb +33 -0
  196. data/test_support/spec/spec.opts +4 -0
  197. data/test_support/spec/spec_helper.rb +47 -0
  198. data/test_support/spec/support/be_accessible_matcher.rb +8 -0
  199. data/test_support/spec/support/be_routed_mixin.rb +7 -0
  200. data/test_support/tmp/step_definitions/catalog_index_steps.rb +14 -0
  201. data/test_support/tmp/step_definitions/edit_document_steps.rb +67 -0
  202. data/test_support/tmp/step_definitions/hydra_metadata_steps.rb +3 -0
  203. data/test_support/tmp/step_definitions/hydra_steps.rb +8 -0
  204. data/test_support/tmp/step_definitions/search_steps.rb +86 -0
  205. data/test_support/tmp/step_definitions/searching_steps.rb +22 -0
  206. data/test_support/tmp/step_definitions/select_steps.rb +8 -0
  207. data/test_support/tmp/step_definitions/show_document_steps.rb +73 -0
  208. data/test_support/tmp/step_definitions/user_steps.rb +15 -0
  209. data/test_support/tmp/step_definitions/web_steps.rb +273 -0
  210. data/test_support/tmp/support/env.rb +54 -0
  211. data/test_support/tmp/support/paths.rb +57 -0
  212. metadata +1047 -0
@@ -0,0 +1,216 @@
1
+ /* Global */
2
+
3
+ body {
4
+ padding:0;
5
+ }
6
+
7
+ #doc, #doc2, #doc3, #doc4 {
8
+ border-top:5px solid #484748;
9
+ }
10
+
11
+ .button {
12
+ background-color:#CCC;
13
+ border-color: #FFF #000 #000 #FFF;
14
+ border-style:solid;
15
+ border-width:1px;
16
+ display:inline-block;
17
+ line-height:1.2em;
18
+ padding:.3em .5em;
19
+ }
20
+
21
+ /** Banner **/
22
+
23
+ #banner {
24
+ background-color:#EFEFEF;
25
+ border-bottom:2px solid #333;
26
+ font-size: 1.2em;
27
+ line-height:3.2em;
28
+ opacity:.95;
29
+ padding:.1em .6em;
30
+ position:relative;
31
+ text-align:left;
32
+ }
33
+
34
+ #banner .controls {
35
+ line-height:3.5em;
36
+ margin:0;
37
+ position:absolute;
38
+ right:.6em;
39
+ top:0;
40
+ }
41
+
42
+ #banner .controls li {
43
+ display:inline;
44
+ list-style-type:none;
45
+ }
46
+
47
+ #banner .button {
48
+ background-color:#DDD;
49
+ border-color: #EEE #999 #999 #EEE;
50
+ border-style:solid;
51
+ border-width:1px;
52
+ color:#333;
53
+ display:inline-block;
54
+ line-height:1.2em;
55
+ padding:.3em .5em;
56
+ border-radius:3px;
57
+ }
58
+
59
+ /** Navigation menu **/
60
+ #exhibit-menu {
61
+ margin:0 0 .3em 0;
62
+ padding:1px;
63
+ line-height:3.2em;
64
+ text-align:left;
65
+ border-width:1px 0;
66
+ border-style:solid;
67
+ border-color:#CCC;
68
+ }
69
+
70
+ #exhibit-menu li {
71
+ list-style-type:none;
72
+ display:inline;
73
+ line-height:1.2em;
74
+ }
75
+
76
+ #exhibit-menu a {
77
+ padding:.5em 1em;
78
+ border-bottom:none;
79
+ }
80
+
81
+ #exhibit-menu a:hover {
82
+ background-color:#EFEFEF;
83
+ }
84
+
85
+ /** Custom bits of data forms **/
86
+
87
+ legend {
88
+ color: #999;
89
+ }
90
+
91
+ fieldset {
92
+ padding: .5em;
93
+ border: 1px solid #eeeeee;
94
+ }
95
+
96
+ select {
97
+ background-color:#FFFFFF;
98
+ border:1px solid #cccccc;
99
+ font-size:.9em;
100
+ }
101
+
102
+ /** Sidebar **/
103
+ .blacklight-atrium_collections-edit .sidebar h2,
104
+ .blacklight-atrium_exhibits-edit .sidebar h2 {
105
+ margin-bottom:.3em;
106
+ }
107
+
108
+ .collection-controls,
109
+ .exhibit-controls {
110
+ margin-top:0;
111
+ }
112
+
113
+ .collection-controls li,
114
+ .exhibit-controls li {
115
+ list-style-type:none;
116
+ }
117
+
118
+ .facet-list .collection-title,
119
+ .facet-list .exhibit-title {
120
+ margin-bottom:0;
121
+ }
122
+
123
+ /** Banner **/
124
+ #prompt {
125
+ position:fixed;
126
+ top:3px;
127
+ left:3px;
128
+ text-align:center;
129
+ padding:1em .3em;
130
+ }
131
+
132
+ /** Pages **/
133
+ #show-description ul {
134
+ margin-left:0;
135
+ }
136
+
137
+ #show-description ul li {
138
+ list-style-type:none;
139
+ }
140
+
141
+ /** Lists **/
142
+ ol.sortable {
143
+ list-style-type:none;
144
+ margin:0;
145
+ padding:0;
146
+ width:72%;
147
+ }
148
+
149
+ ol.sortable li {
150
+ font-size: 1.2em;
151
+ height:1.2em;
152
+ margin:0 3px 3px;
153
+ padding-left:1.5em;
154
+ padding:.4em .4em .4em 1.5em;
155
+ }
156
+
157
+ ol.sortable li span {
158
+ position:absolute;
159
+ margin-left:-1.3em;
160
+ }
161
+
162
+ .sortable td.label {
163
+ padding-left:0;
164
+ width:5.5em;
165
+ }
166
+
167
+ /** Forms **/
168
+ form.atrium ol {
169
+ margin-left:0;
170
+ }
171
+
172
+ form.atrium ol li {
173
+ list-style-type:none;
174
+ }
175
+
176
+ form.atrium label {
177
+ display:block;
178
+ margin-top:1em;
179
+ }
180
+
181
+ form.atrium .inline {
182
+ margin-top:1em;
183
+ }
184
+
185
+ form.atrium .inline label {
186
+ display:inline;
187
+ margin-top:0;
188
+ }
189
+
190
+ form.atrium input[type=text],
191
+ form.atrium select {
192
+ width:72%;
193
+ }
194
+
195
+ form.atrium th {
196
+ text-align:left;
197
+ }
198
+
199
+ .chzn-container-multi .chzn-choices .search-choice .search-choice-close {
200
+ border-bottom:none;
201
+ }
202
+
203
+ ol.exhibit-listing {
204
+ margin-left:0;
205
+ padding:1em;
206
+ }
207
+
208
+ ol.exhibit-listing li {
209
+ position:relative;
210
+ list-style-type:none;
211
+ }
212
+
213
+ ol.exhibit-listing .controls {
214
+ position:absolute;
215
+ right:.6em;
216
+ }
@@ -0,0 +1,367 @@
1
+ /* @group Base */
2
+ .chzn-container {
3
+ font-size: 13px;
4
+ position: relative;
5
+ display: inline-block;
6
+ zoom: 1;
7
+ *display: inline;
8
+ }
9
+ .chzn-container .chzn-drop {
10
+ background: #fff;
11
+ border: 1px solid #aaa;
12
+ border-top: 0;
13
+ position: absolute;
14
+ top: 29px;
15
+ left: 0;
16
+ -webkit-box-shadow: 0 4px 5px rgba(0,0,0,.15);
17
+ -moz-box-shadow : 0 4px 5px rgba(0,0,0,.15);
18
+ -o-box-shadow : 0 4px 5px rgba(0,0,0,.15);
19
+ box-shadow : 0 4px 5px rgba(0,0,0,.15);
20
+ z-index: 999;
21
+ }
22
+ /* @end */
23
+
24
+ /* @group Single Chosen */
25
+ .chzn-container-single .chzn-single {
26
+ background-color: #fff;
27
+ background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0, #eeeeee), color-stop(0.5, white));
28
+ background-image: -webkit-linear-gradient(center bottom, #eeeeee 0%, white 50%);
29
+ background-image: -moz-linear-gradient(center bottom, #eeeeee 0%, white 50%);
30
+ background-image: -o-linear-gradient(top, #eeeeee 0%,#ffffff 50%);
31
+ background-image: -ms-linear-gradient(top, #eeeeee 0%,#ffffff 50%);
32
+ filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#eeeeee', endColorstr='#ffffff',GradientType=0 );
33
+ background-image: linear-gradient(top, #eeeeee 0%,#ffffff 50%);
34
+ -webkit-border-radius: 4px;
35
+ -moz-border-radius : 4px;
36
+ border-radius : 4px;
37
+ -moz-background-clip : padding;
38
+ -webkit-background-clip: padding-box;
39
+ background-clip : padding-box;
40
+ border: 1px solid #aaa;
41
+ display: block;
42
+ overflow: hidden;
43
+ white-space: nowrap;
44
+ position: relative;
45
+ height: 26px;
46
+ line-height: 26px;
47
+ padding: 0 0 0 8px;
48
+ color: #444;
49
+ text-decoration: none;
50
+ }
51
+ .chzn-container-single .chzn-single span {
52
+ margin-right: 26px;
53
+ display: block;
54
+ overflow: hidden;
55
+ white-space: nowrap;
56
+ -o-text-overflow: ellipsis;
57
+ -ms-text-overflow: ellipsis;
58
+ text-overflow: ellipsis;
59
+ }
60
+ .chzn-container-single .chzn-single abbr {
61
+ display: block;
62
+ position: absolute;
63
+ right: 26px;
64
+ top: 8px;
65
+ width: 12px;
66
+ height: 13px;
67
+ font-size: 1px;
68
+ background: url(chosen-sprite.png) right top no-repeat;
69
+ }
70
+ .chzn-container-single .chzn-single abbr:hover {
71
+ background-position: right -11px;
72
+ }
73
+ .chzn-container-single .chzn-single div {
74
+ -webkit-border-radius: 0 4px 4px 0;
75
+ -moz-border-radius : 0 4px 4px 0;
76
+ border-radius : 0 4px 4px 0;
77
+ -moz-background-clip : padding;
78
+ -webkit-background-clip: padding-box;
79
+ background-clip : padding-box;
80
+ background: #ccc;
81
+ background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0, #ccc), color-stop(0.6, #eee));
82
+ background-image: -webkit-linear-gradient(center bottom, #ccc 0%, #eee 60%);
83
+ background-image: -moz-linear-gradient(center bottom, #ccc 0%, #eee 60%);
84
+ background-image: -o-linear-gradient(bottom, #ccc 0%, #eee 60%);
85
+ background-image: -ms-linear-gradient(top, #cccccc 0%,#eeeeee 60%);
86
+ filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#cccccc', endColorstr='#eeeeee',GradientType=0 );
87
+ background-image: linear-gradient(top, #cccccc 0%,#eeeeee 60%);
88
+ border-left: 1px solid #aaa;
89
+ position: absolute;
90
+ right: 0;
91
+ top: 0;
92
+ display: block;
93
+ height: 100%;
94
+ width: 18px;
95
+ }
96
+ .chzn-container-single .chzn-single div b {
97
+ background: url('chosen-sprite.png') no-repeat 0 1px;
98
+ display: block;
99
+ width: 100%;
100
+ height: 100%;
101
+ }
102
+ .chzn-container-single .chzn-search {
103
+ padding: 3px 4px;
104
+ position: relative;
105
+ margin: 0;
106
+ white-space: nowrap;
107
+ z-index: 1010;
108
+ }
109
+ .chzn-container-single .chzn-search input {
110
+ background: #fff url('chosen-sprite.png') no-repeat 100% -22px;
111
+ background: url('chosen-sprite.png') no-repeat 100% -22px, -webkit-gradient(linear, left bottom, left top, color-stop(0.85, white), color-stop(0.99, #eeeeee));
112
+ background: url('chosen-sprite.png') no-repeat 100% -22px, -webkit-linear-gradient(center bottom, white 85%, #eeeeee 99%);
113
+ background: url('chosen-sprite.png') no-repeat 100% -22px, -moz-linear-gradient(center bottom, white 85%, #eeeeee 99%);
114
+ background: url('chosen-sprite.png') no-repeat 100% -22px, -o-linear-gradient(bottom, white 85%, #eeeeee 99%);
115
+ background: url('chosen-sprite.png') no-repeat 100% -22px, -ms-linear-gradient(top, #ffffff 85%,#eeeeee 99%);
116
+ background: url('chosen-sprite.png') no-repeat 100% -22px, linear-gradient(top, #ffffff 85%,#eeeeee 99%);
117
+ margin: 1px 0;
118
+ padding: 4px 20px 4px 5px;
119
+ outline: 0;
120
+ border: 1px solid #aaa;
121
+ font-family: sans-serif;
122
+ font-size: 1em;
123
+ }
124
+ .chzn-container-single .chzn-drop {
125
+ -webkit-border-radius: 0 0 4px 4px;
126
+ -moz-border-radius : 0 0 4px 4px;
127
+ border-radius : 0 0 4px 4px;
128
+ -moz-background-clip : padding;
129
+ -webkit-background-clip: padding-box;
130
+ background-clip : padding-box;
131
+ }
132
+ /* @end */
133
+
134
+ .chzn-container-single-nosearch .chzn-search input {
135
+ position: absolute;
136
+ left: -9000px;
137
+ }
138
+
139
+ /* @group Multi Chosen */
140
+ .chzn-container-multi .chzn-choices {
141
+ background-color: #fff;
142
+ background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0.85, white), color-stop(0.99, #eeeeee));
143
+ background-image: -webkit-linear-gradient(center bottom, white 85%, #eeeeee 99%);
144
+ background-image: -moz-linear-gradient(center bottom, white 85%, #eeeeee 99%);
145
+ background-image: -o-linear-gradient(bottom, white 85%, #eeeeee 99%);
146
+ background-image: -ms-linear-gradient(top, #ffffff 85%,#eeeeee 99%);
147
+ filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#eeeeee',GradientType=0 );
148
+ background-image: linear-gradient(top, #ffffff 85%,#eeeeee 99%);
149
+ border: 1px solid #aaa;
150
+ margin: 0;
151
+ padding: 0;
152
+ cursor: text;
153
+ overflow: hidden;
154
+ height: auto !important;
155
+ height: 1%;
156
+ position: relative;
157
+ }
158
+ .chzn-container-multi .chzn-choices li {
159
+ float: left;
160
+ list-style: none;
161
+ }
162
+ .chzn-container-multi .chzn-choices .search-field {
163
+ white-space: nowrap;
164
+ margin: 0;
165
+ padding: 0;
166
+ }
167
+ .chzn-container-multi .chzn-choices .search-field input {
168
+ color: #666;
169
+ background: transparent !important;
170
+ border: 0 !important;
171
+ padding: 5px;
172
+ margin: 1px 0;
173
+ outline: 0;
174
+ -webkit-box-shadow: none;
175
+ -moz-box-shadow : none;
176
+ -o-box-shadow : none;
177
+ box-shadow : none;
178
+ }
179
+ .chzn-container-multi .chzn-choices .search-field .default {
180
+ color: #999;
181
+ }
182
+ .chzn-container-multi .chzn-choices .search-choice {
183
+ -webkit-border-radius: 3px;
184
+ -moz-border-radius : 3px;
185
+ border-radius : 3px;
186
+ -moz-background-clip : padding;
187
+ -webkit-background-clip: padding-box;
188
+ background-clip : padding-box;
189
+ background-color: #e4e4e4;
190
+ background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0, #e4e4e4), color-stop(0.7, #eeeeee));
191
+ background-image: -webkit-linear-gradient(center bottom, #e4e4e4 0%, #eeeeee 70%);
192
+ background-image: -moz-linear-gradient(center bottom, #e4e4e4 0%, #eeeeee 70%);
193
+ background-image: -o-linear-gradient(bottom, #e4e4e4 0%, #eeeeee 70%);
194
+ background-image: -ms-linear-gradient(top, #e4e4e4 0%,#eeeeee 70%);
195
+ filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e4e4e4', endColorstr='#eeeeee',GradientType=0 );
196
+ background-image: linear-gradient(top, #e4e4e4 0%,#eeeeee 70%);
197
+ color: #333;
198
+ border: 1px solid #b4b4b4;
199
+ line-height: 13px;
200
+ padding: 3px 19px 3px 6px;
201
+ margin: 3px 0 3px 5px;
202
+ position: relative;
203
+ }
204
+ .chzn-container-multi .chzn-choices .search-choice span {
205
+ cursor: default;
206
+ }
207
+ .chzn-container-multi .chzn-choices .search-choice-focus {
208
+ background: #d4d4d4;
209
+ }
210
+ .chzn-container-multi .chzn-choices .search-choice .search-choice-close {
211
+ display: block;
212
+ position: absolute;
213
+ right: 3px;
214
+ top: 4px;
215
+ width: 12px;
216
+ height: 13px;
217
+ font-size: 1px;
218
+ background: url(chosen-sprite.png) right top no-repeat;
219
+ }
220
+ .chzn-container-multi .chzn-choices .search-choice .search-choice-close:hover {
221
+ background-position: right -11px;
222
+ }
223
+ .chzn-container-multi .chzn-choices .search-choice-focus .search-choice-close {
224
+ background-position: right -11px;
225
+ }
226
+ /* @end */
227
+
228
+ /* @group Results */
229
+ .chzn-container .chzn-results {
230
+ margin: 0 4px 4px 0;
231
+ max-height: 190px;
232
+ padding: 0 0 0 4px;
233
+ position: relative;
234
+ overflow-x: hidden;
235
+ overflow-y: auto;
236
+ }
237
+ .chzn-container-multi .chzn-results {
238
+ margin: -1px 0 0;
239
+ padding: 0;
240
+ }
241
+ .chzn-container .chzn-results li {
242
+ display: none;
243
+ line-height: 80%;
244
+ padding: 7px 7px 8px;
245
+ margin: 0;
246
+ list-style: none;
247
+ }
248
+ .chzn-container .chzn-results .active-result {
249
+ cursor: pointer;
250
+ display: list-item;
251
+ }
252
+ .chzn-container .chzn-results .highlighted {
253
+ background: #3875d7;
254
+ color: #fff;
255
+ }
256
+ .chzn-container .chzn-results li em {
257
+ background: #feffde;
258
+ font-style: normal;
259
+ }
260
+ .chzn-container .chzn-results .highlighted em {
261
+ background: transparent;
262
+ }
263
+ .chzn-container .chzn-results .no-results {
264
+ background: #f4f4f4;
265
+ display: list-item;
266
+ }
267
+ .chzn-container .chzn-results .group-result {
268
+ cursor: default;
269
+ color: #999;
270
+ font-weight: bold;
271
+ }
272
+ .chzn-container .chzn-results .group-option {
273
+ padding-left: 20px;
274
+ }
275
+ .chzn-container-multi .chzn-drop .result-selected {
276
+ display: none;
277
+ }
278
+ /* @end */
279
+
280
+ /* @group Active */
281
+ .chzn-container-active .chzn-single {
282
+ -webkit-box-shadow: 0 0 5px rgba(0,0,0,.3);
283
+ -moz-box-shadow : 0 0 5px rgba(0,0,0,.3);
284
+ -o-box-shadow : 0 0 5px rgba(0,0,0,.3);
285
+ box-shadow : 0 0 5px rgba(0,0,0,.3);
286
+ border: 1px solid #5897fb;
287
+ }
288
+ .chzn-container-active .chzn-single-with-drop {
289
+ border: 1px solid #aaa;
290
+ -webkit-box-shadow: 0 1px 0 #fff inset;
291
+ -moz-box-shadow : 0 1px 0 #fff inset;
292
+ -o-box-shadow : 0 1px 0 #fff inset;
293
+ box-shadow : 0 1px 0 #fff inset;
294
+ background-color: #eee;
295
+ background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0, white), color-stop(0.5, #eeeeee));
296
+ background-image: -webkit-linear-gradient(center bottom, white 0%, #eeeeee 50%);
297
+ background-image: -moz-linear-gradient(center bottom, white 0%, #eeeeee 50%);
298
+ background-image: -o-linear-gradient(bottom, white 0%, #eeeeee 50%);
299
+ background-image: -ms-linear-gradient(top, #ffffff 0%,#eeeeee 50%);
300
+ filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#eeeeee',GradientType=0 );
301
+ background-image: linear-gradient(top, #ffffff 0%,#eeeeee 50%);
302
+ -webkit-border-bottom-left-radius : 0;
303
+ -webkit-border-bottom-right-radius: 0;
304
+ -moz-border-radius-bottomleft : 0;
305
+ -moz-border-radius-bottomright: 0;
306
+ border-bottom-left-radius : 0;
307
+ border-bottom-right-radius: 0;
308
+ }
309
+ .chzn-container-active .chzn-single-with-drop div {
310
+ background: transparent;
311
+ border-left: none;
312
+ }
313
+ .chzn-container-active .chzn-single-with-drop div b {
314
+ background-position: -18px 1px;
315
+ }
316
+ .chzn-container-active .chzn-choices {
317
+ -webkit-box-shadow: 0 0 5px rgba(0,0,0,.3);
318
+ -moz-box-shadow : 0 0 5px rgba(0,0,0,.3);
319
+ -o-box-shadow : 0 0 5px rgba(0,0,0,.3);
320
+ box-shadow : 0 0 5px rgba(0,0,0,.3);
321
+ border: 1px solid #5897fb;
322
+ }
323
+ .chzn-container-active .chzn-choices .search-field input {
324
+ color: #111 !important;
325
+ }
326
+ /* @end */
327
+
328
+ /* @group Disabled Support */
329
+ .chzn-disabled {
330
+ cursor: default;
331
+ opacity:0.5 !important;
332
+ }
333
+ .chzn-disabled .chzn-single {
334
+ cursor: default;
335
+ }
336
+ .chzn-disabled .chzn-choices .search-choice .search-choice-close {
337
+ cursor: default;
338
+ }
339
+
340
+ /* @group Right to Left */
341
+ .chzn-rtl { direction:rtl;text-align: right; }
342
+ .chzn-rtl .chzn-single { padding-left: 0; padding-right: 8px; }
343
+ .chzn-rtl .chzn-single span { margin-left: 26px; margin-right: 0; }
344
+ .chzn-rtl .chzn-single div {
345
+ left: 0; right: auto;
346
+ border-left: none; border-right: 1px solid #aaaaaa;
347
+ -webkit-border-radius: 4px 0 0 4px;
348
+ -moz-border-radius : 4px 0 0 4px;
349
+ border-radius : 4px 0 0 4px;
350
+ }
351
+ .chzn-rtl .chzn-choices li { float: right; }
352
+ .chzn-rtl .chzn-choices .search-choice { padding: 3px 6px 3px 19px; margin: 3px 5px 3px 0; }
353
+ .chzn-rtl .chzn-choices .search-choice .search-choice-close { left: 5px; right: auto; background-position: right top;}
354
+ .chzn-rtl.chzn-container-single .chzn-results { margin-left: 4px; margin-right: 0; padding-left: 0; padding-right: 4px; }
355
+ .chzn-rtl .chzn-results .group-option { padding-left: 0; padding-right: 20px; }
356
+ .chzn-rtl.chzn-container-active .chzn-single-with-drop div { border-right: none; }
357
+ .chzn-rtl .chzn-search input {
358
+ background: url('chosen-sprite.png') no-repeat -38px -22px, #ffffff;
359
+ background: url('chosen-sprite.png') no-repeat -38px -22px, -webkit-gradient(linear, left bottom, left top, color-stop(0.85, white), color-stop(0.99, #eeeeee));
360
+ background: url('chosen-sprite.png') no-repeat -38px -22px, -webkit-linear-gradient(center bottom, white 85%, #eeeeee 99%);
361
+ background: url('chosen-sprite.png') no-repeat -38px -22px, -moz-linear-gradient(center bottom, white 85%, #eeeeee 99%);
362
+ background: url('chosen-sprite.png') no-repeat -38px -22px, -o-linear-gradient(bottom, white 85%, #eeeeee 99%);
363
+ background: url('chosen-sprite.png') no-repeat -38px -22px, -ms-linear-gradient(top, #ffffff 85%,#eeeeee 99%);
364
+ background: url('chosen-sprite.png') no-repeat -38px -22px, linear-gradient(top, #ffffff 85%,#eeeeee 99%);
365
+ padding: 4px 5px 4px 20px;
366
+ }
367
+ /* @end */