
	var interval;
	var menu = false;
	function nextStep()
			{
				if (step<images.length-1)
					step++
				else
					step=0
			}
	function perviousStep()
			{
				if (step == 0)
					step=images.length-1
				else
					step--
			}
	function fadeOut(p_slidetime, p_opacityInvis)
			{
				if (intervalCleared == false)
				{
				$("#slide").stop();
					$("#slide").animate({opacity: p_opacityInvis}, p_slidetime);
				}
				else
					{intervalCleared = true;}
				return;
			}
	function fadeIn(p_slidetime, p_opacityvis)
			{
				$("#slide").stop();
				$("#slide").animate({opacity: p_opacityvis}, p_slidetime);
			}

	function displayImg(p_opacity, p_testStep)
			{
					$("#slide").css({opacity: p_opacity});
					$("img",$("#slide_image")).attr("src",images[step]["img_src"]);
					$("p",$("#slide_desc")).html(images[step]["img_dcp"]);
					$("#slide_title").html(images[step]["img_title"]);
			}

	function slideBack(p_imgInvis, p_slidetime, p_imgVis, p_currentStep, p_maxSteps)
		{
			slideStop(p_slidetime, p_imgVis);
			perviousStep();
			displayImg(p_imgInvis);
			fadeIn(p_slidetime, p_imgVis);

			showCurrentImgAtNav();
		}

	function slideForw(p_imgInvis, p_slidetime, p_imgVis)
		{
			slideStop(p_slidetime, p_imgVis);
			nextStep();
			displayImg(p_imgInvis);
			fadeIn(p_slidetime, p_imgVis);
			showCurrentImgAtNav();
		}

	function slideStop(p_slidetime, p_imgVis)
		{
			clearInterval(interval);
			intervalCleared = true;
			clearTimeout(fadeout);
			progressBarClear();

			fadeIn(p_slidetime, p_imgVis);
		}

	function slideStart(p_time, p_slidetime, p_imgInvis, p_imgVis)
		{
			intervalCleared = false;
			fadeOut(p_slidetime, p_imgInvis);
			progressBarFill(p_slidetime+500);
			interval = setTimeout("sliding()", p_slidetime+500);
		}

	function changeImgbyNav(p_step)
		{
			step = p_step;
			$("#button_Stop").attr("disabled","disabled");
			$("#button_Start").removeAttr("disabled");

			$("#button_Stop").addClass("disabled");
			$("#button_Start").removeClass("disabled");

			slideStop(slidetime, imgVis);

			displayImg(imgInvis);
			fadeIn(slidetime, imgVis);
			showCurrentImgAtNav();
		}

	function showCurrentImgAtNav()
		{
			$("a").removeClass("navActive");
			$("#a_"+step).addClass("navActive");
		}

	function progressBarFill(p_time)
		{
			$("#bar").animate({width: "100%", left: "0%"}, p_time);
		}
	function progressBarClear()
		{
            $("#bar").stop();
            $("#bar").css({'width' : 0, left: "50%"});
		}

$(document).ready(function()
{
	$("#button_Start").click(function ()
				{
					$("#button_Stop").removeClass("disabled");

					$("#button_Stop").removeAttr("disabled");
					$("#button_Start").attr("disabled","disabled");

					$("#button_Start").addClass("disabled");

					slideStart(time, slidetime, imgInvis, imgVis);
				});
	$("#button_Stop").click(function ()
			{
					$("#button_Start").removeClass("disabled");

					$("#button_Start").removeAttr("disabled");
					$("#button_Stop").attr("disabled","disabled");

					$("#button_Stop").addClass("disabled");

					slideStop(slidetime, imgVis);
				});
	$("#button_Forward").click(function ()
				{
					$("#button_Start").removeClass("disabled");

					$("#button_Start").removeAttr("disabled");
					$("#button_Stop").attr("disabled","disabled");

					$("#button_Stop").addClass("disabled");

					slideForw(imgInvis, slidetime, imgVis);
				});
	$("#button_Back").click(function ()
				{
					$("#button_Start").removeClass("disabled");

					$("#button_Start").removeAttr("disabled");
					$("#button_Stop").attr("disabled","disabled");

					$("#button_Stop").addClass("disabled");

					slideBack(imgInvis, slidetime, imgVis, 0, images.length-1);
				});
});

	function sliding()
			{
				intervalCleared = false;
				nextStep();
				displayImg(imgInvis);
				fadeIn(slidetime, imgVis);
				fadeout = setTimeout(function(){fadeOut(slidetime, imgInvis);},time-slidetime);
				showCurrentImgAtNav();
				progressBarClear();

				if (images[step]["duration"] > time)
				{
					progressBarFill(images[step]["duration"]);
					interval = setTimeout("sliding()", images[step]["duration"]);
				}
				else
				{
					progressBarFill(time);
					interval = setTimeout("sliding()", time);
				}
			}

	function InitSlideShow()
	{
		showCurrentImgAtNav();
		$("#slideNavigation").show();
		if (menu == true)
		{
			$("#slidemenu").show();
			$("#slide_desc").show();
		}
		perviousStep();
		sliding();
	}


	 function preloadSlideshow()
     {
		InitSlideShow();
		return;

     	var img = new Image();
        $("img",$("#slide_image")).attr("src",'/images/loader.gif');
		var initialHeight = $("img",$("#slide_image")).attr("height");
        $("img",$("#slide_image")).attr("height", "15");
        preloadImages(initialHeight);
     }

	 function preloadImages(initialHeight)
     {
     	var pic = new Array();
     	var i, total, load = 0;
     	var loaded = false;


         	total = images.length;
             for(i=0; i<total; i++)
             {
             	pic[i] = new Image();
                 pic[i].onload = function()
                 {
                 	load++;
                     if(load==total)
                     {
                      loaded = true;
 	                    if(loaded == true)
     	                {
         		            $("img",$("#slide_image")).attr("src",imagePath + images[0]["img_src"]);
         		            $("img",$("#slide_image")).attr("height", initialHeight);
                 			InitSlideShow();
                         }
                     }
                  }
               	 pic[i].src = images[i]['img_src'];
              }


      }


