/*

    This program is free software: you can redistribute it and/or modify

    it under the terms of the GNU General Public License as published by

    the Free Software Foundation, either version 2 of the License, or

    (at your option) any later version.



    This program is distributed in the hope that it will be useful,

    but WITHOUT ANY WARRANTY; without even the implied warranty of

    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the

    GNU General Public License for more details.



    You should have received a copy of the GNU General Public License

    along with this program.  If not, see <http://www.gnu.org/licenses/>.



	--------------------------------------------------------------------

	

	Simple banner rotator. Version: 1.2.1

	Download, support, contact: http://www.spyka.net 

	(c) Copyright 2009 spyka Web Group

	

	

	notes: option to open in target window

	

	

*/



/* 

	For full documentation:  http://www.spyka.net/docs/simple-banner-rotator

	For support:			 http://www.spyka.net/forums

*/



//								EDIT FROM HERE

///////////////////////////////////////////////////////////////////////////////////

//         						Program options





// if 1 (one), all images will be resized to img_width and img_height, else images will display their correct size

var force_size	= 0;

// desired height and width of images, only takes affect if above is one

var img_width	= 170;

var img_height	= 110;



// time between refreshs of ad locations, to disable refreshs set to 0. In milliseconds, 1000 = 1 second

var refresh_time = 5000;

// maximum amount of refreshs, good to set if a user may be on a page for a long period of time.

var refresh_max = 200;



// if you do not want the same banners to display on the same page then set this to 0, else set it to 1.

// this option is only used if you have put the show_banners() javascript code more than once into a page

var duplicate_banners = 0;





// ignore/skip this line 

var banners = new Array();



// banner list syntax: banners[x] = new banner(website_name, website_url, banner_url, show_until_date);  DATE FORMAT: dd/mm/yyyy

// be sure to increase x by 1 for each banner added!

// to make sure a banner is always rotating, just set the date far into the future, i.e. year 3000

banners[0] = new banner(' ', 'http://www.osms.co.ke', 'banners/osmssmall.jpg', '31/12/2010');

banners[1] = new banner(' ', 'mailto:sales.accolade@triad.co.ke', 'banners/accsmall.jpg', '31/12/2010');

banners[2] = new banner(' ', 'http://www.excelout.com', 'banners/excelout.jpg', '31/12/2010');

banners[3] = new banner(' ', 'http://www.hostalite.com', 'banners/hostalite.jpg', '31/12/2010');

banners[4] = new banner(' ', 'http://www.lacecorner.com', 'banners/lacecorner.jpg', '31/12/2010');

banners[5] = new banner(' ', 'http://www.futureofanimals.com', 'banners/futureofanimals.jpg', '31/12/2010');

banners[6] = new banner(' ', 'http://www.swissgarde.com', 'banners/swgsmall.jpg', '31/12/2010');

banners[7] = new banner(' ', 'http://www.liu-xu.cn', 'banners/translart.jpg', '31/12/2010');




//         				There is no need to edit below here

///////////////////////////////////////////////////////////////////////////////////



var used = 0;

var first_pass = 0;

var location_counter = 1;

var refresh_counter = 1;



function banner(name, url, image, date)

{

	this.name	= name;

	this.url	= url;

	this.image	= image;

	this.date	= date;

	this.active = 1;

}



function show_banners()

{

	var html = '<div id="adLocation-' + location_counter + '"></div>';

	document.write(html);

	display_banners(location_counter);

	location_counter++;

}



function display_banners(location)

{

	if(location == '' || !location || location < 0)

	{

		// no location given

		return;

	}

	

	var am	= banners.length;

	

	if((am == used) && duplicate_banners == 0) {

		// all banners have been used

		return;

	}



	var rand	= Math.floor(Math.random()*am);	

	var bn 		= banners[rand];

	

	var image_size 	= (force_size == 1) ? ' width="' + img_width + '" height="' + img_height + '"' : '';

	var html 		= '<a href="' + bn.url + '" title="' + bn.name + '" target="_self"><img border="0" src="' + bn.image + '"' + image_size + ' alt="' + bn.name+ '" /></a>';

	

	var now		= new Date(); 



	var input	= bn.date;

	input		= input.split('/', 3);

	var end_date	= new Date();



	end_date.setFullYear(parseInt(input[2]), parseInt(input[1]) - 1, parseInt(input[0]));

	

	if((now < end_date) && bn.active == 1) 

	{

		var location_element = document.getElementById('adLocation-' + location);

		

		if(location_element == null)

		{

			// ad location doesn't exist

			alert('spyka Webmaster banner rotator\nError: adLocation doesn\'t exist!');

		}

		else

		{

			location_element.innerHTML = html;

			

			if(duplicate_banners == 0)

			{

				bn.active = 0;

				used++;

			}

		}

	}

	else

	{

		display_banners(location);

	}

}



function refresh_banners()

{

	if((refresh_counter == refresh_max) || refresh_time < 1)

	{

		clearInterval(banner_refresh);  

	}

	used = 0;

	for(i = 0; i < banners.length; i++)

	{

		banners[i].active = 1;

	}

	for(i = 1; i < location_counter; i++)

	{

		display_banners(i);

	}

	refresh_counter++;

}

var banner_refresh = window.setInterval(refresh_banners, refresh_time);