typus-rails4 4.0.0.beta6

Sign up to get free protection for your applications and to get access to all the features.
Files changed (198) hide show
  1. checksums.yaml +7 -0
  2. data/CHANGELOG.md +488 -0
  3. data/Gemfile +57 -0
  4. data/Gemfile.lock +253 -0
  5. data/MIT-LICENSE +20 -0
  6. data/README.md +101 -0
  7. data/Rakefile +51 -0
  8. data/app/assets/javascripts/typus/application.js +11 -0
  9. data/app/assets/javascripts/typus/custom.js +2 -0
  10. data/app/assets/javascripts/typus/jquery-2.1.1.min.js +4 -0
  11. data/app/assets/javascripts/typus/jquery.application.js +30 -0
  12. data/app/assets/stylesheets/typus/application.css +6 -0
  13. data/app/assets/stylesheets/typus/custom.scss +4 -0
  14. data/app/assets/stylesheets/typus/overrides.scss +10 -0
  15. data/app/assets/stylesheets/typus/signin.scss +45 -0
  16. data/app/controllers/admin/account_controller.rb +47 -0
  17. data/app/controllers/admin/base_controller.rb +40 -0
  18. data/app/controllers/admin/dashboard_controller.rb +6 -0
  19. data/app/controllers/admin/resource_controller.rb +8 -0
  20. data/app/controllers/admin/resources_controller.rb +268 -0
  21. data/app/controllers/admin/session_controller.rb +43 -0
  22. data/app/controllers/concerns/admin/actions.rb +88 -0
  23. data/app/controllers/concerns/admin/acts_as_list.rb +35 -0
  24. data/app/controllers/concerns/admin/ancestry.rb +26 -0
  25. data/app/controllers/concerns/admin/autocomplete.rb +11 -0
  26. data/app/controllers/concerns/admin/bulk.rb +76 -0
  27. data/app/controllers/concerns/admin/featured_image.rb +22 -0
  28. data/app/controllers/concerns/admin/filters.rb +57 -0
  29. data/app/controllers/concerns/admin/format.rb +49 -0
  30. data/app/controllers/concerns/admin/headless.rb +23 -0
  31. data/app/controllers/concerns/admin/hooks.rb +4 -0
  32. data/app/controllers/concerns/admin/multisite.rb +10 -0
  33. data/app/controllers/concerns/admin/navigation.rb +27 -0
  34. data/app/controllers/concerns/admin/trash.rb +65 -0
  35. data/app/helpers/admin/base_helper.rb +78 -0
  36. data/app/helpers/admin/resources/data_types/belongs_to_helper.rb +88 -0
  37. data/app/helpers/admin/resources/data_types/boolean_helper.rb +33 -0
  38. data/app/helpers/admin/resources/data_types/date_helper.rb +16 -0
  39. data/app/helpers/admin/resources/data_types/datetime_helper.rb +19 -0
  40. data/app/helpers/admin/resources/data_types/dragonfly_helper.rb +49 -0
  41. data/app/helpers/admin/resources/data_types/float_helper.rb +2 -0
  42. data/app/helpers/admin/resources/data_types/has_and_belongs_to_many_helper.rb +59 -0
  43. data/app/helpers/admin/resources/data_types/has_many_helper.rb +76 -0
  44. data/app/helpers/admin/resources/data_types/has_one_helper.rb +44 -0
  45. data/app/helpers/admin/resources/data_types/integer_helper.rb +13 -0
  46. data/app/helpers/admin/resources/data_types/paperclip_helper.rb +49 -0
  47. data/app/helpers/admin/resources/data_types/selector_helper.rb +11 -0
  48. data/app/helpers/admin/resources/data_types/string_helper.rb +38 -0
  49. data/app/helpers/admin/resources/data_types/text_helper.rb +6 -0
  50. data/app/helpers/admin/resources/data_types/transversal_helper.rb +8 -0
  51. data/app/helpers/admin/resources/data_types/tree_helper.rb +28 -0
  52. data/app/helpers/admin/resources/display_helper.rb +27 -0
  53. data/app/helpers/admin/resources/filters_helper.rb +18 -0
  54. data/app/helpers/admin/resources/form_helper.rb +85 -0
  55. data/app/helpers/admin/resources/list_helper.rb +31 -0
  56. data/app/helpers/admin/resources/pagination_helper.rb +28 -0
  57. data/app/helpers/admin/resources/relationships_helper.rb +33 -0
  58. data/app/helpers/admin/resources/sidebar_helper.rb +34 -0
  59. data/app/helpers/admin/resources/table_helper.rb +69 -0
  60. data/app/helpers/admin/resources_helper.rb +25 -0
  61. data/app/mailers/admin/mailer.rb +19 -0
  62. data/app/views/admin/account/_form.html.erb +17 -0
  63. data/app/views/admin/account/forgot_password.html.erb +16 -0
  64. data/app/views/admin/account/new.html.erb +10 -0
  65. data/app/views/admin/dashboard/_sidebar.html.erb +14 -0
  66. data/app/views/admin/dashboard/index.html.erb +8 -0
  67. data/app/views/admin/dashboard/styles.html.erb +153 -0
  68. data/app/views/admin/dashboard/widgets/_applications.html.erb +44 -0
  69. data/app/views/admin/dashboard/widgets/_default.html.erb +43 -0
  70. data/app/views/admin/dashboard/widgets/_models.html.erb +23 -0
  71. data/app/views/admin/dashboard/widgets/_models_extended.html.erb +25 -0
  72. data/app/views/admin/dashboard/widgets/_resources.html.erb +23 -0
  73. data/app/views/admin/dashboard/widgets/_users.html.erb +23 -0
  74. data/app/views/admin/mailer/reset_password_instructions.html.erb +7 -0
  75. data/app/views/admin/mailer/reset_password_instructions.text.erb +7 -0
  76. data/app/views/admin/resource/_sidebar.html.erb +14 -0
  77. data/app/views/admin/resources/_edit.html.erb +0 -0
  78. data/app/views/admin/resources/_form.html.erb +28 -0
  79. data/app/views/admin/resources/_form_javascripts.html.erb +0 -0
  80. data/app/views/admin/resources/_form_modal.html.erb +13 -0
  81. data/app/views/admin/resources/_index.html.erb +0 -0
  82. data/app/views/admin/resources/_new.html.erb +0 -0
  83. data/app/views/admin/resources/_pagination.html.erb +15 -0
  84. data/app/views/admin/resources/_show.html.erb +0 -0
  85. data/app/views/admin/resources/_sidebar.html.erb +1 -0
  86. data/app/views/admin/resources/destroy.html.erb +16 -0
  87. data/app/views/admin/resources/edit.html.erb +22 -0
  88. data/app/views/admin/resources/edit/_actions.html.erb +7 -0
  89. data/app/views/admin/resources/edit/_recently_edited.html.erb +8 -0
  90. data/app/views/admin/resources/index.html.erb +29 -0
  91. data/app/views/admin/resources/new.html.erb +20 -0
  92. data/app/views/admin/resources/show.html.erb +26 -0
  93. data/app/views/admin/session/new.html.erb +18 -0
  94. data/app/views/admin/shared/_head.html.erb +24 -0
  95. data/app/views/admin/shared/_modals.html.erb +3 -0
  96. data/app/views/admin/shared/_sidebar_placeholder.html.erb +0 -0
  97. data/app/views/admin/templates/README.md +5 -0
  98. data/app/views/admin/templates/_belongs_to.html.erb +8 -0
  99. data/app/views/admin/templates/_boolean.html.erb +7 -0
  100. data/app/views/admin/templates/_date.html.erb +6 -0
  101. data/app/views/admin/templates/_datetime.html.erb +8 -0
  102. data/app/views/admin/templates/_dragonfly.html.erb +6 -0
  103. data/app/views/admin/templates/_dragonfly_form_preview.html.erb +21 -0
  104. data/app/views/admin/templates/_dragonfly_preview.html.erb +12 -0
  105. data/app/views/admin/templates/_has_and_belongs_to_many.html.erb +21 -0
  106. data/app/views/admin/templates/_has_many.html.erb +18 -0
  107. data/app/views/admin/templates/_has_one.html.erb +14 -0
  108. data/app/views/admin/templates/_json.html.erb +11 -0
  109. data/app/views/admin/templates/_paperclip.html.erb +5 -0
  110. data/app/views/admin/templates/_paperclip_form_preview.html.erb +21 -0
  111. data/app/views/admin/templates/_paperclip_preview.html.erb +12 -0
  112. data/app/views/admin/templates/_password.html.erb +6 -0
  113. data/app/views/admin/templates/_position.html.erb +5 -0
  114. data/app/views/admin/templates/_profile_sidebar.html.erb +4 -0
  115. data/app/views/admin/templates/_selector.html.erb +4 -0
  116. data/app/views/admin/templates/_string.html.erb +4 -0
  117. data/app/views/admin/templates/_string_with_preview.html.erb +11 -0
  118. data/app/views/admin/templates/_text.html.erb +11 -0
  119. data/app/views/admin/templates/_text_with_ckeditor.html.erb +24 -0
  120. data/app/views/admin/templates/_text_with_ckeditor_and_assets.html.erb +38 -0
  121. data/app/views/admin/templates/_time.html.erb +9 -0
  122. data/app/views/admin/templates/_tree.html.erb +6 -0
  123. data/app/views/admin/templates/modals/_belongs_to.html.erb +60 -0
  124. data/app/views/admin/templates/modals/_dragonfly.html.erb +13 -0
  125. data/app/views/admin/templates/modals/_has_and_belongs_to_many.html.erb +25 -0
  126. data/app/views/admin/templates/modals/_has_many.html.erb +59 -0
  127. data/app/views/admin/templates/modals/_paperclip.html.erb +13 -0
  128. data/app/views/helpers/admin/base/_apps.html.erb +86 -0
  129. data/app/views/helpers/admin/base/_breadcrumbs.html.erb +6 -0
  130. data/app/views/helpers/admin/base/_flash_message.html.erb +3 -0
  131. data/app/views/helpers/admin/base/_login_info.html.erb +0 -0
  132. data/app/views/helpers/admin/dashboard/_resources.html.erb +19 -0
  133. data/app/views/helpers/admin/resources/_actions.html.erb +18 -0
  134. data/app/views/helpers/admin/resources/_errors.html.erb +12 -0
  135. data/app/views/helpers/admin/resources/_filters.html.erb +16 -0
  136. data/app/views/helpers/admin/resources/_search.html.erb +17 -0
  137. data/app/views/helpers/admin/resources/_sidebar.html.erb +4 -0
  138. data/app/views/helpers/admin/resources/_table.html.erb +45 -0
  139. data/app/views/helpers/admin/resources/sidebar/_item.html.erb +26 -0
  140. data/app/views/helpers/admin/resources/sidebar/_items.html.erb +14 -0
  141. data/app/views/helpers/admin/resources/sidebar/_items_index.html.erb +57 -0
  142. data/app/views/layouts/admin/base.html.erb +30 -0
  143. data/app/views/layouts/admin/headless.html.erb +1 -0
  144. data/app/views/layouts/admin/session.html.erb +26 -0
  145. data/bin/run-tests +7 -0
  146. data/bin/setup +9 -0
  147. data/config/locales/typus.en.yml +125 -0
  148. data/config/routes.rb +46 -0
  149. data/lib/generators/templates/config/initializers/typus.rb +34 -0
  150. data/lib/generators/templates/config/initializers/typus_authentication.rb +18 -0
  151. data/lib/generators/templates/config/initializers/typus_resources.rb +24 -0
  152. data/lib/generators/templates/config/typus/README +58 -0
  153. data/lib/generators/templates/config/typus/application.yml +3 -0
  154. data/lib/generators/templates/config/typus/application_roles.yml +4 -0
  155. data/lib/generators/templates/config/typus/typus.yml +15 -0
  156. data/lib/generators/templates/config/typus/typus_roles.yml +4 -0
  157. data/lib/generators/templates/controller.erb +2 -0
  158. data/lib/generators/templates/migration.erb +22 -0
  159. data/lib/generators/templates/view.html.erb +13 -0
  160. data/lib/generators/typus/config_generator.rb +67 -0
  161. data/lib/generators/typus/controller_generator.rb +26 -0
  162. data/lib/generators/typus/initializers_generator.rb +20 -0
  163. data/lib/generators/typus/migration_generator.rb +94 -0
  164. data/lib/generators/typus/model_generator.rb +93 -0
  165. data/lib/generators/typus/typus_generator.rb +54 -0
  166. data/lib/generators/typus/views_generator.rb +19 -0
  167. data/lib/support/active_record.rb +42 -0
  168. data/lib/support/fake_user.rb +47 -0
  169. data/lib/support/hash.rb +8 -0
  170. data/lib/support/object.rb +9 -0
  171. data/lib/support/string.rb +40 -0
  172. data/lib/tasks/typus.rake +11 -0
  173. data/lib/typus.rb +215 -0
  174. data/lib/typus/authentication/base.rb +39 -0
  175. data/lib/typus/authentication/devise.rb +19 -0
  176. data/lib/typus/authentication/http_basic.rb +18 -0
  177. data/lib/typus/authentication/none.rb +15 -0
  178. data/lib/typus/authentication/none_with_role.rb +15 -0
  179. data/lib/typus/authentication/session.rb +123 -0
  180. data/lib/typus/configuration.rb +43 -0
  181. data/lib/typus/engine.rb +4 -0
  182. data/lib/typus/orm/active_record.rb +10 -0
  183. data/lib/typus/orm/active_record/admin_user.rb +65 -0
  184. data/lib/typus/orm/active_record/class_methods.rb +104 -0
  185. data/lib/typus/orm/active_record/instance_methods.rb +76 -0
  186. data/lib/typus/orm/active_record/search.rb +43 -0
  187. data/lib/typus/orm/base/class_methods.rb +188 -0
  188. data/lib/typus/orm/base/search.rb +70 -0
  189. data/lib/typus/regex.rb +11 -0
  190. data/lib/typus/resources.rb +55 -0
  191. data/lib/typus/version.rb +10 -0
  192. data/typus.gemspec +27 -0
  193. data/vendor/assets/chosen/LICENSE.md +24 -0
  194. data/vendor/assets/chosen/chosen-sprite.png +0 -0
  195. data/vendor/assets/chosen/chosen-sprite@2x.png +0 -0
  196. data/vendor/assets/chosen/chosen.jquery.js +1239 -0
  197. data/vendor/assets/chosen/chosen.scss +437 -0
  198. metadata +271 -0
@@ -0,0 +1,437 @@
1
+ /*!
2
+ Chosen, a Select Box Enhancer for jQuery and Prototype
3
+ by Patrick Filler for Harvest, http://getharvest.com
4
+
5
+ Version 1.3.0
6
+ Full source at https://github.com/harvesthq/chosen
7
+ Copyright (c) 2011-2014 Harvest http://getharvest.com
8
+
9
+ MIT License, https://github.com/harvesthq/chosen/blob/master/LICENSE.md
10
+ This file is generated by `grunt build`, do not edit it by hand.
11
+ */
12
+
13
+ /* @group Base */
14
+ .chosen-container {
15
+ position: relative;
16
+ display: inline-block;
17
+ vertical-align: middle;
18
+ font-size: 13px;
19
+ zoom: 1;
20
+ *display: inline;
21
+ -webkit-user-select: none;
22
+ -moz-user-select: none;
23
+ user-select: none;
24
+ }
25
+ .chosen-container * {
26
+ -webkit-box-sizing: border-box;
27
+ -moz-box-sizing: border-box;
28
+ box-sizing: border-box;
29
+ }
30
+ .chosen-container .chosen-drop {
31
+ position: absolute;
32
+ top: 100%;
33
+ left: -9999px;
34
+ z-index: 1010;
35
+ width: 100%;
36
+ border: 1px solid #aaa;
37
+ border-top: 0;
38
+ background: #fff;
39
+ box-shadow: 0 4px 5px rgba(0, 0, 0, 0.15);
40
+ }
41
+ .chosen-container.chosen-with-drop .chosen-drop {
42
+ left: 0;
43
+ }
44
+ .chosen-container a {
45
+ cursor: pointer;
46
+ }
47
+
48
+ /* @end */
49
+ /* @group Single Chosen */
50
+ .chosen-container-single .chosen-single {
51
+ position: relative;
52
+ display: block;
53
+ overflow: hidden;
54
+ padding: 0 0 0 8px;
55
+ height: 25px;
56
+ border: 1px solid #aaa;
57
+ border-radius: 5px;
58
+ background-color: #fff;
59
+ background: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(20%, #ffffff), color-stop(50%, #f6f6f6), color-stop(52%, #eeeeee), color-stop(100%, #f4f4f4));
60
+ background: -webkit-linear-gradient(top, #ffffff 20%, #f6f6f6 50%, #eeeeee 52%, #f4f4f4 100%);
61
+ background: -moz-linear-gradient(top, #ffffff 20%, #f6f6f6 50%, #eeeeee 52%, #f4f4f4 100%);
62
+ background: -o-linear-gradient(top, #ffffff 20%, #f6f6f6 50%, #eeeeee 52%, #f4f4f4 100%);
63
+ background: linear-gradient(top, #ffffff 20%, #f6f6f6 50%, #eeeeee 52%, #f4f4f4 100%);
64
+ background-clip: padding-box;
65
+ box-shadow: 0 0 3px white inset, 0 1px 1px rgba(0, 0, 0, 0.1);
66
+ color: #444;
67
+ text-decoration: none;
68
+ white-space: nowrap;
69
+ line-height: 24px;
70
+ }
71
+ .chosen-container-single .chosen-default {
72
+ color: #999;
73
+ }
74
+ .chosen-container-single .chosen-single span {
75
+ display: block;
76
+ overflow: hidden;
77
+ margin-right: 26px;
78
+ text-overflow: ellipsis;
79
+ white-space: nowrap;
80
+ }
81
+ .chosen-container-single .chosen-single-with-deselect span {
82
+ margin-right: 38px;
83
+ }
84
+ .chosen-container-single .chosen-single abbr {
85
+ position: absolute;
86
+ top: 6px;
87
+ right: 26px;
88
+ display: block;
89
+ width: 12px;
90
+ height: 12px;
91
+ background: asset-data-url('chosen-sprite.png') -42px 1px no-repeat;
92
+ font-size: 1px;
93
+ }
94
+ .chosen-container-single .chosen-single abbr:hover {
95
+ background-position: -42px -10px;
96
+ }
97
+ .chosen-container-single.chosen-disabled .chosen-single abbr:hover {
98
+ background-position: -42px -10px;
99
+ }
100
+ .chosen-container-single .chosen-single div {
101
+ position: absolute;
102
+ top: 0;
103
+ right: 0;
104
+ display: block;
105
+ width: 18px;
106
+ height: 100%;
107
+ }
108
+ .chosen-container-single .chosen-single div b {
109
+ display: block;
110
+ width: 100%;
111
+ height: 100%;
112
+ background: asset-data-url('chosen-sprite.png') no-repeat 0px 2px;
113
+ }
114
+ .chosen-container-single .chosen-search {
115
+ position: relative;
116
+ z-index: 1010;
117
+ margin: 0;
118
+ padding: 3px 4px;
119
+ white-space: nowrap;
120
+ }
121
+ .chosen-container-single .chosen-search input[type="text"] {
122
+ margin: 1px 0;
123
+ padding: 4px 20px 4px 5px;
124
+ width: 100%;
125
+ height: auto;
126
+ outline: 0;
127
+ border: 1px solid #aaa;
128
+ background: white asset-data-url('chosen-sprite.png') no-repeat 100% -20px;
129
+ background: asset-data-url('chosen-sprite.png') no-repeat 100% -20px;
130
+ font-size: 1em;
131
+ font-family: sans-serif;
132
+ line-height: normal;
133
+ border-radius: 0;
134
+ }
135
+ .chosen-container-single .chosen-drop {
136
+ margin-top: -1px;
137
+ border-radius: 0 0 4px 4px;
138
+ background-clip: padding-box;
139
+ }
140
+ .chosen-container-single.chosen-container-single-nosearch .chosen-search {
141
+ position: absolute;
142
+ left: -9999px;
143
+ }
144
+
145
+ /* @end */
146
+ /* @group Results */
147
+ .chosen-container .chosen-results {
148
+ color: #444;
149
+ position: relative;
150
+ overflow-x: hidden;
151
+ overflow-y: auto;
152
+ margin: 0 4px 4px 0;
153
+ padding: 0 0 0 4px;
154
+ max-height: 240px;
155
+ -webkit-overflow-scrolling: touch;
156
+ }
157
+ .chosen-container .chosen-results li {
158
+ display: none;
159
+ margin: 0;
160
+ padding: 5px 6px;
161
+ list-style: none;
162
+ line-height: 15px;
163
+ word-wrap: break-word;
164
+ -webkit-touch-callout: none;
165
+ }
166
+ .chosen-container .chosen-results li.active-result {
167
+ display: list-item;
168
+ cursor: pointer;
169
+ }
170
+ .chosen-container .chosen-results li.disabled-result {
171
+ display: list-item;
172
+ color: #ccc;
173
+ cursor: default;
174
+ }
175
+ .chosen-container .chosen-results li.highlighted {
176
+ background-color: #3875d7;
177
+ background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(20%, #3875d7), color-stop(90%, #2a62bc));
178
+ background-image: -webkit-linear-gradient(#3875d7 20%, #2a62bc 90%);
179
+ background-image: -moz-linear-gradient(#3875d7 20%, #2a62bc 90%);
180
+ background-image: -o-linear-gradient(#3875d7 20%, #2a62bc 90%);
181
+ background-image: linear-gradient(#3875d7 20%, #2a62bc 90%);
182
+ color: #fff;
183
+ }
184
+ .chosen-container .chosen-results li.no-results {
185
+ color: #777;
186
+ display: list-item;
187
+ background: #f4f4f4;
188
+ }
189
+ .chosen-container .chosen-results li.group-result {
190
+ display: list-item;
191
+ font-weight: bold;
192
+ cursor: default;
193
+ }
194
+ .chosen-container .chosen-results li.group-option {
195
+ padding-left: 15px;
196
+ }
197
+ .chosen-container .chosen-results li em {
198
+ font-style: normal;
199
+ text-decoration: underline;
200
+ }
201
+
202
+ /* @end */
203
+ /* @group Multi Chosen */
204
+ .chosen-container-multi .chosen-choices {
205
+ position: relative;
206
+ overflow: hidden;
207
+ margin: 0;
208
+ padding: 0 5px;
209
+ width: 100%;
210
+ height: auto !important;
211
+ height: 1%;
212
+ border: 1px solid #aaa;
213
+ background-color: #fff;
214
+ background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(1%, #eeeeee), color-stop(15%, #ffffff));
215
+ background-image: -webkit-linear-gradient(#eeeeee 1%, #ffffff 15%);
216
+ background-image: -moz-linear-gradient(#eeeeee 1%, #ffffff 15%);
217
+ background-image: -o-linear-gradient(#eeeeee 1%, #ffffff 15%);
218
+ background-image: linear-gradient(#eeeeee 1%, #ffffff 15%);
219
+ cursor: text;
220
+ }
221
+ .chosen-container-multi .chosen-choices li {
222
+ float: left;
223
+ list-style: none;
224
+ }
225
+ .chosen-container-multi .chosen-choices li.search-field {
226
+ margin: 0;
227
+ padding: 0;
228
+ white-space: nowrap;
229
+ }
230
+ .chosen-container-multi .chosen-choices li.search-field input[type="text"] {
231
+ margin: 1px 0;
232
+ padding: 0;
233
+ height: 25px;
234
+ outline: 0;
235
+ border: 0 !important;
236
+ background: transparent !important;
237
+ box-shadow: none;
238
+ color: #999;
239
+ font-size: 100%;
240
+ font-family: sans-serif;
241
+ line-height: normal;
242
+ border-radius: 0;
243
+ }
244
+ .chosen-container-multi .chosen-choices li.search-choice {
245
+ position: relative;
246
+ margin: 3px 5px 3px 0;
247
+ padding: 3px 20px 3px 5px;
248
+ border: 1px solid #aaa;
249
+ max-width: 100%;
250
+ border-radius: 3px;
251
+ background-color: #eeeeee;
252
+ background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(20%, #f4f4f4), color-stop(50%, #f0f0f0), color-stop(52%, #e8e8e8), color-stop(100%, #eeeeee));
253
+ background-image: -webkit-linear-gradient(#f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
254
+ background-image: -moz-linear-gradient(#f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
255
+ background-image: -o-linear-gradient(#f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
256
+ background-image: linear-gradient(#f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
257
+ background-size: 100% 19px;
258
+ background-repeat: repeat-x;
259
+ background-clip: padding-box;
260
+ box-shadow: 0 0 2px white inset, 0 1px 0 rgba(0, 0, 0, 0.05);
261
+ color: #333;
262
+ line-height: 13px;
263
+ cursor: default;
264
+ }
265
+ .chosen-container-multi .chosen-choices li.search-choice span {
266
+ word-wrap: break-word;
267
+ }
268
+ .chosen-container-multi .chosen-choices li.search-choice .search-choice-close {
269
+ position: absolute;
270
+ top: 4px;
271
+ right: 3px;
272
+ display: block;
273
+ width: 12px;
274
+ height: 12px;
275
+ background: asset-data-url('chosen-sprite.png') -42px 1px no-repeat;
276
+ font-size: 1px;
277
+ }
278
+ .chosen-container-multi .chosen-choices li.search-choice .search-choice-close:hover {
279
+ background-position: -42px -10px;
280
+ }
281
+ .chosen-container-multi .chosen-choices li.search-choice-disabled {
282
+ padding-right: 5px;
283
+ border: 1px solid #ccc;
284
+ background-color: #e4e4e4;
285
+ background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(20%, #f4f4f4), color-stop(50%, #f0f0f0), color-stop(52%, #e8e8e8), color-stop(100%, #eeeeee));
286
+ background-image: -webkit-linear-gradient(top, #f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
287
+ background-image: -moz-linear-gradient(top, #f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
288
+ background-image: -o-linear-gradient(top, #f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
289
+ background-image: linear-gradient(top, #f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eeeeee 100%);
290
+ color: #666;
291
+ }
292
+ .chosen-container-multi .chosen-choices li.search-choice-focus {
293
+ background: #d4d4d4;
294
+ }
295
+ .chosen-container-multi .chosen-choices li.search-choice-focus .search-choice-close {
296
+ background-position: -42px -10px;
297
+ }
298
+ .chosen-container-multi .chosen-results {
299
+ margin: 0;
300
+ padding: 0;
301
+ }
302
+ .chosen-container-multi .chosen-drop .result-selected {
303
+ display: list-item;
304
+ color: #ccc;
305
+ cursor: default;
306
+ }
307
+
308
+ /* @end */
309
+ /* @group Active */
310
+ .chosen-container-active .chosen-single {
311
+ border: 1px solid #5897fb;
312
+ box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
313
+ }
314
+ .chosen-container-active.chosen-with-drop .chosen-single {
315
+ border: 1px solid #aaa;
316
+ -moz-border-radius-bottomright: 0;
317
+ border-bottom-right-radius: 0;
318
+ -moz-border-radius-bottomleft: 0;
319
+ border-bottom-left-radius: 0;
320
+ background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(20%, #eeeeee), color-stop(80%, #ffffff));
321
+ background-image: -webkit-linear-gradient(#eeeeee 20%, #ffffff 80%);
322
+ background-image: -moz-linear-gradient(#eeeeee 20%, #ffffff 80%);
323
+ background-image: -o-linear-gradient(#eeeeee 20%, #ffffff 80%);
324
+ background-image: linear-gradient(#eeeeee 20%, #ffffff 80%);
325
+ box-shadow: 0 1px 0 #fff inset;
326
+ }
327
+ .chosen-container-active.chosen-with-drop .chosen-single div {
328
+ border-left: none;
329
+ background: transparent;
330
+ }
331
+ .chosen-container-active.chosen-with-drop .chosen-single div b {
332
+ background-position: -18px 2px;
333
+ }
334
+ .chosen-container-active .chosen-choices {
335
+ border: 1px solid #5897fb;
336
+ box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
337
+ }
338
+ .chosen-container-active .chosen-choices li.search-field input[type="text"] {
339
+ color: #222 !important;
340
+ }
341
+
342
+ /* @end */
343
+ /* @group Disabled Support */
344
+ .chosen-disabled {
345
+ opacity: 0.5 !important;
346
+ cursor: default;
347
+ }
348
+ .chosen-disabled .chosen-single {
349
+ cursor: default;
350
+ }
351
+ .chosen-disabled .chosen-choices .search-choice .search-choice-close {
352
+ cursor: default;
353
+ }
354
+
355
+ /* @end */
356
+ /* @group Right to Left */
357
+ .chosen-rtl {
358
+ text-align: right;
359
+ }
360
+ .chosen-rtl .chosen-single {
361
+ overflow: visible;
362
+ padding: 0 8px 0 0;
363
+ }
364
+ .chosen-rtl .chosen-single span {
365
+ margin-right: 0;
366
+ margin-left: 26px;
367
+ direction: rtl;
368
+ }
369
+ .chosen-rtl .chosen-single-with-deselect span {
370
+ margin-left: 38px;
371
+ }
372
+ .chosen-rtl .chosen-single div {
373
+ right: auto;
374
+ left: 3px;
375
+ }
376
+ .chosen-rtl .chosen-single abbr {
377
+ right: auto;
378
+ left: 26px;
379
+ }
380
+ .chosen-rtl .chosen-choices li {
381
+ float: right;
382
+ }
383
+ .chosen-rtl .chosen-choices li.search-field input[type="text"] {
384
+ direction: rtl;
385
+ }
386
+ .chosen-rtl .chosen-choices li.search-choice {
387
+ margin: 3px 5px 3px 0;
388
+ padding: 3px 5px 3px 19px;
389
+ }
390
+ .chosen-rtl .chosen-choices li.search-choice .search-choice-close {
391
+ right: auto;
392
+ left: 4px;
393
+ }
394
+ .chosen-rtl.chosen-container-single-nosearch .chosen-search,
395
+ .chosen-rtl .chosen-drop {
396
+ left: 9999px;
397
+ }
398
+ .chosen-rtl.chosen-container-single .chosen-results {
399
+ margin: 0 0 4px 4px;
400
+ padding: 0 4px 0 0;
401
+ }
402
+ .chosen-rtl .chosen-results li.group-option {
403
+ padding-right: 15px;
404
+ padding-left: 0;
405
+ }
406
+ .chosen-rtl.chosen-container-active.chosen-with-drop .chosen-single div {
407
+ border-right: none;
408
+ }
409
+ .chosen-rtl .chosen-search input[type="text"] {
410
+ padding: 4px 5px 4px 20px;
411
+ background: white asset-data-url('chosen-sprite.png') no-repeat -30px -20px;
412
+ background: asset-data-url('chosen-sprite.png') no-repeat -30px -20px;
413
+ direction: rtl;
414
+ }
415
+ .chosen-rtl.chosen-container-single .chosen-single div b {
416
+ background-position: 6px 2px;
417
+ }
418
+ .chosen-rtl.chosen-container-single.chosen-with-drop .chosen-single div b {
419
+ background-position: -12px 2px;
420
+ }
421
+
422
+ /* @end */
423
+ /* @group Retina compatibility */
424
+ @media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min-resolution: 144dpi) {
425
+ .chosen-rtl .chosen-search input[type="text"],
426
+ .chosen-container-single .chosen-single abbr,
427
+ .chosen-container-single .chosen-single div b,
428
+ .chosen-container-single .chosen-search input[type="text"],
429
+ .chosen-container-multi .chosen-choices .search-choice .search-choice-close,
430
+ .chosen-container .chosen-results-scroll-down span,
431
+ .chosen-container .chosen-results-scroll-up span {
432
+ background-image: asset-data-url('chosen-sprite@2x.png') !important;
433
+ background-size: 52px 37px !important;
434
+ background-repeat: no-repeat !important;
435
+ }
436
+ }
437
+ /* @end */
metadata ADDED
@@ -0,0 +1,271 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: typus-rails4
3
+ version: !ruby/object:Gem::Version
4
+ version: 4.0.0.beta6
5
+ platform: ruby
6
+ authors:
7
+ - Francesc Esplugas
8
+ - Phillip Oertel
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+ date: 2015-09-10 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: rails
16
+ requirement: !ruby/object:Gem::Requirement
17
+ requirements:
18
+ - - "~>"
19
+ - !ruby/object:Gem::Version
20
+ version: 4.2.1
21
+ type: :runtime
22
+ prerelease: false
23
+ version_requirements: !ruby/object:Gem::Requirement
24
+ requirements:
25
+ - - "~>"
26
+ - !ruby/object:Gem::Version
27
+ version: 4.2.1
28
+ - !ruby/object:Gem::Dependency
29
+ name: bcrypt
30
+ requirement: !ruby/object:Gem::Requirement
31
+ requirements:
32
+ - - "~>"
33
+ - !ruby/object:Gem::Version
34
+ version: 3.1.10
35
+ type: :runtime
36
+ prerelease: false
37
+ version_requirements: !ruby/object:Gem::Requirement
38
+ requirements:
39
+ - - "~>"
40
+ - !ruby/object:Gem::Version
41
+ version: 3.1.10
42
+ description: Ruby on Rails Admin Panel (Engine) to allow trusted users edit structured
43
+ content.
44
+ email:
45
+ - support@typuscmf.com
46
+ executables: []
47
+ extensions: []
48
+ extra_rdoc_files: []
49
+ files:
50
+ - CHANGELOG.md
51
+ - Gemfile
52
+ - Gemfile.lock
53
+ - MIT-LICENSE
54
+ - README.md
55
+ - Rakefile
56
+ - app/assets/javascripts/typus/application.js
57
+ - app/assets/javascripts/typus/custom.js
58
+ - app/assets/javascripts/typus/jquery-2.1.1.min.js
59
+ - app/assets/javascripts/typus/jquery.application.js
60
+ - app/assets/stylesheets/typus/application.css
61
+ - app/assets/stylesheets/typus/custom.scss
62
+ - app/assets/stylesheets/typus/overrides.scss
63
+ - app/assets/stylesheets/typus/signin.scss
64
+ - app/controllers/admin/account_controller.rb
65
+ - app/controllers/admin/base_controller.rb
66
+ - app/controllers/admin/dashboard_controller.rb
67
+ - app/controllers/admin/resource_controller.rb
68
+ - app/controllers/admin/resources_controller.rb
69
+ - app/controllers/admin/session_controller.rb
70
+ - app/controllers/concerns/admin/actions.rb
71
+ - app/controllers/concerns/admin/acts_as_list.rb
72
+ - app/controllers/concerns/admin/ancestry.rb
73
+ - app/controllers/concerns/admin/autocomplete.rb
74
+ - app/controllers/concerns/admin/bulk.rb
75
+ - app/controllers/concerns/admin/featured_image.rb
76
+ - app/controllers/concerns/admin/filters.rb
77
+ - app/controllers/concerns/admin/format.rb
78
+ - app/controllers/concerns/admin/headless.rb
79
+ - app/controllers/concerns/admin/hooks.rb
80
+ - app/controllers/concerns/admin/multisite.rb
81
+ - app/controllers/concerns/admin/navigation.rb
82
+ - app/controllers/concerns/admin/trash.rb
83
+ - app/helpers/admin/base_helper.rb
84
+ - app/helpers/admin/resources/data_types/belongs_to_helper.rb
85
+ - app/helpers/admin/resources/data_types/boolean_helper.rb
86
+ - app/helpers/admin/resources/data_types/date_helper.rb
87
+ - app/helpers/admin/resources/data_types/datetime_helper.rb
88
+ - app/helpers/admin/resources/data_types/dragonfly_helper.rb
89
+ - app/helpers/admin/resources/data_types/float_helper.rb
90
+ - app/helpers/admin/resources/data_types/has_and_belongs_to_many_helper.rb
91
+ - app/helpers/admin/resources/data_types/has_many_helper.rb
92
+ - app/helpers/admin/resources/data_types/has_one_helper.rb
93
+ - app/helpers/admin/resources/data_types/integer_helper.rb
94
+ - app/helpers/admin/resources/data_types/paperclip_helper.rb
95
+ - app/helpers/admin/resources/data_types/selector_helper.rb
96
+ - app/helpers/admin/resources/data_types/string_helper.rb
97
+ - app/helpers/admin/resources/data_types/text_helper.rb
98
+ - app/helpers/admin/resources/data_types/transversal_helper.rb
99
+ - app/helpers/admin/resources/data_types/tree_helper.rb
100
+ - app/helpers/admin/resources/display_helper.rb
101
+ - app/helpers/admin/resources/filters_helper.rb
102
+ - app/helpers/admin/resources/form_helper.rb
103
+ - app/helpers/admin/resources/list_helper.rb
104
+ - app/helpers/admin/resources/pagination_helper.rb
105
+ - app/helpers/admin/resources/relationships_helper.rb
106
+ - app/helpers/admin/resources/sidebar_helper.rb
107
+ - app/helpers/admin/resources/table_helper.rb
108
+ - app/helpers/admin/resources_helper.rb
109
+ - app/mailers/admin/mailer.rb
110
+ - app/views/admin/account/_form.html.erb
111
+ - app/views/admin/account/forgot_password.html.erb
112
+ - app/views/admin/account/new.html.erb
113
+ - app/views/admin/dashboard/_sidebar.html.erb
114
+ - app/views/admin/dashboard/index.html.erb
115
+ - app/views/admin/dashboard/styles.html.erb
116
+ - app/views/admin/dashboard/widgets/_applications.html.erb
117
+ - app/views/admin/dashboard/widgets/_default.html.erb
118
+ - app/views/admin/dashboard/widgets/_models.html.erb
119
+ - app/views/admin/dashboard/widgets/_models_extended.html.erb
120
+ - app/views/admin/dashboard/widgets/_resources.html.erb
121
+ - app/views/admin/dashboard/widgets/_users.html.erb
122
+ - app/views/admin/mailer/reset_password_instructions.html.erb
123
+ - app/views/admin/mailer/reset_password_instructions.text.erb
124
+ - app/views/admin/resource/_sidebar.html.erb
125
+ - app/views/admin/resources/_edit.html.erb
126
+ - app/views/admin/resources/_form.html.erb
127
+ - app/views/admin/resources/_form_javascripts.html.erb
128
+ - app/views/admin/resources/_form_modal.html.erb
129
+ - app/views/admin/resources/_index.html.erb
130
+ - app/views/admin/resources/_new.html.erb
131
+ - app/views/admin/resources/_pagination.html.erb
132
+ - app/views/admin/resources/_show.html.erb
133
+ - app/views/admin/resources/_sidebar.html.erb
134
+ - app/views/admin/resources/destroy.html.erb
135
+ - app/views/admin/resources/edit.html.erb
136
+ - app/views/admin/resources/edit/_actions.html.erb
137
+ - app/views/admin/resources/edit/_recently_edited.html.erb
138
+ - app/views/admin/resources/index.html.erb
139
+ - app/views/admin/resources/new.html.erb
140
+ - app/views/admin/resources/show.html.erb
141
+ - app/views/admin/session/new.html.erb
142
+ - app/views/admin/shared/_head.html.erb
143
+ - app/views/admin/shared/_modals.html.erb
144
+ - app/views/admin/shared/_sidebar_placeholder.html.erb
145
+ - app/views/admin/templates/README.md
146
+ - app/views/admin/templates/_belongs_to.html.erb
147
+ - app/views/admin/templates/_boolean.html.erb
148
+ - app/views/admin/templates/_date.html.erb
149
+ - app/views/admin/templates/_datetime.html.erb
150
+ - app/views/admin/templates/_dragonfly.html.erb
151
+ - app/views/admin/templates/_dragonfly_form_preview.html.erb
152
+ - app/views/admin/templates/_dragonfly_preview.html.erb
153
+ - app/views/admin/templates/_has_and_belongs_to_many.html.erb
154
+ - app/views/admin/templates/_has_many.html.erb
155
+ - app/views/admin/templates/_has_one.html.erb
156
+ - app/views/admin/templates/_json.html.erb
157
+ - app/views/admin/templates/_paperclip.html.erb
158
+ - app/views/admin/templates/_paperclip_form_preview.html.erb
159
+ - app/views/admin/templates/_paperclip_preview.html.erb
160
+ - app/views/admin/templates/_password.html.erb
161
+ - app/views/admin/templates/_position.html.erb
162
+ - app/views/admin/templates/_profile_sidebar.html.erb
163
+ - app/views/admin/templates/_selector.html.erb
164
+ - app/views/admin/templates/_string.html.erb
165
+ - app/views/admin/templates/_string_with_preview.html.erb
166
+ - app/views/admin/templates/_text.html.erb
167
+ - app/views/admin/templates/_text_with_ckeditor.html.erb
168
+ - app/views/admin/templates/_text_with_ckeditor_and_assets.html.erb
169
+ - app/views/admin/templates/_time.html.erb
170
+ - app/views/admin/templates/_tree.html.erb
171
+ - app/views/admin/templates/modals/_belongs_to.html.erb
172
+ - app/views/admin/templates/modals/_dragonfly.html.erb
173
+ - app/views/admin/templates/modals/_has_and_belongs_to_many.html.erb
174
+ - app/views/admin/templates/modals/_has_many.html.erb
175
+ - app/views/admin/templates/modals/_paperclip.html.erb
176
+ - app/views/helpers/admin/base/_apps.html.erb
177
+ - app/views/helpers/admin/base/_breadcrumbs.html.erb
178
+ - app/views/helpers/admin/base/_flash_message.html.erb
179
+ - app/views/helpers/admin/base/_login_info.html.erb
180
+ - app/views/helpers/admin/dashboard/_resources.html.erb
181
+ - app/views/helpers/admin/resources/_actions.html.erb
182
+ - app/views/helpers/admin/resources/_errors.html.erb
183
+ - app/views/helpers/admin/resources/_filters.html.erb
184
+ - app/views/helpers/admin/resources/_search.html.erb
185
+ - app/views/helpers/admin/resources/_sidebar.html.erb
186
+ - app/views/helpers/admin/resources/_table.html.erb
187
+ - app/views/helpers/admin/resources/sidebar/_item.html.erb
188
+ - app/views/helpers/admin/resources/sidebar/_items.html.erb
189
+ - app/views/helpers/admin/resources/sidebar/_items_index.html.erb
190
+ - app/views/layouts/admin/base.html.erb
191
+ - app/views/layouts/admin/headless.html.erb
192
+ - app/views/layouts/admin/session.html.erb
193
+ - bin/run-tests
194
+ - bin/setup
195
+ - config/locales/typus.en.yml
196
+ - config/routes.rb
197
+ - lib/generators/templates/config/initializers/typus.rb
198
+ - lib/generators/templates/config/initializers/typus_authentication.rb
199
+ - lib/generators/templates/config/initializers/typus_resources.rb
200
+ - lib/generators/templates/config/typus/README
201
+ - lib/generators/templates/config/typus/application.yml
202
+ - lib/generators/templates/config/typus/application_roles.yml
203
+ - lib/generators/templates/config/typus/typus.yml
204
+ - lib/generators/templates/config/typus/typus_roles.yml
205
+ - lib/generators/templates/controller.erb
206
+ - lib/generators/templates/migration.erb
207
+ - lib/generators/templates/view.html.erb
208
+ - lib/generators/typus/config_generator.rb
209
+ - lib/generators/typus/controller_generator.rb
210
+ - lib/generators/typus/initializers_generator.rb
211
+ - lib/generators/typus/migration_generator.rb
212
+ - lib/generators/typus/model_generator.rb
213
+ - lib/generators/typus/typus_generator.rb
214
+ - lib/generators/typus/views_generator.rb
215
+ - lib/support/active_record.rb
216
+ - lib/support/fake_user.rb
217
+ - lib/support/hash.rb
218
+ - lib/support/object.rb
219
+ - lib/support/string.rb
220
+ - lib/tasks/typus.rake
221
+ - lib/typus.rb
222
+ - lib/typus/authentication/base.rb
223
+ - lib/typus/authentication/devise.rb
224
+ - lib/typus/authentication/http_basic.rb
225
+ - lib/typus/authentication/none.rb
226
+ - lib/typus/authentication/none_with_role.rb
227
+ - lib/typus/authentication/session.rb
228
+ - lib/typus/configuration.rb
229
+ - lib/typus/engine.rb
230
+ - lib/typus/orm/active_record.rb
231
+ - lib/typus/orm/active_record/admin_user.rb
232
+ - lib/typus/orm/active_record/class_methods.rb
233
+ - lib/typus/orm/active_record/instance_methods.rb
234
+ - lib/typus/orm/active_record/search.rb
235
+ - lib/typus/orm/base/class_methods.rb
236
+ - lib/typus/orm/base/search.rb
237
+ - lib/typus/regex.rb
238
+ - lib/typus/resources.rb
239
+ - lib/typus/version.rb
240
+ - typus.gemspec
241
+ - vendor/assets/chosen/LICENSE.md
242
+ - vendor/assets/chosen/chosen-sprite.png
243
+ - vendor/assets/chosen/chosen-sprite@2x.png
244
+ - vendor/assets/chosen/chosen.jquery.js
245
+ - vendor/assets/chosen/chosen.scss
246
+ homepage: http://www.typuscmf.com/
247
+ licenses:
248
+ - MIT
249
+ metadata: {}
250
+ post_install_message:
251
+ rdoc_options: []
252
+ require_paths:
253
+ - lib
254
+ required_ruby_version: !ruby/object:Gem::Requirement
255
+ requirements:
256
+ - - ">="
257
+ - !ruby/object:Gem::Version
258
+ version: '0'
259
+ required_rubygems_version: !ruby/object:Gem::Requirement
260
+ requirements:
261
+ - - ">"
262
+ - !ruby/object:Gem::Version
263
+ version: 1.3.1
264
+ requirements: []
265
+ rubyforge_project:
266
+ rubygems_version: 2.4.8
267
+ signing_key:
268
+ specification_version: 4
269
+ summary: Effortless backend interface for Ruby on Rails applications. (Admin scaffold
270
+ generator)
271
+ test_files: []