Event.observe(window, 'load', function() {load_slide(2)});

var slide_url = '/holzer';

var test_mode = false;
var slide_counter = 1;
if (test_mode) slide_url = 'test_images';

var old_slide_name;

var morph_points = [
  [{top: '-105px', left: '-105'}, {top: '0px', left: '-0px'}],
  [{top: '0px', left: '-0px'}, {top: '-105px', left: '-105'}],
  [{top: '-105px', left: '-0px'}, {top: '0px', left: '-105'}],
  [{top: '0px', left: '-105'}, {top: '-105px', left: '-0px'}]
]


function load_slide(slide_num) {
  var slide = $('Slide' + slide_num);
  new Ajax.Request(test_mode ? window.location : slide_url + '/slide_name.php', {onComplete: function(req) {
    var new_slide_name = test_mode ? slide_counter+'.jpg' : req.responseText;
    
    // If the installation is inactive, stop querying and display a message
    if(new_slide_name == 'inactive') {
      $('ActiveMessage').style.display = 'none';
      $('InactiveMessage').style.display = 'block';
      return;
    }
    
    var mode = new_slide_name.split('.')[1];
    if (test_mode && [7, 8, 15, 16, 23, 24].indexOf(slide_counter) != -1) mode = 'closeup';
    
    if(new_slide_name == old_slide_name) {
      setTimeout(function() {load_slide(slide_num)}, 3000);
      return;
    } else {
      old_slide_name = new_slide_name;
      if (test_mode) slide_counter = slide_counter%24+1; else slide_counter++;
    }
    
    slide.src = slide_url + '/slides/' + new_slide_name + '?t=' + encodeURIComponent(new Date());
    
    slide.onload = function() {
      
      if(false && mode == 'closeup') {
        slide.className = 'closeupMode';
        var i = slide_counter%4;
        Element.setStyle(slide, morph_points[i][0]);
        new Effect.Morph(slide, {style: morph_points[i][1], duration: 6, transition: Effect.Transitions.linear});
      
      } else {
        slide.className = 'normalMode';
        Element.setStyle(slide, {top: '0px', left: '0px'});
      }
      
      slide_num == 2 ? new Effect.Appear('Slide2', {duration: 2}) : 
                       new Effect.Fade('Slide2',   {duration: 2});
      var next_slide_num = (slide_num == 1 ? 2:1);
      setTimeout(function() { load_slide(next_slide_num) }, 3000);
    }
  }});
}
