rademade_admin 0.0.1 → 0.0.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (186) hide show
  1. checksums.yaml +4 -4
  2. data/Rakefile +5 -12
  3. data/app/assets/javascripts/rademade_admin/app/common/related-index.coffee +5 -24
  4. data/app/assets/javascripts/rademade_admin/form/form-ajax-submit.coffee +4 -0
  5. data/app/assets/javascripts/rademade_admin.coffee +28 -7
  6. data/app/assets/stylesheets/rademade_admin/detail_admin/icons.scss.erb +1 -1
  7. data/app/assets/stylesheets/rademade_admin.scss.erb +19 -0
  8. data/app/controllers/rademade_admin/abstract_controller.rb +2 -0
  9. data/app/controllers/rademade_admin/admin_users_controller.rb +2 -1
  10. data/app/controllers/rademade_admin/application_controller.rb +3 -0
  11. data/app/controllers/rademade_admin/dashboard_controller.rb +1 -1
  12. data/app/controllers/rademade_admin/model_controller.rb +48 -25
  13. data/app/controllers/rademade_admin/sessions_controller.rb +2 -1
  14. data/app/helpers/rademade_admin/field_helper.rb +30 -3
  15. data/app/helpers/rademade_admin/form_helper.rb +12 -18
  16. data/app/helpers/rademade_admin/menu_helper.rb +2 -1
  17. data/app/helpers/rademade_admin/name_helper.rb +2 -1
  18. data/app/helpers/rademade_admin/upload_preview_helper.rb +2 -1
  19. data/app/helpers/rademade_admin/uri_helper.rb +16 -0
  20. data/app/inputs/rademade_admin/admin_file_input.rb +2 -1
  21. data/app/inputs/rademade_admin/admin_select_input.rb +2 -1
  22. data/app/inputs/rademade_admin/admin_textarea_input.rb +2 -1
  23. data/app/inputs/rademade_admin/boolean_input.rb +2 -1
  24. data/app/models/rademade_admin/ability.rb +1 -1
  25. data/app/serializers/autocomplete/base_serializer.rb +49 -0
  26. data/app/serializers/autocomplete/link_serializer.rb +20 -0
  27. data/app/services/form_builder.rb +2 -1
  28. data/app/services/linker.rb +34 -0
  29. data/app/services/loader_service.rb +2 -1
  30. data/app/services/login/error.rb +2 -1
  31. data/app/services/login.rb +2 -1
  32. data/app/services/model_controller/instance_options.rb +1 -0
  33. data/app/services/model_controller/model_options.rb +2 -1
  34. data/app/services/model_controller/notifier.rb +2 -1
  35. data/app/services/model_controller/templates.rb +10 -12
  36. data/app/services/saver.rb +2 -1
  37. data/app/services/search/conditions/abstract.rb +42 -38
  38. data/app/services/search/conditions/autocomplete.rb +34 -28
  39. data/app/services/search/conditions/list.rb +30 -23
  40. data/app/services/search/conditions/part/where.rb +28 -0
  41. data/app/services/search/conditions/related_list.rb +54 -0
  42. data/app/services/search/query_adapter/abstract.rb +30 -39
  43. data/app/services/search/query_adapter/active_record.rb +33 -21
  44. data/app/services/search/query_adapter/mongoid.rb +38 -20
  45. data/app/services/search/searcher.rb +5 -4
  46. data/app/services/sortable_service.rb +2 -1
  47. data/app/services/video_service.rb +2 -1
  48. data/app/views/rademade_admin/_blocks/_menu.html.erb +7 -1
  49. data/app/views/rademade_admin/_blocks/_sub_menu.html.erb +0 -8
  50. data/app/views/rademade_admin/_layouts/inner/related_index_table.html.erb +1 -2
  51. data/app/views/rademade_admin/abstract/index.html.erb +6 -5
  52. data/app/views/rademade_admin/abstract/related_index.html.erb +11 -4
  53. data/config/initializers/bower_rails.rb +6 -0
  54. data/config/initializers/devise.rb +1 -0
  55. data/config/initializers/formtastic.rb +13 -0
  56. data/config/initializers/routes.rb +2 -1
  57. data/config/routes.rb +2 -1
  58. data/lib/rademade_admin/bower/performer.rb +14 -0
  59. data/lib/rademade_admin/configuration.rb +2 -1
  60. data/lib/rademade_admin/engine.rb +5 -1
  61. data/lib/rademade_admin/file_info_formatter.rb +2 -1
  62. data/lib/rademade_admin/hrml_buffer.rb +2 -1
  63. data/lib/rademade_admin/model/configuration/fields.rb +2 -1
  64. data/lib/rademade_admin/model/configuration.rb +2 -1
  65. data/lib/rademade_admin/model/data_adapter/active_record.rb +10 -4
  66. data/lib/rademade_admin/model/data_adapter/mongoid.rb +6 -1
  67. data/lib/rademade_admin/model/data_adapter.rb +6 -1
  68. data/lib/rademade_admin/model/graph.rb +2 -1
  69. data/lib/rademade_admin/model/info.rb +4 -3
  70. data/lib/rademade_admin/model/reflection/data.rb +2 -1
  71. data/lib/rademade_admin/model/reflection/uploader.rb +2 -2
  72. data/lib/rademade_admin/model/reflection.rb +5 -13
  73. data/lib/rademade_admin/routing/mapper.rb +4 -1
  74. data/lib/rademade_admin/routing/resource.rb +2 -1
  75. data/lib/rademade_admin/routing.rb +2 -1
  76. data/lib/rademade_admin/sortable.rb +1 -0
  77. data/lib/rademade_admin/uploader/photo.rb +2 -1
  78. data/lib/rademade_admin/uploader/video.rb +2 -1
  79. data/lib/rademade_admin/user.rb +1 -0
  80. data/lib/rademade_admin/version.rb +2 -1
  81. data/lib/rademade_admin.rb +8 -6
  82. data/lib/tasks/rademade_bower_install.rake +9 -0
  83. metadata +92 -339
  84. data/MIT-LICENSE +0 -20
  85. data/app/assets/fonts/rademade_admin/glyphicons-halflings-regular.eot +0 -0
  86. data/app/assets/fonts/rademade_admin/glyphicons-halflings-regular.svg +0 -228
  87. data/app/assets/fonts/rademade_admin/glyphicons-halflings-regular.ttf +0 -0
  88. data/app/assets/fonts/rademade_admin/glyphicons-halflings-regular.woff +0 -0
  89. data/app/assets/images/rademade_admin/datatables/back_disabled.png +0 -0
  90. data/app/assets/images/rademade_admin/datatables/back_enabled.png +0 -0
  91. data/app/assets/images/rademade_admin/datatables/back_enabled_hover.png +0 -0
  92. data/app/assets/images/rademade_admin/datatables/forward_disabled.png +0 -0
  93. data/app/assets/images/rademade_admin/datatables/forward_enabled.png +0 -0
  94. data/app/assets/images/rademade_admin/datatables/forward_enabled_hover.png +0 -0
  95. data/app/assets/images/rademade_admin/datatables/sort_asc.png +0 -0
  96. data/app/assets/images/rademade_admin/datatables/sort_asc_disabled.png +0 -0
  97. data/app/assets/images/rademade_admin/datatables/sort_both.png +0 -0
  98. data/app/assets/images/rademade_admin/datatables/sort_desc.png +0 -0
  99. data/app/assets/images/rademade_admin/datatables/sort_desc_disabled.png +0 -0
  100. data/app/assets/images/rademade_admin/jquery-ui/animated-overlay.gif +0 -0
  101. data/app/assets/images/rademade_admin/jquery-ui/ui-bg_diagonals-thick_18_b81900_40x40.png +0 -0
  102. data/app/assets/images/rademade_admin/jquery-ui/ui-bg_diagonals-thick_20_666666_40x40.png +0 -0
  103. data/app/assets/images/rademade_admin/jquery-ui/ui-bg_flat_10_000000_40x100.png +0 -0
  104. data/app/assets/images/rademade_admin/jquery-ui/ui-bg_glass_100_f6f6f6_1x400.png +0 -0
  105. data/app/assets/images/rademade_admin/jquery-ui/ui-bg_glass_100_fdf5ce_1x400.png +0 -0
  106. data/app/assets/images/rademade_admin/jquery-ui/ui-bg_glass_65_ffffff_1x400.png +0 -0
  107. data/app/assets/images/rademade_admin/jquery-ui/ui-bg_gloss-wave_35_f6a828_500x100.png +0 -0
  108. data/app/assets/images/rademade_admin/jquery-ui/ui-bg_highlight-soft_100_eeeeee_1x100.png +0 -0
  109. data/app/assets/images/rademade_admin/jquery-ui/ui-bg_highlight-soft_75_ffe45c_1x100.png +0 -0
  110. data/app/assets/images/rademade_admin/jquery-ui/ui-icons_222222_256x240.png +0 -0
  111. data/app/assets/images/rademade_admin/jquery-ui/ui-icons_228ef1_256x240.png +0 -0
  112. data/app/assets/images/rademade_admin/jquery-ui/ui-icons_ef8c08_256x240.png +0 -0
  113. data/app/assets/images/rademade_admin/jquery-ui/ui-icons_ffd27a_256x240.png +0 -0
  114. data/app/assets/images/rademade_admin/jquery-ui/ui-icons_ffffff_256x240.png +0 -0
  115. data/app/assets/images/rademade_admin/select2/select2.png +0 -0
  116. data/app/assets/images/rademade_admin/select2/select2x2.png +0 -0
  117. data/app/assets/images/rademade_admin/select2/spinner.gif +0 -0
  118. data/app/assets/images/rademade_admin/uniform/bg-input-focus.png +0 -0
  119. data/app/assets/images/rademade_admin/uniform/bg-input.png +0 -0
  120. data/app/assets/images/rademade_admin/uniform/sprite.png +0 -0
  121. data/app/assets/javascripts/rademade_admin/form/library/jquery.form-serialize.js +0 -54
  122. data/app/assets/javascripts/rademade_admin/form/library/jquery.form.js +0 -1121
  123. data/app/assets/javascripts/rademade_admin/form/library/jquery.formrestrict.js +0 -27
  124. data/app/assets/javascripts/rademade_admin/form/library/jquery.validate.js +0 -1231
  125. data/app/assets/javascripts/rademade_admin/form/library/jquery.validate.messages_ru.js +0 -27
  126. data/app/assets/javascripts/rademade_admin/library/backbone.js +0 -1581
  127. data/app/assets/javascripts/rademade_admin/library/bootstrap/bootstrap.datepicker.js +0 -989
  128. data/app/assets/javascripts/rademade_admin/library/bootstrap/bootstrap.js +0 -1992
  129. data/app/assets/javascripts/rademade_admin/library/jquery/jquery-ui-1.10.4.custom.min.js +0 -6
  130. data/app/assets/javascripts/rademade_admin/library/jquery/jquery.dataTables.js +0 -12099
  131. data/app/assets/javascripts/rademade_admin/library/jquery/jquery.flot.js +0 -2960
  132. data/app/assets/javascripts/rademade_admin/library/jquery/jquery.flot.resize.js +0 -60
  133. data/app/assets/javascripts/rademade_admin/library/jquery/jquery.flot.stack.js +0 -188
  134. data/app/assets/javascripts/rademade_admin/library/jquery/jquery.knob.js +0 -661
  135. data/app/assets/javascripts/rademade_admin/library/jquery/jquery.uniform.min.js +0 -1
  136. data/app/assets/javascripts/rademade_admin/library/notifier.custom.js +0 -431
  137. data/app/assets/javascripts/rademade_admin/library/underscore.js +0 -1276
  138. data/app/assets/javascripts/rademade_admin/library/wysihtml5-0.3.0.js +0 -9463
  139. data/app/assets/stylesheets/rademade_admin/bootstrap/bootstrap.css.erb +0 -5911
  140. data/app/assets/stylesheets/rademade_admin/lib/jquery-ui-1.10.2.custom.css.erb +0 -544
  141. data/app/assets/stylesheets/rademade_admin/lib/select2.css.erb +0 -513
  142. data/app/assets/stylesheets/rademade_admin/lib/uniform.default.css.erb +0 -366
  143. data/app/assets/stylesheets/rademade_admin.css +0 -14
  144. data/app/models/rademade_admin/user.rb +0 -6
  145. data/app/serializers/autocomplete_serializer.rb +0 -46
  146. data/app/services/model_controller/linker.rb +0 -49
  147. data/test/dummy/README.rdoc +0 -28
  148. data/test/dummy/Rakefile +0 -6
  149. data/test/dummy/app/assets/javascripts/application.js +0 -13
  150. data/test/dummy/app/assets/stylesheets/application.css +0 -13
  151. data/test/dummy/app/controllers/application_controller.rb +0 -5
  152. data/test/dummy/app/controllers/rademade_admin/posts_controller.rb +0 -9
  153. data/test/dummy/app/controllers/rademade_admin/users_controller.rb +0 -14
  154. data/test/dummy/app/helpers/application_helper.rb +0 -2
  155. data/test/dummy/app/models/post.rb +0 -9
  156. data/test/dummy/app/models/user.rb +0 -7
  157. data/test/dummy/app/views/layouts/application.html.erb +0 -14
  158. data/test/dummy/bin/bundle +0 -3
  159. data/test/dummy/bin/rails +0 -4
  160. data/test/dummy/bin/rake +0 -4
  161. data/test/dummy/config/application.rb +0 -29
  162. data/test/dummy/config/boot.rb +0 -5
  163. data/test/dummy/config/environment.rb +0 -5
  164. data/test/dummy/config/environments/development.rb +0 -29
  165. data/test/dummy/config/environments/production.rb +0 -80
  166. data/test/dummy/config/environments/test.rb +0 -36
  167. data/test/dummy/config/initializers/backtrace_silencers.rb +0 -7
  168. data/test/dummy/config/initializers/filter_parameter_logging.rb +0 -4
  169. data/test/dummy/config/initializers/inflections.rb +0 -16
  170. data/test/dummy/config/initializers/mime_types.rb +0 -5
  171. data/test/dummy/config/initializers/rademade_admin.rb +0 -3
  172. data/test/dummy/config/initializers/secret_token.rb +0 -12
  173. data/test/dummy/config/initializers/session_store.rb +0 -3
  174. data/test/dummy/config/initializers/wrap_parameters.rb +0 -14
  175. data/test/dummy/config/locales/en.yml +0 -23
  176. data/test/dummy/config/mongoid.yml +0 -6
  177. data/test/dummy/config/routes.rb +0 -8
  178. data/test/dummy/config.ru +0 -4
  179. data/test/dummy/db/development.sqlite3 +0 -0
  180. data/test/dummy/public/404.html +0 -58
  181. data/test/dummy/public/422.html +0 -58
  182. data/test/dummy/public/500.html +0 -57
  183. data/test/dummy/public/favicon.ico +0 -0
  184. data/test/integration/navigation_test.rb +0 -10
  185. data/test/rademade_admin_test.rb +0 -7
  186. data/test/test_helper.rb +0 -15
@@ -1,366 +0,0 @@
1
- /*
2
-
3
- Uniform Theme: Uniform Default
4
- Version: 1.8
5
- By: Josh Pyles
6
- License: MIT License
7
- ---
8
- For use with the Uniform plugin:
9
- http://uniformjs.com/
10
-
11
- */
12
- /* General settings */
13
- div.selector, div.selector span, div.checker span, div.radio span, div.uploader, div.uploader span.action, div.button, div.button span {
14
- background-image: url("<%=image_path('rademade_admin/uniform/sprite.png')%>");
15
- background-repeat: no-repeat;
16
- -webkit-font-smoothing: antialiased; }
17
- div.selector, div.checker, div.button, div.radio, div.uploader {
18
- display: -moz-inline-box;
19
- display: inline-block;
20
- *display: inline;
21
- zoom: 1;
22
- vertical-align: middle;
23
- /* Keeping this as :focus to remove browser styles */ }
24
- div.selector:focus, div.checker:focus, div.button:focus, div.radio:focus, div.uploader:focus {
25
- outline: 0; }
26
- div.selector, div.selector *, div.radio, div.radio *, div.checker, div.checker *, div.uploader, div.uploader *, div.button, div.button * {
27
- margin: 0;
28
- padding: 0; }
29
-
30
- .highContrastDetect {
31
- background: url("<%=image_path('rademade_admin//uniform/bg-input.png')%>") repeat-x 0 0;
32
- width: 0px;
33
- height: 0px; }
34
-
35
- /* Input & Textarea */
36
- input.uniform-input,
37
- select.uniform-multiselect,
38
- textarea.uniform {
39
- padding: 3px;
40
- background: url("<%=image_path('rademade_admin//uniform/bg-input.png')%>") repeat-x 0 0;
41
- outline: 0; }
42
- input.uniform-input.active,
43
- select.uniform-multiselect.active,
44
- textarea.uniform.active {
45
- background: url("<%=image_path('rademade_admin//uniform/bg-input-focus.png')%>") repeat-x 0 0; }
46
-
47
- /* Remove default webkit and possible mozilla .search styles.
48
- * Keeping this as :active to remove browser styles */
49
- div.checker input,
50
- input[type="search"],
51
- input[type="search"]:active {
52
- -moz-appearance: none;
53
- -webkit-appearance: none; }
54
-
55
- /* Select */
56
- div.selector {
57
- background-position: 0 -130px;
58
- line-height: 26px;
59
- height: 26px;
60
- padding: 0 0 0 10px;
61
- position: relative;
62
- overflow: hidden; }
63
- div.selector span {
64
- text-overflow: ellipsis;
65
- display: block;
66
- overflow: hidden;
67
- white-space: nowrap;
68
- background-position: right 0;
69
- height: 26px;
70
- line-height: 26px;
71
- padding-right: 25px;
72
- cursor: pointer;
73
- width: 100%;
74
- display: block; }
75
- div.selector.fixedWidth {
76
- width: 190px; }
77
- div.selector.fixedWidth span {
78
- width: 155px; }
79
- div.selector select {
80
- opacity: 0;
81
- filter: alpha(opacity=0);
82
- -moz-opacity: 0;
83
- border: none;
84
- background: none;
85
- position: absolute;
86
- height: 22px;
87
- top: 2px;
88
- left: 0px;
89
- width: 100%; }
90
- div.selector.active {
91
- background-position: 0 -156px; }
92
- div.selector.active span {
93
- background-position: right -26px; }
94
- div.selector.hover, div.selector.focus {
95
- background-position: 0 -182px; }
96
- div.selector.hover span, div.selector.focus span {
97
- background-position: right -52px; }
98
- div.selector.hover.active, div.selector.focus.active {
99
- background-position: 0 -208px; }
100
- div.selector.hover.active span, div.selector.focus.active span {
101
- background-position: right -78px; }
102
- div.selector.disabled, div.selector.disabled.active {
103
- background-position: 0 -234px; }
104
- div.selector.disabled span, div.selector.disabled.active span {
105
- background-position: right -104px; }
106
-
107
- /* Checkbox */
108
- div.checker {
109
- position: relative; }
110
- div.checker, div.checker span, div.checker input {
111
- width: 19px;
112
- height: 19px; }
113
- div.checker span {
114
- display: -moz-inline-box;
115
- display: inline-block;
116
- *display: inline;
117
- zoom: 1;
118
- text-align: center;
119
- background-position: 0 -260px; }
120
- div.checker span.checked {
121
- background-position: -76px -260px; }
122
- div.checker input {
123
- opacity: 0;
124
- filter: alpha(opacity=0);
125
- -moz-opacity: 0;
126
- border: none;
127
- background: none;
128
- display: -moz-inline-box;
129
- display: inline-block;
130
- *display: inline;
131
- zoom: 1; }
132
- div.checker.active span {
133
- background-position: -19px -260px; }
134
- div.checker.active span.checked {
135
- background-position: -95px -260px; }
136
- div.checker.hover span, div.checker.focus span {
137
- background-position: -38px -260px; }
138
- div.checker.hover span.checked, div.checker.focus span.checked {
139
- background-position: -114px -260px; }
140
- div.checker.hover.active span, div.checker.focus.active span {
141
- background-position: -57px -260px; }
142
- div.checker.hover.active span.checked, div.checker.focus.active span.checked {
143
- background-position: -133px -260px; }
144
- div.checker.disabled, div.checker.disabled.active {
145
- background-position: -152px -260px; }
146
- div.checker.disabled span.checked, div.checker.disabled.active span.checked {
147
- background-position: -171px -260px; }
148
-
149
- /* Radio */
150
- div.radio {
151
- position: relative; }
152
- div.radio, div.radio span, div.radio input {
153
- width: 18px;
154
- height: 18px; }
155
- div.radio span {
156
- display: -moz-inline-box;
157
- display: inline-block;
158
- *display: inline;
159
- zoom: 1;
160
- text-align: center;
161
- background-position: 0 -279px; }
162
- div.radio span.checked {
163
- background-position: -72px -279px; }
164
- div.radio input {
165
- opacity: 0;
166
- filter: alpha(opacity=0);
167
- -moz-opacity: 0;
168
- border: none;
169
- background: none;
170
- display: -moz-inline-box;
171
- display: inline-block;
172
- *display: inline;
173
- zoom: 1;
174
- text-align: center; }
175
- div.radio.active span {
176
- background-position: -18px -18px -279px; }
177
- div.radio.active span.checked {
178
- background-position: -90px -279px; }
179
- div.radio.hover span, div.radio.focus span {
180
- background-position: -36px -36px -279px; }
181
- div.radio.hover span.checked, div.radio.focus span.checked {
182
- background-position: -108px -279px; }
183
- div.radio.hover.active span, div.radio.focus.active span {
184
- background-position: -54px -279px; }
185
- div.radio.hover.active span.checked, div.radio.focus.active span.checked {
186
- background-position: -126px -279px; }
187
- div.radio.disabled span, div.radio.disabled.active span {
188
- background-position: -144px -279px; }
189
- div.radio.disabled span.checked, div.radio.disabled.active span.checked {
190
- background-position: -162px -279px; }
191
-
192
- /* Uploader */
193
- div.uploader {
194
- background-position: 0 -297px;
195
- height: 28px;
196
- width: 190px;
197
- cursor: pointer;
198
- position: relative;
199
- overflow: hidden; }
200
- div.uploader span.action {
201
- background-position: right -409px;
202
- height: 28px;
203
- line-height: 28px;
204
- width: 82px;
205
- text-align: center;
206
- float: left;
207
- display: inline;
208
- overflow: hidden;
209
- cursor: pointer; }
210
- div.uploader span.filename {
211
- text-overflow: ellipsis;
212
- display: block;
213
- overflow: hidden;
214
- white-space: nowrap;
215
- float: left;
216
- cursor: default;
217
- height: 24px;
218
- margin: 2px 0 2px 2px;
219
- line-height: 24px;
220
- width: 85px;
221
- padding: 0 10px; }
222
- div.uploader input {
223
- opacity: 0;
224
- filter: alpha(opacity=0);
225
- -moz-opacity: 0;
226
- border: none;
227
- background: none;
228
- position: absolute;
229
- top: 0;
230
- right: 0;
231
- float: right;
232
- cursor: default;
233
- width: 100%;
234
- height: 100%; }
235
- div.uploader.active span.action {
236
- background-position: right -465px; }
237
- div.uploader.hover, div.uploader.focus {
238
- background-position: 0 -353px; }
239
- div.uploader.hover span.action, div.uploader.focus span.action {
240
- background-position: right -437px; }
241
- div.uploader.hover.active span.action, div.uploader.focus.active span.action {
242
- background-position: right -493px; }
243
- div.uploader.disabled, div.uploader.disabled.active {
244
- background-position: 0 -325px; }
245
- div.uploader.disabled span.action, div.uploader.disabled.active span.action {
246
- background-position: right -381px; }
247
-
248
- /* Buttons */
249
- div.button {
250
- background-position: 0 -641px;
251
- height: 30px;
252
- cursor: pointer;
253
- position: relative;
254
- /* Keep buttons barely visible so they can get focus */ }
255
- div.button a, div.button button, div.button input {
256
- opacity: 0.01;
257
- filter: alpha(opacity=1);
258
- -moz-opacity: 0.01;
259
- display: block;
260
- top: 0;
261
- left: 0;
262
- right: 0;
263
- bottom: 0;
264
- position: absolute; }
265
- div.button span {
266
- display: -moz-inline-box;
267
- display: inline-block;
268
- *display: inline;
269
- zoom: 1;
270
- line-height: 22px;
271
- text-align: center;
272
- background-position: right -521px;
273
- height: 22px;
274
- margin-left: 13px;
275
- padding: 8px 15px 0 2px; }
276
- div.button.active {
277
- background-position: 0 -671px; }
278
- div.button.active span {
279
- background-position: right -551px;
280
- cursor: default; }
281
- div.button.hover, div.button.focus {
282
- background-position: 0 -701px; }
283
- div.button.hover span, div.button.focus span {
284
- background-position: right -581px; }
285
- div.button.disabled, div.button.disabled.active {
286
- background-position: 0 -731px; }
287
- div.button.disabled span, div.button.disabled.active span {
288
- background-position: right -611px;
289
- cursor: default; }
290
-
291
- /* INPUT & TEXTAREA */
292
- input.uniform-input,
293
- select.uniform-multiselect,
294
- textarea.uniform {
295
- font-size: 12px;
296
- font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;
297
- font-weight: normal;
298
- color: #777;
299
- border-top: solid 1px #aaaaaa;
300
- border-left: solid 1px #aaaaaa;
301
- border-bottom: solid 1px #cccccc;
302
- border-right: solid 1px #cccccc;
303
- -webkit-border-radius: 3px;
304
- -moz-border-radius: 3px;
305
- border-radius: 3px; }
306
- input.uniform-input.hover, input.uniform-input.focus,
307
- select.uniform-multiselect.hover,
308
- select.uniform-multiselect.focus,
309
- textarea.uniform.hover,
310
- textarea.uniform.focus {
311
- -webkit-box-shadow: 0px 0px 4px rgba(0, 0, 0, 0.3);
312
- -moz-box-shadow: 0px 0px 4px rgba(0, 0, 0, 0.3);
313
- box-shadow: 0px 0px 4px rgba(0, 0, 0, 0.3);
314
- border-color: #999; }
315
-
316
- /* PRESENTATION */
317
- /* Buttons */
318
- div.button span {
319
- font-weight: bold;
320
- font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;
321
- font-size: 12px;
322
- letter-spacing: 1px;
323
- text-transform: uppercase; }
324
- div.button.hover span, div.button.focus span {
325
- color: #555; }
326
- div.button.disabled span, div.button.disabled.active span {
327
- color: #bbb; }
328
-
329
- /* Select */
330
- div.selector {
331
- font-size: 12px; }
332
- div.selector span {
333
- color: #666;
334
- text-shadow: 0 1px 0 white; }
335
- div.selector select {
336
- font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;
337
- font-size: 12px; }
338
- div.selector.disabled span, div.selector.disabled.active span {
339
- color: #bbb; }
340
-
341
- /* Checker */
342
- div.checker {
343
- margin-right: 5px; }
344
-
345
- /* Radio */
346
- div.radio {
347
- margin-right: 3px; }
348
-
349
- /* Uploader */
350
- div.uploader span.action {
351
- text-shadow: white 0px 1px 0px;
352
- background-color: #fff;
353
- font-size: 11px;
354
- font-weight: bold; }
355
- div.uploader span.filename {
356
- color: #777;
357
- border-right: solid 1px #bbbbbb;
358
- font-size: 11px; }
359
- div.uploader.disabled span.action, div.uploader.disabled.active span.action {
360
- color: #aaa; }
361
- div.uploader.disabled span.filename, div.uploader.disabled.active span.filename {
362
- border-color: #ddd;
363
- color: #aaa; }
364
-
365
- input.uniform-input, input.uniform-input:focus {
366
- background-color: #fff; }
@@ -1,14 +0,0 @@
1
- /*
2
- *= require jquery.fileupload-ui
3
- *= require select2
4
- *= require_tree ./rademade_admin
5
- */
6
-
7
- .cke_chrome {
8
- width: 76% !important;
9
- overflow: hidden;
10
- }
11
-
12
- #sidebar-nav #dashboard-menu ul.submenu {
13
- margin-left: -7px;
14
- }
@@ -1,6 +0,0 @@
1
- module RademadeAdmin
2
- class User
3
- include RademadeAdmin::UserModule
4
-
5
- end
6
- end
@@ -1,46 +0,0 @@
1
- ##
2
- # Class: AutocompleteSerializer
3
- #
4
- # Creates hash (ready for JSON serialization) with
5
- # pairs of id => value to show in the autocomplete
6
- # select UI.
7
- #
8
- # The output format of to_json is optimized for 'Select2'
9
- # autocomplete UI.
10
- #
11
- # It would generate JSON of models :id and :text. Text is determined by
12
- # #to_autocomplete method, or by #to_s.
13
- class AutocompleteSerializer
14
- include RademadeAdmin::UriHelper
15
-
16
- def as_json
17
- build_json
18
- end
19
-
20
- # args are left for backward compatibility
21
- # to Rails :json renderer
22
- def to_json(*args)
23
- as_json.to_json
24
- end
25
-
26
- private
27
-
28
- attr_reader :collection
29
-
30
- def initialize(collection)
31
- @collection = collection
32
- end
33
-
34
- def build_json
35
- items = []
36
- collection.each do |member|
37
- items << {
38
- :id => member.id.to_s,
39
- :text => (member.respond_to?(:to_autocomplete) ? member.to_autocomplete : member.to_s),
40
- :edit_url => admin_edit_form_uri(member)
41
- }
42
- end
43
- items
44
- end
45
-
46
- end
@@ -1,49 +0,0 @@
1
- module RademadeAdmin
2
- module Linker
3
-
4
- def link(item)
5
- if has_one_relation?
6
- set_attribute(item, params[:parent_id])
7
- else
8
- old_data = get_attribute(item)
9
- old_data << params[:parent_id]
10
- set_attribute(item, old_data)
11
- end
12
-
13
- end
14
-
15
- def unlink(item)
16
- if has_one_relation?
17
- set_attribute(item, nil)
18
- else
19
- old_data = get_attribute(item)
20
- new_data = old_data - Array(params[:parent_id])
21
- set_attribute(item, new_data)
22
- end
23
-
24
- end
25
-
26
- private
27
-
28
- def has_one_relation?
29
- model_info.has_one.include? params[:parent]
30
- end
31
-
32
- def relation_suffix
33
- has_one_relation? ? '_id' : '_ids'
34
- end
35
-
36
- def get_attribute(item)
37
- item.send(relation_field)
38
- end
39
-
40
- def relation_field
41
- params[:parent].downcase + relation_suffix
42
- end
43
-
44
- def set_attribute(item, new_value)
45
- item.send(relation_field + '=', new_value)
46
- end
47
-
48
- end
49
- end