interview 0.0.6 → 0.0.7
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/generators/interview/install/install_generator.rb +3 -0
- data/lib/generators/interview/install/templates/application.css +14 -0
- data/lib/generators/interview/install/templates/application.js +2 -0
- data/lib/generators/interview/install/templates/blueimp-gallery.css +226 -0
- data/lib/generators/interview/install/templates/blueimp-gallery.js +1341 -0
- data/lib/generators/interview/install/templates/bootstrap_interview.css.scss +28 -0
- data/lib/generators/interview/install/templates/interview.js.coffee +60 -2
- data/lib/generators/interview/install/templates/missing_thumb.png +0 -0
- data/lib/interview/association_attribute.rb +6 -8
- data/lib/interview/association_list_attribute.rb +3 -2
- data/lib/interview/attribute.rb +52 -30
- data/lib/interview/collapse_container.rb +20 -0
- data/lib/interview/condition_container.rb +19 -0
- data/lib/interview/dropdown.rb +16 -4
- data/lib/interview/form.rb +42 -47
- data/lib/interview/form_errors.rb +2 -2
- data/lib/interview/grid.rb +1 -1
- data/lib/interview/image_attribute.rb +55 -15
- data/lib/interview/image_gallery_attribute.rb +74 -0
- data/lib/interview/image_light_box.rb +19 -0
- data/lib/interview/link.rb +2 -1
- data/lib/interview/list.rb +8 -2
- data/lib/interview/media_object.rb +45 -0
- data/lib/interview/navigation_item.rb +19 -4
- data/lib/interview/navigation_item_old.rb +26 -0
- data/lib/interview/nested_form_add_link.rb +1 -1
- data/lib/interview/panel.rb +18 -0
- data/lib/interview/polymorphic_add_link.rb +33 -4
- data/lib/interview/search_form.rb +21 -0
- data/lib/interview/text.rb +33 -3
- data/lib/interview/version.rb +1 -1
- data/lib/interview/view.rb +28 -6
- data/lib/interview.rb +12 -0
- metadata +13 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 6e2d2216c636d036ba63292418a62839b715c0b4
|
4
|
+
data.tar.gz: 8d113b3b730417a9ab24b679f9831f8cb3716116
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 0206e158d51c3f65d05347b3fe351940aca9a5c76e34d8519aa482051c55a7a429159b9799fa72b45a2d7e592ceec543d188e5cf3248fd697e42c18b9f073727
|
7
|
+
data.tar.gz: 40f9876819b6c93f3cfe0a2a5c8a3cbabc280387920522f61bef535e703243f73e874e2550eb6193d222e4d9a5e45c454d1e557f865c3415618354097132ed32
|
@@ -12,6 +12,7 @@ module Interview
|
|
12
12
|
end
|
13
13
|
|
14
14
|
def add_assets
|
15
|
+
copy_file "application.css", "app/assets/stylesheets/application.css" # todo: überdenken
|
15
16
|
copy_file "bootstrap_interview.css.scss", "app/assets/stylesheets/bootstrap_interview.css.scss"
|
16
17
|
copy_file "colors.css.scss", "app/assets/stylesheets/colors.css.scss"
|
17
18
|
copy_file "application.js", "app/assets/javascripts/application.js" # todo: überdenken
|
@@ -24,6 +25,8 @@ module Interview
|
|
24
25
|
copy_file "throbber.gif", "app/assets/images/throbber.gif"
|
25
26
|
copy_file "jstree.css", "app/assets/stylesheets/jstree.css"
|
26
27
|
copy_file "jstree.js", "app/assets/javascripts/jstree.js"
|
28
|
+
copy_file "blueimp-gallery.css", "app/assets/stylesheets/blueimp-gallery.css"
|
29
|
+
copy_file "blueimp-gallery.js", "app/assets/javascripts/blueimp-gallery.js"
|
27
30
|
end
|
28
31
|
|
29
32
|
def add_initializers
|
@@ -0,0 +1,14 @@
|
|
1
|
+
/*
|
2
|
+
* This is a manifest file that'll be compiled into application.css, which will include all the files
|
3
|
+
* listed below.
|
4
|
+
*
|
5
|
+
* Any CSS and SCSS file within this directory, lib/assets/stylesheets, vendor/assets/stylesheets,
|
6
|
+
* or vendor/assets/stylesheets of plugins, if any, can be referenced here using a relative path.
|
7
|
+
*
|
8
|
+
* You're free to add application-wide styles to this file and they'll appear at the top of the
|
9
|
+
* compiled file, but it's generally better to create a new file per style scope.
|
10
|
+
*
|
11
|
+
*= require_self
|
12
|
+
*= require jquery.fileupload-ui.css
|
13
|
+
*= require_tree .
|
14
|
+
*/
|
@@ -0,0 +1,226 @@
|
|
1
|
+
@charset "UTF-8";
|
2
|
+
/*
|
3
|
+
* blueimp Gallery CSS 2.11.1
|
4
|
+
* https://github.com/blueimp/Gallery
|
5
|
+
*
|
6
|
+
* Copyright 2013, Sebastian Tschan
|
7
|
+
* https://blueimp.net
|
8
|
+
*
|
9
|
+
* Licensed under the MIT license:
|
10
|
+
* http://www.opensource.org/licenses/MIT
|
11
|
+
*/
|
12
|
+
|
13
|
+
.blueimp-gallery,
|
14
|
+
.blueimp-gallery > .slides > .slide > .slide-content {
|
15
|
+
position: absolute;
|
16
|
+
top: 0;
|
17
|
+
right: 0;
|
18
|
+
bottom: 0;
|
19
|
+
left: 0;
|
20
|
+
/* Prevent artifacts in Mozilla Firefox: */
|
21
|
+
-moz-backface-visibility: hidden;
|
22
|
+
}
|
23
|
+
.blueimp-gallery > .slides > .slide > .slide-content {
|
24
|
+
margin: auto;
|
25
|
+
width: auto;
|
26
|
+
height: auto;
|
27
|
+
max-width: 100%;
|
28
|
+
max-height: 100%;
|
29
|
+
opacity: 1;
|
30
|
+
}
|
31
|
+
.blueimp-gallery {
|
32
|
+
position: fixed;
|
33
|
+
z-index: 999999;
|
34
|
+
overflow: hidden;
|
35
|
+
background: #000;
|
36
|
+
background: rgba(0, 0, 0, 0.9);
|
37
|
+
opacity: 0;
|
38
|
+
display: none;
|
39
|
+
direction: ltr;
|
40
|
+
-ms-touch-action: none;
|
41
|
+
touch-action: none;
|
42
|
+
}
|
43
|
+
.blueimp-gallery-carousel {
|
44
|
+
position: relative;
|
45
|
+
z-index: auto;
|
46
|
+
margin: 1em auto;
|
47
|
+
/* Set the carousel width/height ratio to 16/9: */
|
48
|
+
padding-bottom: 56.25%;
|
49
|
+
box-shadow: 0 0 10px #000;
|
50
|
+
-ms-touch-action: pan-y;
|
51
|
+
touch-action: pan-y;
|
52
|
+
}
|
53
|
+
.blueimp-gallery-display {
|
54
|
+
display: block;
|
55
|
+
opacity: 1;
|
56
|
+
}
|
57
|
+
.blueimp-gallery > .slides {
|
58
|
+
position: relative;
|
59
|
+
height: 100%;
|
60
|
+
overflow: hidden;
|
61
|
+
}
|
62
|
+
.blueimp-gallery-carousel > .slides {
|
63
|
+
position: absolute;
|
64
|
+
}
|
65
|
+
.blueimp-gallery > .slides > .slide {
|
66
|
+
position: relative;
|
67
|
+
float: left;
|
68
|
+
height: 100%;
|
69
|
+
text-align: center;
|
70
|
+
-webkit-transition-timing-function: cubic-bezier(0.645, 0.045, 0.355, 1.000);
|
71
|
+
-moz-transition-timing-function: cubic-bezier(0.645, 0.045, 0.355, 1.000);
|
72
|
+
-ms-transition-timing-function: cubic-bezier(0.645, 0.045, 0.355, 1.000);
|
73
|
+
-o-transition-timing-function: cubic-bezier(0.645, 0.045, 0.355, 1.000);
|
74
|
+
transition-timing-function: cubic-bezier(0.645, 0.045, 0.355, 1.000);
|
75
|
+
}
|
76
|
+
.blueimp-gallery,
|
77
|
+
.blueimp-gallery > .slides > .slide > .slide-content {
|
78
|
+
-webkit-transition: opacity 0.5s linear;
|
79
|
+
-moz-transition: opacity 0.5s linear;
|
80
|
+
-ms-transition: opacity 0.5s linear;
|
81
|
+
-o-transition: opacity 0.5s linear;
|
82
|
+
transition: opacity 0.5s linear;
|
83
|
+
}
|
84
|
+
.blueimp-gallery > .slides > .slide-loading {
|
85
|
+
background: url(../img/loading.gif) center no-repeat;
|
86
|
+
background-size: 64px 64px;
|
87
|
+
}
|
88
|
+
.blueimp-gallery > .slides > .slide-loading > .slide-content {
|
89
|
+
opacity: 0;
|
90
|
+
}
|
91
|
+
.blueimp-gallery > .slides > .slide-error {
|
92
|
+
background: url(../img/error.png) center no-repeat;
|
93
|
+
}
|
94
|
+
.blueimp-gallery > .slides > .slide-error > .slide-content {
|
95
|
+
display: none;
|
96
|
+
}
|
97
|
+
.blueimp-gallery > .prev,
|
98
|
+
.blueimp-gallery > .next {
|
99
|
+
position: absolute;
|
100
|
+
top: 50%;
|
101
|
+
left: 15px;
|
102
|
+
width: 40px;
|
103
|
+
height: 40px;
|
104
|
+
margin-top: -23px;
|
105
|
+
font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
|
106
|
+
font-size: 60px;
|
107
|
+
font-weight: 100;
|
108
|
+
line-height: 30px;
|
109
|
+
color: #fff;
|
110
|
+
text-decoration: none;
|
111
|
+
text-shadow: 0 0 2px #000;
|
112
|
+
text-align: center;
|
113
|
+
background: #222;
|
114
|
+
background: rgba(0, 0, 0, 0.5);
|
115
|
+
-webkit-box-sizing: content-box;
|
116
|
+
-moz-box-sizing: content-box;
|
117
|
+
box-sizing: content-box;
|
118
|
+
border: 3px solid #fff;
|
119
|
+
-webkit-border-radius: 23px;
|
120
|
+
-moz-border-radius: 23px;
|
121
|
+
border-radius: 23px;
|
122
|
+
opacity: 0.5;
|
123
|
+
cursor: pointer;
|
124
|
+
display: none;
|
125
|
+
}
|
126
|
+
.blueimp-gallery > .next {
|
127
|
+
left: auto;
|
128
|
+
right: 15px;
|
129
|
+
}
|
130
|
+
.blueimp-gallery > .close,
|
131
|
+
.blueimp-gallery > .title {
|
132
|
+
position: absolute;
|
133
|
+
top: 15px;
|
134
|
+
left: 15px;
|
135
|
+
margin: 0 40px 0 0;
|
136
|
+
font-size: 20px;
|
137
|
+
line-height: 30px;
|
138
|
+
color: #fff;
|
139
|
+
text-shadow: 0 0 2px #000;
|
140
|
+
opacity: 0.8;
|
141
|
+
display: none;
|
142
|
+
}
|
143
|
+
.blueimp-gallery > .close {
|
144
|
+
padding: 15px;
|
145
|
+
right: 15px;
|
146
|
+
left: auto;
|
147
|
+
margin: -15px;
|
148
|
+
font-size: 30px;
|
149
|
+
text-decoration: none;
|
150
|
+
cursor: pointer;
|
151
|
+
}
|
152
|
+
.blueimp-gallery > .play-pause {
|
153
|
+
position: absolute;
|
154
|
+
right: 15px;
|
155
|
+
bottom: 15px;
|
156
|
+
width: 15px;
|
157
|
+
height: 15px;
|
158
|
+
background: url(../img/play-pause.png) 0 0 no-repeat;
|
159
|
+
cursor: pointer;
|
160
|
+
opacity: 0.5;
|
161
|
+
display: none;
|
162
|
+
}
|
163
|
+
.blueimp-gallery-playing > .play-pause {
|
164
|
+
background-position: -15px 0;
|
165
|
+
}
|
166
|
+
.blueimp-gallery > .prev:hover,
|
167
|
+
.blueimp-gallery > .next:hover,
|
168
|
+
.blueimp-gallery > .close:hover,
|
169
|
+
.blueimp-gallery > .title:hover,
|
170
|
+
.blueimp-gallery > .play-pause:hover {
|
171
|
+
color: #fff;
|
172
|
+
opacity: 1;
|
173
|
+
}
|
174
|
+
.blueimp-gallery-controls > .prev,
|
175
|
+
.blueimp-gallery-controls > .next,
|
176
|
+
.blueimp-gallery-controls > .close,
|
177
|
+
.blueimp-gallery-controls > .title,
|
178
|
+
.blueimp-gallery-controls > .play-pause {
|
179
|
+
display: block;
|
180
|
+
/* Fix z-index issues (controls behind slide element) on Android: */
|
181
|
+
-webkit-transform: translateZ(0);
|
182
|
+
-moz-transform: translateZ(0);
|
183
|
+
-ms-transform: translateZ(0);
|
184
|
+
-o-transform: translateZ(0);
|
185
|
+
transform: translateZ(0);
|
186
|
+
}
|
187
|
+
.blueimp-gallery-single > .prev,
|
188
|
+
.blueimp-gallery-left > .prev,
|
189
|
+
.blueimp-gallery-single > .next,
|
190
|
+
.blueimp-gallery-right > .next,
|
191
|
+
.blueimp-gallery-single > .play-pause {
|
192
|
+
display: none;
|
193
|
+
}
|
194
|
+
.blueimp-gallery > .slides > .slide > .slide-content,
|
195
|
+
.blueimp-gallery > .prev,
|
196
|
+
.blueimp-gallery > .next,
|
197
|
+
.blueimp-gallery > .close,
|
198
|
+
.blueimp-gallery > .play-pause {
|
199
|
+
-webkit-user-select: none;
|
200
|
+
-khtml-user-select: none;
|
201
|
+
-moz-user-select: none;
|
202
|
+
-ms-user-select: none;
|
203
|
+
user-select: none;
|
204
|
+
}
|
205
|
+
|
206
|
+
/* Replace PNGs with SVGs for capable browsers (excluding IE<9) */
|
207
|
+
body:last-child .blueimp-gallery > .slides > .slide-error {
|
208
|
+
background-image: url(../img/error.svg);
|
209
|
+
}
|
210
|
+
body:last-child .blueimp-gallery > .play-pause {
|
211
|
+
width: 20px;
|
212
|
+
height: 20px;
|
213
|
+
background-size: 40px 20px;
|
214
|
+
background-image: url(../img/play-pause.svg);
|
215
|
+
}
|
216
|
+
body:last-child .blueimp-gallery-playing > .play-pause {
|
217
|
+
background-position: -20px 0;
|
218
|
+
}
|
219
|
+
|
220
|
+
/* IE7 fixes */
|
221
|
+
*+html .blueimp-gallery > .slides > .slide {
|
222
|
+
min-height: 300px;
|
223
|
+
}
|
224
|
+
*+html .blueimp-gallery > .slides > .slide > .slide-content {
|
225
|
+
position: relative;
|
226
|
+
}
|