liquid_feedback_frontend

diff 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
line diff
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/app/main/slideshow/_slideshow.lua	Thu Jul 10 01:19:48 2014 +0200
     1.3 @@ -0,0 +1,79 @@
     1.4 +local slides = param.get( "slides", "table" )
     1.5 +
     1.6 +local show_slides = {}
     1.7 +
     1.8 +for i, slide in ipairs( slides ) do
     1.9 +  
    1.10 +  if slide.initiative then
    1.11 +    show_slides[ #show_slides + 1 ] = slide
    1.12 +  end
    1.13 +  
    1.14 +end
    1.15 +  
    1.16 +slot.select( "slideshow", function ()
    1.17 +  
    1.18 +  ui.container { attr = { class = "slideshow" }, content = function ()
    1.19 +    
    1.20 +    for i, slide in ipairs( show_slides ) do
    1.21 +      
    1.22 +      if slide.initiative.issue.closed then
    1.23 +        view = "finished"
    1.24 +      elseif slide.initiative.issue.fully_frozen then
    1.25 +        view = "voting"
    1.26 +      elseif slide.initiative.issue.half_frozen then
    1.27 +        view = "verification"
    1.28 +      elseif slide.initiative.issue.admitted then
    1.29 +        view = "discussion"
    1.30 +      else
    1.31 +        view = "admission"
    1.32 +      end
    1.33 +      
    1.34 +      ui.container { attr = { class = "slide slide-" .. i }, content = function ()
    1.35 +
    1.36 +        if slide.initiative.issue.closed then
    1.37 +          util.initiative_pie(slide.initiative, 150)
    1.38 +        end
    1.39 +
    1.40 +        ui.container {
    1.41 +          attr = { class = "slideshowTitle" },
    1.42 +          content = slide.title
    1.43 +        }
    1.44 +
    1.45 +        execute.view {
    1.46 +          module = "initiative", view = "_list_element", params = {
    1.47 +            initiative = slide.initiative
    1.48 +          }
    1.49 +        }
    1.50 +
    1.51 +      end }
    1.52 +      
    1.53 +    end
    1.54 +
    1.55 +    
    1.56 +  end }
    1.57 +    
    1.58 +end )
    1.59 +
    1.60 +ui.script{ script = [[
    1.61 +
    1.62 +var slideshowCurrent = 0;
    1.63 +var slideshowCount = ]] .. #show_slides .. [[ ;
    1.64 +function slideshowShowSlide(i) {
    1.65 +  $(".slideshow .slide").slideUp();
    1.66 +  $(".slideshow .slide-" + i).slideDown();
    1.67 +  slideshowCurrent = i;
    1.68 +}
    1.69 +
    1.70 +function slideshowShowNext() {
    1.71 +  var next = slideshowCurrent + 1;
    1.72 +  if (next > slideshowCount) {
    1.73 +    next = 1;
    1.74 +  }
    1.75 +  slideshowShowSlide(next);
    1.76 +  window.setTimeout(slideshowShowNext, 7500);
    1.77 +}
    1.78 +
    1.79 +slideshowShowNext();
    1.80 +
    1.81 +  
    1.82 +  ]]}
    1.83 \ No newline at end of file

Impressum / About Us