rev |
line source |
bsw@1045
|
1 local slides = param.get( "slides", "table" )
|
bsw@1045
|
2
|
bsw@1045
|
3 local show_slides = {}
|
bsw@1045
|
4
|
bsw@1045
|
5 for i, slide in ipairs( slides ) do
|
bsw@1045
|
6
|
bsw@1045
|
7 if slide.initiative then
|
bsw@1045
|
8 show_slides[ #show_slides + 1 ] = slide
|
bsw@1045
|
9 end
|
bsw@1045
|
10
|
bsw@1045
|
11 end
|
bsw@1045
|
12
|
bsw@1045
|
13 slot.select( "slideshow", function ()
|
bsw@1045
|
14
|
bsw@1045
|
15 ui.container { attr = { class = "slideshow" }, content = function ()
|
bsw@1045
|
16
|
bsw@1045
|
17 for i, slide in ipairs( show_slides ) do
|
bsw@1045
|
18
|
bsw@1045
|
19 if slide.initiative.issue.closed then
|
bsw@1045
|
20 view = "finished"
|
bsw@1045
|
21 elseif slide.initiative.issue.fully_frozen then
|
bsw@1045
|
22 view = "voting"
|
bsw@1045
|
23 elseif slide.initiative.issue.half_frozen then
|
bsw@1045
|
24 view = "verification"
|
bsw@1045
|
25 elseif slide.initiative.issue.admitted then
|
bsw@1045
|
26 view = "discussion"
|
bsw@1045
|
27 else
|
bsw@1045
|
28 view = "admission"
|
bsw@1045
|
29 end
|
bsw@1045
|
30
|
bsw@1045
|
31 ui.container { attr = { class = "slide slide-" .. i }, content = function ()
|
bsw@1045
|
32
|
bsw@1045
|
33 if slide.initiative.issue.closed then
|
bsw@1045
|
34 util.initiative_pie(slide.initiative, 150)
|
bsw@1045
|
35 end
|
bsw@1045
|
36
|
bsw@1045
|
37 ui.container {
|
bsw@1045
|
38 attr = { class = "slideshowTitle" },
|
bsw@1045
|
39 content = slide.title
|
bsw@1045
|
40 }
|
bsw@1045
|
41
|
bsw@1045
|
42 execute.view {
|
bsw@1045
|
43 module = "initiative", view = "_list_element", params = {
|
bsw@1045
|
44 initiative = slide.initiative
|
bsw@1045
|
45 }
|
bsw@1045
|
46 }
|
bsw@1045
|
47
|
bsw@1045
|
48 end }
|
bsw@1045
|
49
|
bsw@1045
|
50 end
|
bsw@1045
|
51
|
bsw@1045
|
52
|
bsw@1045
|
53 end }
|
bsw@1045
|
54
|
bsw@1045
|
55 end )
|
bsw@1045
|
56
|
bsw@1045
|
57 ui.script{ script = [[
|
bsw@1045
|
58
|
bsw@1045
|
59 var slideshowCurrent = 0;
|
bsw@1045
|
60 var slideshowCount = ]] .. #show_slides .. [[ ;
|
bsw@1045
|
61 function slideshowShowSlide(i) {
|
bsw@1045
|
62 $(".slideshow .slide").slideUp();
|
bsw@1045
|
63 $(".slideshow .slide-" + i).slideDown();
|
bsw@1045
|
64 slideshowCurrent = i;
|
bsw@1045
|
65 }
|
bsw@1045
|
66
|
bsw@1045
|
67 function slideshowShowNext() {
|
bsw@1045
|
68 var next = slideshowCurrent + 1;
|
bsw@1045
|
69 if (next > slideshowCount) {
|
bsw@1045
|
70 next = 1;
|
bsw@1045
|
71 }
|
bsw@1045
|
72 slideshowShowSlide(next);
|
bsw@1045
|
73 window.setTimeout(slideshowShowNext, 7500);
|
bsw@1045
|
74 }
|
bsw@1045
|
75
|
bsw@1045
|
76 slideshowShowNext();
|
bsw@1045
|
77
|
bsw@1045
|
78
|
bsw@1045
|
79 ]]} |