// $Id: slideshow.js,v 1.9.2.1.2.1 2009/04/05 17:38:34 timcn Exp $

Drupal.behaviors.slideshow = function(context) {
  $('.slideshow', context).each(function() {
    new Drupal.slideshow(this);
  });
};

Drupal.imageQueue = new function() {
  this.processing = false;
  this.queue = [];
  var obj = this;

  this.add = function(url) {
    this.queue.push(url);
    if (!this.processing) this.process();
  };

  this.process = function() {
    this.processing = this.queue.length > 0;
    if (this.processing) {
      var x = $('<img />').attr('src', this.queue.shift()).load(function() { obj.process(); });
    }
  };

  return this;
};

/*Drupal.slideshow = function(container) {
  this.container = $(container);
  this.id = container.id;
  $.extend(this, Drupal.settings.slideshow[this.id]);

  var slideshow = this;
  this.container
    .find('.previous').click(function() {
      slideshow.previous();
      return false;
    }).end()
    .find('.next, img').click(function() {
      slideshow.next();
      return false;
    }).end();

  for (var i = 0; i < this.images.length; i++) {
    Drupal.imageQueue.add(this.images[i].src);
  }
};
*/
Drupal.slideshow.prototype = {
  previous: function() {
    if (--this.current < 0) this.current = this.images.length - 1;
    this.update();
  },

  next: function() {
    if (++this.current >= this.images.length) this.current = 0;
    this.update();
  },

  update: function() {
    var current = this.images[this.current];

    this.container
      .find('img').attr('src', current.src).end()
      .find('.title').html(current.title).end()
      .find('.current').html(this.current + 1).end()
      .find('.next').attr('href', this.link.replace('$slideshow$', 1 + (this.current + 1 >= this.images.length ? 0 : this.current + 1))).end()
      .find('.previous').attr('href', this.link.replace('$slideshow$', (this.current < 1  ? this.images.length : this.current))).end();
  }
};


/* show hide image title */
var state = 'visible';

function showhide(layer_ref) {

	if (state == 'visible') 
	{
		state = 'hidden';
	}
	
	else {
		state = 'visible';
	}
	
	if (document.all) 
	{ //IS IE 4 or 5 (or 6 beta)
		eval( "document.all." + layer_ref + ".style.visibility = state");
	}
	
	if (document.layers) { //IS NETSCAPE 4 or below
			document.layers[layer_ref].visibility = state;
	}
	
	if (document.getElementById && !document.all) {
			maxwell_smart = document.getElementById(layer_ref);
			maxwell_smart.style.visibility = state;
	}
}

/* dimmer */
function dimlights()
{
	
	lights = document.getElementById("lights-dimmed");
	lights.style.visibility = 'visible';
	lights2 = document.getElementById("lights-dimmed2");
	lights2.style.visibility = 'visible';
	document.getElementById("lights-dimmed-full-page").style.visibility = 'visible';
	pagetitle = document.getElementById("pagetitle");
	pagetitle.style.visibility = 'hidden';	
	/*set cookie lightsoff to 1 */
	createCookie("lightsoff", "off", 7);	
	
	/*eraseCookie("lightson");*/
}

function dimlightstwo()
{
	lightsfull = document.getElementById("lights-dimmed-full-page");
	lightsfull.style.visibility = 'visible';
	lights2 = document.getElementById("lights-dimmed2");
	lights2.style.visibility = 'visible';
}

function lightsuptwo()
{
	lightsfull = document.getElementById("lights-dimmed-full-page");
	lightsfull.style.visibility = 'hidden';
}

function createCookie(name,value,days) {
	if (days) {
		var date = new Date();
		date.setTime(date.getTime()+(days*24*60*60*1000));
		var expires = "; expires="+date.toGMTString();
	}
	else var expires = "";
	document.cookie = name+"="+value+expires+"; path=/";
}


function lightsup()
{
	pagetitle = document.getElementById("pagetitle");
	pagetitle.style.visibility = 'visible';	
	lights = document.getElementById("lights-dimmed");
	lights.style.visibility = 'hidden';
	lights2 = document.getElementById("lights-dimmed2");
	lights2.style.visibility = 'hidden';
	document.getElementById("lights-dimmed-full-page").style.visibility = 'hidden';
	/*eraseIt('lightsoff');*/
	createCookie("lightsoff", "on", 7);
	/*eraseCookie("lightsoff");*/
}


function eraseCookie(name) {
	createCookie(name,"",-1);
}


function dimLightsCookieSet()
{
	lights = document.getElementById("lights-dimmed");
	lights.style.visibility = 'visible';
	pagetitle = document.getElementById("pagetitle");
	pagetitle.style.visibility = 'hidden';	
	document.getElementById('imagetitle').style.display = 'none';
}

function showtitle()
{
	document.getElementById("imagetitle").style.visibility = "visible";
}

function hidetitle()
{
	document.getElementById("imagetitle").style.visibility = "hidden";
}



function readCookie(cookiename) {
	
	var nameEQ = cookiename + "=";
	var ca = document.cookie.split(';');
	var offoron = "";

	for(var i=0;i < ca.length;i++) {
		var c = ca[i];
		while (c.charAt(0)==' ') c = c.substring(1,c.length);
		
		if (c.indexOf(nameEQ) == 0)
			offoron = c.substring(nameEQ.length,c.length);
			/*alert(c.substring(nameEQ.length,c.length));*/
			if (offoron == "off")
			{
					/*dimlights();
					break;*/
					dimLightsCookieSet();
					dimlightstwo();
					
					/*alert('Dim the lights');*/
			}
			else if (offoron == "on")
			{
				/*alert('Lights are on');*/
			}


	}
}


function eraseIt(name) {
	document.cookie.erase(name);
	alert('Cookie erased');
}




