31a688b39c1d76de1f696e6369063ccd9f8e9402
[angular-mojolicious.git] / public / app / conference / registration.html
1 <!DOCTYPE HTML>
2 <html xmlns:ng="http://angularjs.org">
3 <head>
4 <meta charset="utf-8">
5 <script src="angular.js" ng:autobind></script>
6
7 <script src="registration.js"></script>
8 <title>Conference registration</title>
9
10 <style type="text/css">
11
12 body {
13         background: #F6F6F6;
14         margin: 40px;
15         font-family: Arial;
16         color: #374E5A;
17         font-size: 14px;
18         line-height: 16px;
19 }
20
21
22 label {
23         display: block;
24         color: #D74F25;
25         color: #374E5A;
26         color: #afafaf;
27         margin-top: 10px;
28         font-size: 14px;
29         font-family: Arial;
30 }
31 h1 {
32 /*      margin-bottom: 6px;     */
33         padding-left: 20px;
34         font: 18px arial;
35         color: #0c1426;
36         text-decoration: none;
37         display: block;
38         background: url(http://mjesec.ffzg.hr/drzb2011/images/kvadrat.gif) no-repeat left;
39         border-bottom: 1px solid #CCC;
40 }
41 h2 {
42         margin-top: 60px;
43         font-size: 14px;
44         padding: 2px 0;
45         border-bottom: 2px solid #D74F25;
46         border-bottom: 1px solid #46d0fe;
47 }
48
49 a {
50         color: #D74F25;
51 }
52
53 label {
54         color: #374E5A;
55 }
56
57 .input {
58         color: #afafaf;
59         float: left;
60         margin: 2px;
61         padding: 0 6px;
62 }
63
64 .input1 {
65         width: 40.8em;
66 }
67
68 .input2 {
69         width: 8em;
70 }
71
72 .input3 {
73         width: 13em;
74 }
75 .input4 {
76         width: 10em;
77 }
78
79 .input5 {
80         width: 21.4em;
81 }
82 .input6 {
83         width: 6.3em;
84 }
85
86 .clear {
87         clear: both;
88 }
89
90
91 .authors {
92         clear: both;
93         margin-bottom: 6px;
94 }
95
96 .addPerson {
97         color: #D74F25;
98         color: #EDC8BC;
99         color: #EAB3A2;
100         font-size: 90%;
101 }
102
103 input, textarea, .gohome {
104         font: 14px arial;
105         color: #000000;
106         border: solid 1px #dedede;
107         padding: 6px;
108         background: #f6f6f6;
109 }
110
111 input:focus, textarea:focus
112 {
113         
114         background: #ffffff;
115         font-family: arial;
116         color: #000000;
117 /*      border: 1px solid #46d0fe; */
118 }
119
120 .ng-validation-error {
121         border: 1px solid #FF6666;
122         border: 1px solid #EDC8BC;
123         border: 1px solid #FF9966;
124         border: 1px solid #EAB3A2;
125         border: 1px solid #D74F25;
126         border: 1px solid #DC6844;
127         border: 1px solid #DE7F61;
128 }
129
130
131
132 #work, #submission {
133         margin-bottom: 20px;
134 }
135
136 .button {
137         margin-top: 20px;
138         width: 40.8em;
139 }
140
141 .button input {
142         margin-bottom: 10px;
143         float: left;
144         color: #ffffff;
145         display: block;
146         text-decoration: none;
147         background: #d74f25;
148 }
149
150 .button input:hover, .gohome:hover {
151         background: #dc6844;
152 }
153
154 .button2 input {
155         background: #F6F6F6;
156         color: #374E5A;
157         border: 1px solid #d74f25;
158         display: inline;
159         float: none;
160 }
161
162
163 .gohome  {
164         float: left;
165         color: #ffffff;
166         display: block;
167         text-decoration: none;
168         background: #d74f25;
169         padding: 7px;
170 }
171
172 .gohome a {
173         color: #fff;
174         text-decoration: none;
175 }
176
177 .list {
178         margin-top: 20px;
179         font-weight: bold;
180 }
181
182 .warrning {
183         color: #FF6666;
184 }
185
186 .sworks {
187         margin-top: 20px;
188 }
189
190
191 .newWork {
192         clear: left;
193         margin-top: 50px;
194 }
195 .saved {
196         margin-bottom: 20px;
197         margin-top: 20px;
198 }
199 .saved2 {
200         color: #374E5A;
201         color: #d74f25;
202         font-weight: bold;
203         font-style: italic;
204         display: block;
205 }
206 .saved3 {
207         color: #374E5A;
208         font-weight: normal;
209         margin-top: 20px;
210 }
211 .footer {
212         height: 10px;
213 }
214 hr {
215         border: 1px solid #ccc;
216 }
217 </style>
218
219
220 </head>
221 <body>
222
223
224 <h1>Registration and Proposal Submission</h1>
225
226 <div>
227 <p>Svi sudionici skupa, bez obzira na to jesu li izlagači, suautori ili slušači, trebaju prijaviti svoje sudjelovanje kroz sustav elektroničke prijave.</p>
228  
229 <p>Sažetak izlaganja/postera prijavljuje samo prvi autor, odnosno onaj autor koji će rad izložiti. Ostali suautori prilikom prijave na skup ne trebaju prijaviti sažetak, nego se samo registrirati.</p>
230  
231 <p>Organizatori simpozija/okruglog stola prijavljuju i sažetak simpozija i/ili okruglog stola,  i sažetak svakog pripadajućeg rada. Autori radova unutar simpozija ne prijavljuju pojedinačno svoje sažetke.</p>
232  
233 <p>Duljina sažetka ne može prelaziti 2000 znakova.</p>
234
235 <p>Jedna osoba može biti autor u najviše tri rada, pri čemu na samo jednom može biti prvi ili jedini autor.</p>
236
237 </div>
238
239
240 <div class="root" ng:controller="Registration" ng:init="$window.$root = this;">
241
242
243 <div ng:show="last_saved.$id || symposium">
244         <h2>{{registration.person.name}} {{registration.person.surname}}</h2>
245 </div>
246
247
248 <div id="participant" ng:show="! last_saved.$id && ! symposium">
249         <h2>Contact Information</h2>
250         <div class="labelTop">
251                 <div class="input input4">First name</div>
252                 <div class="input input4">Surname</div>
253         </div>
254         <div style="clear: both">
255                 <input class="input4" name="registration.person.name" ng:required>
256                 <input class="input4" name="registration.person.surname" ng:required>
257         </div>
258         <div class="labelTop">
259                 <div class="input input5">Institution</div>
260         </div>  
261         <div style="clear: both">
262                 <input class="input5" name="registration.person.inst">
263         </div>
264         <div class="labelTop">
265                 <div class="input input5">Address</div>
266         </div>  
267         <div style="clear: both">
268                 <input class="input5" name="registration.person.address1" ng:required>
269         </div>
270         <div class="labelTop">
271                 <div class="input input6">City</div>
272                 <div class="input input6">ZIP</div>
273                 <div class="input input6">Country</div>
274         </div>
275         <div style="clear: both">
276                 <input class="input6" name="registration.person.city" ng:required>
277                 <input class="input6" name="registration.person.zip">
278                 <input class="input6" name="registration.person.country">
279         </div>
280         <div class="labelTop">
281                 <div class="input input4">E-mail</div>
282                 <div class="input input4">Phone number</div>
283         </div>
284         <div style="clear: both">
285                 <input class="input4" name="registration.person.email" ng:validate="email" ng:required>
286                 <input class="input4" name="registration.person.phone">
287         </div>
288 </div>
289
290
291 <div id="submission" ng:show="registration.type != 'symposium' && ! last_saved.$id">
292         <div>
293                 <h2>Registration Type</h2>
294                 <label><input type="radio" name="registration.type" value="participant" ng:required>Attendance with no presentation</label>
295                 <label><input type="radio" name="registration.type" value="sparticipant" ng:required>Symposium participant</label>
296                 <label><input type="radio" name="registration.type" value="symposium" ng:required>Symposium organizer</label>
297                 <label><input type="radio" name="registration.type" value="lecture" ng:required>Oral presentation</label>
298                 <label><input type="radio" name="registration.type" value="poster" ng:required>Poster presentation</label>
299                 <label><input type="radio" name="registration.type" value="round" ng:required>Round table discussion</label>
300         </div>
301 </div>
302
303         <!-- dodano za syposium participants -->
304         <div ng:show="registration.type == 'sparticipant' && ! last_saved.$id">
305                 <h2>Symposia</h2>
306                 <label for="registration.sympattend">Topic:</label>
307                 <input class="input1" name="registration.sympattend" ng:required>
308         </div>
309
310
311 <div id="work" ng:show="registration.type != 'participant' && registration.type != 'sparticipant'">
312 <div ng:show="registration.type == 'symposium' && ! last_saved.$id && registration.symposium.work_nr < 2">
313
314         <h2>Symposia</h2>
315         <label for="registration.symposium.title">Topic:</label>
316                 <input class="input1" name="registration.symposium.title" ng:required>
317         <label>Organizer:</label>
318                 <div class="input input2">First name</div><div class="input input2">Surname</div><div class="input input3">Institution</div><div class="input input2">E-mail</div>
319                 <div class="clear" ng:repeat="organizer in registration.symposium.organizers">
320                 <input class="input2" name="organizer.name" ng:required>
321                 <input class="input2" name="organizer.surname" ng:required>
322                 <input class="input3" name="organizer.inst" >
323                 <input class="input2" name="organizer.email" ng:required ng:validate="email">
324                 <a href="" ng:click="registration.symposium.organizers.$remove(organizer)">X</a>
325                 </div>
326         <a class="addPerson" href="" ng:click="registration.symposium.organizers.$add()">Add another organizer</a>
327         <label>Summary (2000 characters max.)</label>
328                 <textarea class="input1" name="registration.symposium.abstract" rows="10" ng:validate="max_length:2000" ng:required></textarea>
329 </div>
330
331
332 <div ng:show="registration.type && ! last_saved.$id">
333
334                 <div ng:show="symposium">
335                         <b>Symposium:</b> {{registration.symposium.title}}
336                         <blockquote>
337                         <label>Submitted papers for this symposium:</label>
338                         <ol>
339                         <li ng:repeat="w in symposium.works">
340                         <a ng:show="registration.$id != w.$id" href="#{{w.$id}}" >{{w.title}}</a>
341                         <b ng:show="registration.$id == w.$id">{{w.title}}</b>
342                         </li>
343                         </ol>
344                         </blockquote>
345                 </div>
346 <h2 ng:show="registration.type == 'symposium'">Add Symposia Paper ({{registration.symposium.work_nr}})</h2>
347 <h2 ng:show="registration.type == 'lecture'">Oral Presentation Sumbission</h2>
348 <h2 ng:show="registration.type == 'poster'">Poster Presentation Sumbission</h2>
349 <h2 ng:show="registration.type == 'round'">Round Table Disscussion Sumbission</h2>
350
351
352 <label>Title:</label>
353         <input class="input1" name="registration.work.title" ng:required>
354 <label>Authors</label>
355 <div>
356         <div class="input input2">First name</div><div class="input input2">Surname</div><div class="input input3">Institution</div><div class="input input2">E-mail</div>
357 </div>
358 <div class="clear" ng:repeat="author in registration.work.authors">
359         <input class="input2" name="author.name" ng:required>
360         <input class="input2" name="author.surname" ng:required>
361         <input class="input3" name="author.inst" >
362         <input class="input2" name="author.email" ng:required ng:validate="email">
363         <a href="" ng:click="registration.work.authors.$remove(author)">X</a>
364 </div>
365 <a class="addPerson" href="" ng:click="registration.work.authors.$add()">Add another author</a>
366
367
368 <label>Abstract (2000 characters max.):</label>
369         <textarea class="input1" name="registration.work.abstract" rows="10" ng:validate="max_length:2000" ng:required></textarea>
370
371
372 </div> <!-- ng:show="registration.type" -->
373 </div>
374
375 <div class="button" ng:show="! last_saved.$equals(registration) && $invalidWidgets.visible() == 0">
376 <input type="submit" value="Save" ng:click="save();" ng:show="! last_saved.$equals(registration) && $invalidWidgets.visible() == 0">
377 </div>
378
379 <div ng:show="$invalidWidgets.visible() &gt; 0" style="color:red; margin-top: 20px">Please fill all required fields correctly ({{$invalidWidgets.visible()}} fields left). Red colored fields call for your attention.
380 </div>
381
382
383
384
385 <div style="margin-bottom: 40px" ng:show="registration.$id && last_saved.$equals(registration)">
386
387 <div>
388 <input type="checkbox" name="last_saved.$id"> Hide submitted registration
389 </div>
390
391 <div class="saved" ng:show="registration.type == 'participant' || registration.type == 'sparticipant'">
392                 <span class="saved2">Your registration has been submitted successfully!</span>
393                 <br><br>
394                 <span ng:show="registration.sympattend">You will participate in the symosium <b>"{{registration.sympattend}}"</b><br><br><br></span>
395                 <span class="saved3">
396                 Thank you. We look forward to seeing you at the conference<br><br>
397                 .. Kotizacija upute ..
398                 </span>
399         </div>
400
401         <div class="saved" ng:show="registration.type != 'participant' && registration.type != 'sparticipant'">
402                 <span class="saved2">You submitted the paper successfully! <br><br></span>
403
404                 <b>Paper title</b>: {{registration.work.title}} <br><br>
405                 <div ng:show="symposium">
406                         <b>Symposium:</b> {{registration.symposium.title}}
407                         <blockquote>
408                         <label>Already submitted papers for this symposium:</label>
409                         <ol>
410                         <li ng:repeat="w in symposium.works">
411                         <!--
412                         <a ng:show="registration.$id != w.$id" href="#{{w.$id}}" >{{w.title}}</a>
413                         -->
414                         <span ng:show="registration.$id != w.$id">{{w.title}}</span>
415                         <b ng:show="registration.$id == w.$id">{{w.title}}</b>
416                         </li>
417                         </ol>
418                         </blockquote>
419                 </div>
420         </div>
421         <div class="button button2" ng:show="registration.$id && registration.type != 'participant' && registration.type != 'sparticipant' && last_saved.$equals(registration)">
422                 You can <input type="reset" value="Submit another paper" ng:click="reset()"> or <a href="http://psihologija.ffzg.hr/drzb2011/">just leave</a> this page. <br><br> ... conference fee ... instructions ...<br><br>
423         </div>
424         <!--    
425         <div>
426         Registration ID: {{registration.$id}}. You can bookmark this page and review it later.
427         </div>
428         -->
429
430         <!--
431         <div class=""><a href="http://psihologija.ffzg.hr/drzb2011/">Go to conference home page</a></div>
432         -->
433 </div>
434 <!--
435 <div class="button2" ng:show="registration.$id && registration.type != 'participant' && registration.type != 'sparticipant' && last_saved.$equals(registration)">
436         <input type="reset" value="Submit another paper" ng:click="reset()">
437         <div class="gohome"><a href="http://psihologija.ffzg.hr/drzb2011/">Go to conference home page</a></div>
438 </div>
439 -->
440
441 <div class="footer"></div>
442
443 <!--
444 <div ng:show="registration.$id">
445 Permalink to <a href="#{{registration.$id}}">DRZB2011 registration</a> which you can bookmark
446 </div>
447 -->
448
449 <input type=checkbox name=debug style="float: right; clear: both">
450 <pre ng:show="debug">
451
452 dirty={{! last_saved.$equals(registration)}} invalid={{$invalidWidgets.visible()}}
453
454 registration = {{registration}}
455
456 last_saved = {{last_saved}}
457
458 master = {{master}}
459
460 symposium = {{symposium}}
461
462 $id={{$id}}
463 registration.$id={{registration.$id}}
464 </pre>
465
466 </body>
467 </html>