// Place your application-specific JavaScript functions and classes here
// This file is automatically included by javascript_include_tag :defaults
var delay = 3000;
var start_frame = 0;

function init() {
	var lis = $('slide-images').getElementsByTagName('li');
	
	for( i=0; i < lis.length; i++){
		if(i!=0){
			lis[i].style.display = 'none';
		}
	}
	end_frame = lis.length -1;
	
	start_slideshow(start_frame, end_frame, delay, lis);
	
	
}



function start_slideshow(start_frame, end_frame, delay, lis) {
	setTimeout(fadeInOut(start_frame,start_frame,end_frame, delay, lis), delay);
}


function fadeInOut(frame, start_frame, end_frame, delay, lis) {
	return (function() {
		lis = $('slide-images').getElementsByTagName('li');
		Effect.Fade(lis[frame]);
		if (frame == end_frame) { frame = start_frame; } else { frame++; }
		lisAppear = lis[frame];
		setTimeout("Effect.Appear(lisAppear);", 0);
		setTimeout(fadeInOut(frame, start_frame, end_frame, delay), delay + 1850);
	})
	
}


Event.observe(window, 'load', init, false);


Ajax.Responders.register({
       onComplete: function(responder, request){  
         var response = (request.responseText.evalJSON(true)); 
         if (response.object)  {
           // Remove old erroes
           $(response.object + "_form").select(".error").invoke("removeClassName", "error");
           $(response.object + "_form").select(".error_message").invoke("remove");
     
          // Success: clear all input with text
          if (response.success) {
            var form = $(response.object + "_form");
            form.select(".text").each(function(element) {element.value = ""});
          }
          // Else add error by creating a div with error message
          else {
            response.errors.each(function(error) {     
              var element = $(response.object + "_" + error[0]);
              if (element) {
                element.addClassName("error");
                element.insert({after: new Element("div", {className: "error_message"}).update(error[1])});
              }
            })
          }
        }
      }
})
