liquid_feedback_frontend

annotate app/main/slideshow/_slideshow.lua @ 1045:701a5cf6b067

Imported LiquidFeedback Frontend 3.0 branch
author bsw
date Thu Jul 10 01:19:48 2014 +0200 (2014-07-10)
parents
children
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 ]]}

Impressum / About Us