22 | Lorem ipsum dolor sit amet, consectetur.
23 |
24 |
25 |
26 |
27 | Lorem ipsum dolor sit amet, consectetur
28 |
29 |
30 | Lorem ipsum dolor sit amet, consectetur
31 |
32 |
33 | Lorem ipsum dolor sit amet, consectetur
34 |
35 |
36 | Lorem ipsum dolor sit amet, consectetur
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ratione fugit odit cupiditate nobis, consectetur officia assumenda eius culpa reiciendis inventore fuga et excepturi soluta cumque, maiores, animi, illum facilis quidem.
45 |
46 |
47 |
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ratione fugit odit cupiditate nobis, consectetur officia assumenda eius culpa reiciendis inventore fuga et excepturi soluta cumque, maiores, animi, illum facilis quidem.
48 |
49 |
50 |
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ratione fugit odit cupiditate nobis, consectetur officia assumenda eius culpa reiciendis inventore fuga et excepturi soluta cumque, maiores, animi, illum facilis quidem.
51 |
52 |
53 |
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ratione fugit odit cupiditate nobis, consectetur officia assumenda eius culpa reiciendis inventore fuga et excepturi soluta cumque, maiores, animi, illum facilis quidem.
54 |
55 |
56 |
57 |
71 |
72 |
73 |
74 |
75 |
76 |
--------------------------------------------------------------------------------
/app/js/models/data.js:
--------------------------------------------------------------------------------
1 | var tree = {
2 | "q1": {
3 | "question": "Waarvoor zoekt u een betaaloplossing?",
4 | "values": {
5 | "Voor mijn webwinkel": "q2",
6 | "Ik verkoop niet in een webwinkel maar wil mijn klanten per e-mail facturen.": "form:aanmeld",
7 | "Ik wil direct afrekenen op markplaats.nl met gratis kopersbescherming.": "info:marktplaats",
8 | "Ik wil direct afrekenen op ebay.nl met gratis kopersbescherming.": "info:marktplaats",
9 | "Geen van deze keuzes.": "form:question"
10 | }
11 | },
12 | "q2": {
13 | "question": "Hoe wilt u dat uw klanten u betalen?",
14 | "values": {
15 | "Ik wil klanten eenvoudig in 3 klikken vanaf de productpagina in mijn webwinkel laten afrekenen.": "q3",
16 | "Ik wil PayPal als betaaloptie aan mijn eigen online afrekenmethode toevoegen.": "q3",
17 | "Ik weet niet/anders": "form:question"
18 | }
19 | },
20 | "q3": {
21 | "question": "Hoe wilt u onze betaaloplossing integreren?",
22 | "values": {
23 | "Ik wil het integreren in mijn webwinkel via HTML": "form:aanmeld",
24 | "Ik wil het integreren in mijn webwinkel via API's/webservices": "q5",
25 | "Ik weet niet/anders": "form:question"
26 | }
27 | },
28 | "q4": {
29 | "question": "Hoe wilt u zich aanmelden voor de webwinkelbetalingen (HTML)?",
30 | "values" : {
31 | "Aanmelden bij PayPal": "form:aanmeld",
32 | "Aanmelden bij een PSP": "overzicht:psp",
33 | "Aanmelden bij een webwinkel hosting provider": "overzicht:hosting",
34 | "Aanmelden bij een webwinkel software provider": "overzicht:software",
35 | }
36 | },
37 | "q5": {
38 | "question": "Hoe wilt u zich aanmelden voor de webwinkelbetalingen (API)?",
39 | "values" : {
40 | "Aanmelden bij PayPal": "form:aanmeld",
41 | "Aanmelden bij een PSP": "overzicht:psp",
42 | "Aanmelden bij een webwinkel hosting provider": "overzicht:hosting",
43 | "Aanmelden bij een webwinkel software provider": "overzicht:software",
44 | }
45 | }
46 | };
47 |
48 | var text = {
49 | "q2": {
50 | "title": "Met alle betaaloplossingen van PayPal kunt u",
51 | "values": [
52 | "Betalingen accepteren via elke bank of creditcard binnen en buiten nederland",
53 | "Betalingen accepteren via elke bank of creditcard binnen en buiten nederland",
54 | "Betalingen accepteren via elke bank of creditcard binnen en buiten nederland",
55 | "Betalingen accepteren via elke bank of creditcard binnen en buiten nederland",
56 | ],
57 | },
58 | "q3": {
59 | "title": "Met alle betaaloplossingen van PayPal kunt u",
60 | "values": [
61 | "geen exta opstartkosten",
62 | "geen exta opstartkosten",
63 | "geen exta opstartkosten",
64 | "geen exta opstartkosten",
65 | ],
66 | },
67 | }
68 |
69 | var info = {
70 | "marktplaats": {
71 | "title": "balbla",
72 | "text": "Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam, eaque ipsa quae ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo. Nemo enim ipsam voluptatem quia voluptas sit aspernatur aut odit aut fugit, sed quia consequuntur magni dolores eos qui ratione voluptatem sequi nesciunt. Neque porro quisquam est, qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit, sed quia non numquam eius modi tempora incidunt",
73 | }
74 | };
75 |
76 | var summaries = {
77 | "psp": {
78 | "title": "Overzicht van PSP's",
79 | "items": [
80 | {
81 | "title": "iDeal",
82 | "link": "http://github.com",
83 | },
84 | {
85 | "title": "Mobiel",
86 | "link": "http://github.com",
87 | },
88 | {
89 | "title": "Bank overschrijving",
90 | "link": "http://github.com",
91 | },
92 | ],
93 | },
94 | "hosting": {
95 | "title": "Overzicht van Webwinkel Hosting Providers",
96 | "items": [
97 | {
98 | "title": "Namecheap",
99 | "link": "http://github.com",
100 | },
101 | {
102 | "title": "Versio",
103 | "link": "http://github.com",
104 | },
105 | {
106 | "title": "Transip",
107 | "link": "http://github.com",
108 | },
109 | ],
110 | },
111 | "software": {
112 | "title": "Overzicht van Webwinkel Software Providers",
113 | "items": [
114 | {
115 | "title": "Shopify",
116 | "link": "http://github.com",
117 | },
118 | {
119 | "title": "wooCommerce",
120 | "link": "http://github.com",
121 | },
122 | {
123 | "title": "Magento",
124 | "link": "http://github.com",
125 | },
126 | ],
127 | }
128 | };
129 |
130 | var forms = {
131 | "aanmeld": {
132 | "title": "Aanmeld formulier",
133 | "fields": [
134 | {
135 | "type": "text",
136 | "value": "Naam",
137 | "name": "naam"
138 | },
139 | {
140 | "type": "text",
141 | "value": "Email",
142 | "name": "email"
143 | },
144 | ]
145 | },
146 | "question": {
147 | "title": "Vraag uw vraag",
148 | "fields": [
149 | {
150 | "type": "text",
151 | "value": "Naam",
152 | "name": "naam"
153 | },
154 | {
155 | "type": "text",
156 | "value": "Email",
157 | "name": "email"
158 | },
159 | {
160 | "type": "textarea",
161 | "value": "Bericht",
162 | "name": "message"
163 | }
164 | ]
165 | }
166 | };
167 |
168 |
--------------------------------------------------------------------------------
/app/assets/css/sweet-reset.css:
--------------------------------------------------------------------------------
1 | /* Normalize.css with costum preferences and features. @0x4A42787 */
2 |
3 | *,
4 | *:before,
5 | *:after
6 | {
7 | /* Safari */
8 | webkit-box-sizing: border-box;
9 |
10 | /* Older versions of firefox. */
11 | -moz-box-sizing: border-box;
12 |
13 | /* Modern browsers.*/
14 | box-sizing: border-box;
15 | }
16 |
17 | html,
18 | body
19 | {
20 | /* Set the default font family */
21 | font-family: sans-serif;
22 |
23 | /* Reset the default margin */
24 | margin: 0;
25 |
26 | /* Reset the default padding. */
27 | padding: 0;
28 |
29 | /* This usually doesn't affect to much of the webpage, more of a good habbit. */
30 | width: 100%;
31 | height: 100%;
32 |
33 | /* Setting the default line height to 1. */
34 | line-height: 1;
35 |
36 | /* Prevent iOS text size adjust after orientation change, without disabling user zoom.*/
37 | -ms-text-size-adjust: 100%;
38 | -webkit-text-size-adjust: 100%;
39 | }
40 |
41 | figcaption,
42 | details,
43 | section,
44 | summary,
45 | figure,
46 | footer,
47 | header,
48 | hgroup,
49 | aside,
50 | main,
51 | menu,
52 | nav
53 | {
54 | /* Various elements do not have default display block in older versions of firefox and IE. */
55 | display: block;
56 | }
57 |
58 | audio,
59 | canvas,
60 | progress,
61 | video
62 | {
63 | /* Correct `inline-block` display not defined in IE 8/9. */
64 | display: inline-block;
65 |
66 | /* Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera. */
67 | vertical-align: baseline;
68 | }
69 |
70 | audio:not([controls])
71 | {
72 | /* Prevent modern browsers from displaying `audio` without controls. */
73 | display: none;
74 |
75 | /* Remove excess height in iOS 5 devices. */
76 | height: 0;
77 | }
78 |
79 | /* Address `[hidden]` styling not present in IE 8/9/10. */
80 | [hidden],
81 | template
82 | {
83 | /* Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22. */
84 | display: none;
85 | }
86 |
87 | a
88 | {
89 | /* Older versions of IE have a ugly gray background occasionally. */
90 | background: transparent;
91 |
92 | /* Reset the color to that from the parent element and else default black. */
93 | color: inherit;
94 |
95 | /* By default remove the underscore set. */
96 | text-decoration: none;
97 | }
98 |
99 | a:active,
100 | a:hover
101 | {
102 | /* Improve readability when focused and also mouse hovered in all browsers */
103 | outline: 0;
104 | }
105 |
106 | abbr[title]
107 | {
108 | /* Address styling not present in IE 8/9/10/11, Safari, and Chrome. */
109 | border-bottom: 1px dotted;
110 | }
111 |
112 |
113 | b,
114 | strong
115 | {
116 | /* Address style set to `bolder` in Firefox 4+, Safari, and Chrome. */
117 | font-weight: bold;
118 | }
119 |
120 | sub,
121 | sup
122 | {
123 | /* Prevent `sub` and `sup` affecting `line-height` in all browsers. */
124 | font-size: 75%;
125 | line-height: 0;
126 | position: relative;
127 | vertical-align: baseline;
128 | }
129 |
130 | sup
131 | {
132 | top: -0.5em;
133 | }
134 |
135 | sub
136 | {
137 | bottom: -0.25em;
138 | }
139 |
140 | img
141 | {
142 | /* Remove border when inside `a` element in IE 8/9/10. */
143 | border: 0;
144 | }
145 |
146 | svg:not(:root)
147 | {
148 | /* Correct overflow not hidden in IE 9/10/11. */
149 | overflow: hidden;
150 | }
151 |
152 |
153 | figure
154 | {
155 | /* Address margin not present in IE 8/9 and Safari. */
156 | margin: 1em 40px;
157 | }
158 |
159 | hr
160 | {
161 | /* Address differences between Firefox and other browsers. */
162 | -moz-box-sizing: content-box;
163 | box-sizing: content-box;
164 | height: 0;
165 | }
166 |
167 | pre
168 | {
169 | /* Contain overflow in all browsers. */
170 | overflow: auto;
171 | }
172 |
173 | code,
174 | kbd,
175 | pre,
176 | samp
177 | {
178 | /* Address odd `em`-unit font size rendering in all browsers. */
179 | font-family: monospace, monospace;
180 | font-size: 1em;
181 | }
182 |
183 | button,
184 | input,
185 | optgroup,
186 | select,
187 | textarea
188 | {
189 | /* Correct color not being inherited. */
190 | color: inherit;
191 |
192 | /* Correct font properties not being inherited. */
193 | font: inherit;
194 |
195 | /* Address margins set differently in Firefox 4+, Safari, and Chrome. */
196 | margin: 0;
197 | }
198 |
199 | button {
200 | /* Address `overflow` set to `hidden` in IE 8/9/10/11. */
201 | overflow: visible;
202 | }
203 |
204 | button,
205 | select
206 | {
207 | /* Address inconsistent `text-transform` inheritance for `button` and `select`. */
208 | text-transform: none;
209 | }
210 |
211 | /* Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio` */
212 | html input[type="button"],
213 | input[type="submit"],
214 | input[type="reset"],
215 | button
216 | {
217 | /* Correct inability to style clickable `input` types in iOS. */
218 | -webkit-appearance: button;
219 |
220 | /* Improve usability and consistency of cursor style between image-type `input` and others. */
221 | cursor: pointer;
222 | }
223 |
224 | button[disabled],
225 | html input[disabled] {
226 | /* Re-set default cursor for disabled elements. */
227 | cursor: default;
228 | }
229 |
230 | input[disabled]
231 | {
232 | /* Set the default background color of an disabled element. */
233 | background: #333
234 | }
235 |
236 | button::-moz-focus-inner,
237 | input::-moz-focus-inner
238 | {
239 | /* Remove inner padding and border in Firefox 4+. */
240 | border: 0;
241 | padding: 0;
242 | }
243 |
244 | input
245 | {
246 | /* Address Firefox 4+ setting `line-height` on `input` using `!important` in the UA stylesheet. */
247 | line-height: normal;
248 |
249 | /* Remove annoying blue border on chrome when a input is active. */
250 | outline: none;
251 | }
252 |
253 | input[type="checkbox"],
254 | input[type="radio"]
255 | {
256 | /* Address box sizing set to `content-box` in IE 8/9/10. */
257 | box-sizing: border-box;
258 |
259 | /* Remove excess padding in IE 8/9/10. */
260 | padding: 0;
261 | }
262 |
263 | input[type="number"]::-webkit-inner-spin-button,
264 | input[type="number"]::-webkit-outer-spin-button
265 | {
266 | /* Fix the cursor style for Chrome's increment/decrement buttons. */
267 | height: auto;
268 | }
269 |
270 |
271 | input[type="search"] {
272 | /* Address `appearance` set to `searchfield` in Safari and Chrome. */
273 | -webkit-appearance: textfield; /* 1 */
274 |
275 | /* You never know... */
276 | -moz-box-sizing: content-box;
277 |
278 | /* Address `box-sizing` set to `border-box` in Safari and Chrome*/
279 | -webkit-box-sizing: content-box; /* 2 */
280 |
281 | box-sizing: content-box;
282 | }
283 |
284 | input[type="search"]::-webkit-search-cancel-button,
285 | input[type="search"]::-webkit-search-decoration
286 | {
287 | /* Remove inner padding and search cancel button in Safari and Chrome on OS X. */
288 | -webkit-appearance: none;
289 | }
290 |
291 | fieldset
292 | {
293 | /* Define consistent border, margin, and padding. */
294 | border: 1px solid #C0C0C0;
295 | margin: 0 2px;
296 | padding: 0.35em 0.625em 0.75em;
297 | }
298 |
299 | legend
300 | {
301 | /* Correct `color` not being inherited in IE 8/9/10/11. */
302 | border: 0;
303 |
304 | /* Remove padding so people aren't caught out if they zero out fieldsets.*/
305 | padding: 0;
306 | }
307 |
308 | textarea
309 | {
310 | /* Remove default vertical scrollbar in IE 8/9/10/11. */
311 | overflow: auto;
312 | }
313 |
314 | optgroup
315 | {
316 | /* Don't inherit the `font-weight` (applied by a rule above). */
317 | font-weight: bold;
318 | }
319 |
320 | table
321 | {
322 | /* Remove most spacing between table cells. */
323 | border-collapse: collapse;
324 | border-spacing: 0;
325 | }
326 |
327 | td,
328 | th
329 | {
330 | padding: 0;
331 | }
332 |
333 | span[class=clear]
334 | {
335 | /* Clear both after a float bound to a span class only. */
336 | clear:both;
337 | }
338 |
339 |
--------------------------------------------------------------------------------
/mockup/mockup.bmml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | A%20Web%20Page%0Ahttp%3A//
6 |
7 |
8 |
9 |
10 | Solution%20Finder
11 |
12 |
13 |
14 |
15 | Question%203
16 |
17 |
18 |
19 |
20 | false
21 | 100
22 |
23 |
24 |
25 |
26 | false
27 | 50
28 |
29 |
30 |
31 |
32 | Answer
33 |
34 |
35 |
36 |
37 | Answer
38 |
39 |
40 |
41 |
42 | Answer
43 |
44 |
45 |
46 |
47 | Answer
48 |
49 |
50 |
51 |
52 | false
53 | 100
54 |
55 |
56 |
57 |
58 | false
59 | 0
60 |
61 |
62 |
63 |
64 | Active
65 |
66 |
67 |
68 |
69 | 0
70 | false
71 | solid
72 |
73 |
74 |
75 |
76 |
77 | A%20Web%20Page%0Ahttp%3A//
78 |
79 |
80 |
81 |
82 | Solution%20Finder
83 |
84 |
85 |
86 |
87 | Question%204
88 |
89 |
90 |
91 |
92 | false
93 | 100
94 |
95 |
96 |
97 |
98 | Answer
99 |
100 |
101 |
102 |
103 | Answer
104 |
105 |
106 |
107 |
108 | Answer
109 |
110 |
111 |
112 |
113 | Answer
114 |
115 |
116 |
117 |
118 | false
119 | 100
120 |
121 |
122 |
123 |
124 | false
125 | 50
126 |
127 |
128 |
129 |
130 | false
131 | 100
132 |
133 |
134 |
135 |
136 | Active
137 |
138 |
139 |
140 |
--------------------------------------------------------------------------------