// News ticker
// Create namespace
if (at == undefined) var at = {};
if (at.bartelme == undefined) at.bartelme = {};

// Newsticker Class
at.bartelme.newsticker = Class.create();
at.bartelme.newsticker.prototype = {
 initialize: function() {
  // Get elements
  this.interval = 15000;
  this.container = $("newsticker");
  if (this.container == null) { return false; }
  this.messages = $A(this.container.getElementsByTagName("li"));
  this.number_of_messages = this.messages.length;
  if (this.number_of_messages == 0) { this.showError(); return false; }
  this.current_message = 0;
  this.previous_message = null;
  this.hideMessages();
  this.showMessage();
  // Install timer
  this.timer = setInterval(this.showMessage.bind(this), this.interval);
 },
 showMessage: function() {
  Effect.Appear(this.messages[this.current_message]);
  setTimeout(this.fadeMessage.bind(this), this.interval-1500);
  if (this.current_message < this.number_of_messages-1) {
   this.previous_message = this.current_message;
   this.current_message = this.current_message + 1;
  } else {
   this.current_message = 0;
   this.previous_message = this.number_of_messages - 1;
  }
 },
 fadeMessage: function() { Effect.Fade(this.messages[this.previous_message]); },
 hideMessages: function() { this.messages.each(function(message) { Element.hide(message); })},
 toggle: function() { Effect.BlindUp(this.container, 1000); },
 showError: function() {
  if (this.container.getElementsByTagName("ul").length == 0) {
   this.list = document.createElement("ul");
   this.container.appendChild(this.list);
  } else {
   this.list = this.container.getElementsByTagName("ul")[0];
  }
  this.errorMessage = document.createElement("li");
  this.errorMessage.className = "error";
  this.errorMessage.innerHTML = "Could not retrieve data";
  this.list.appendChild(this.errorMessage);
 }
}
Event.observe(window, "load", function(){new at.bartelme.newsticker()}, false);


var myimages=new Array();
function preloadimages() { for (i=0;i<preloadimages.arguments.length;i++){ myimages[i]=new Image(); myimages[i].src=preloadimages.arguments[i]; }}
function newImage( imgSrc ){ var imgName = new Image(); imgName.src = imgSrc; return imgName; }
function change( imgName, imgLocation ){ document[imgName].src = imgLocation; }
preloadimages("images/media/1.jpg","images/media/2.jpg","images/media/3.jpg","images/media/4.jpg","images/media/5.jpg","images/media/6.jpg");

function validate_email(field) {
 with (field) {
  apos=value.indexOf("@"); dotpos=value.lastIndexOf(".");
  if (apos<1||dotpos-apos<2) {
   document.getElementById('error-n').innerHTML = "<div>Please enter a valid email address</div>";
   Effect.BlindDown('error-n', {queue: {position: 'end', scope: 'n', limit: 1}});
   return false;
  }
  return true;
 }
}
