liquid_feedback_frontend

view app/main/slideshow/_slideshow.lua @ 1532:3c15fea3f1c0

Added FirstLife group mirroring
author bsw
date Sun Oct 04 16:31:47 2020 +0200 (2020-10-04)
parents 701a5cf6b067
children
line source
1 local slides = param.get( "slides", "table" )
3 local show_slides = {}
5 for i, slide in ipairs( slides ) do
7 if slide.initiative then
8 show_slides[ #show_slides + 1 ] = slide
9 end
11 end
13 slot.select( "slideshow", function ()
15 ui.container { attr = { class = "slideshow" }, content = function ()
17 for i, slide in ipairs( show_slides ) do
19 if slide.initiative.issue.closed then
20 view = "finished"
21 elseif slide.initiative.issue.fully_frozen then
22 view = "voting"
23 elseif slide.initiative.issue.half_frozen then
24 view = "verification"
25 elseif slide.initiative.issue.admitted then
26 view = "discussion"
27 else
28 view = "admission"
29 end
31 ui.container { attr = { class = "slide slide-" .. i }, content = function ()
33 if slide.initiative.issue.closed then
34 util.initiative_pie(slide.initiative, 150)
35 end
37 ui.container {
38 attr = { class = "slideshowTitle" },
39 content = slide.title
40 }
42 execute.view {
43 module = "initiative", view = "_list_element", params = {
44 initiative = slide.initiative
45 }
46 }
48 end }
50 end
53 end }
55 end )
57 ui.script{ script = [[
59 var slideshowCurrent = 0;
60 var slideshowCount = ]] .. #show_slides .. [[ ;
61 function slideshowShowSlide(i) {
62 $(".slideshow .slide").slideUp();
63 $(".slideshow .slide-" + i).slideDown();
64 slideshowCurrent = i;
65 }
67 function slideshowShowNext() {
68 var next = slideshowCurrent + 1;
69 if (next > slideshowCount) {
70 next = 1;
71 }
72 slideshowShowSlide(next);
73 window.setTimeout(slideshowShowNext, 7500);
74 }
76 slideshowShowNext();
79 ]]}

Impressum / About Us