﻿// JScript File

function ciplHomeSlider()
	{
		//data
		var data = new Array();
		var path = 2;var caption=1;var no = 0;link=3;
		
		//fade in interval
		var inInterval = 100;
		var inIncr = 5;
		//fade out interval
		var outInterval = 100;
		var outIncr = 5;
		//stady image
		var stopTime = 3000;
		
		//flag for scorll
		scrollSwithch = true;
		//current index
		var curIdx = 0;
		//divs
		var divs;
		
		this.showSize = showSize;
		this.setData= setData;
		
		this.addData = addData;
		this.initImage = initImage;
		this.fadeIn = fadeIn;
		
		//initial scrolling
		function initImage(_divs) 
		{
		  divs = _divs;

		  image = document.getElementById(divs[path]);
		  image.style.visibility = 'visible';
		  
		  for (x in divs)
		  {
		    var divObj = document.getElementById(divs[x]);
		    addAnEvent(
		        divObj, "mouseover", function(e)
		                              {
		                                  scrollSwithch = false;            
		                              }
		              );
		     addAnEvent(
		        divObj, "mouseout", function(e)
		                              {
		                                  scrollSwithch = true;            
		                              }
		              );
		    if (divObj != null)
		    {
		  	    setOpacity(divObj, 0);		  	
		  	    
		  	}
		  }	  
		  
		  setProperies()
		  fadeIn(0,this);
		 
		}

		
		//return size of data
		function showSize()
		{
			return data.length;
		}
				
		//add data
		function addData(newObj)
		{
			data[data.length] = newObj;
		}
		
		//set data array
		function setData(_data)
		{
			data = _data;
		}
		
		
		
		//set opacity
		function setOpacity(obj, opacity) 
		{		
		    if (obj !=null)
		    {
			    opacity = (opacity == 100)?99.999:opacity;  
			    // IE/Win
			    obj.style.filter = "alpha(opacity:"+opacity+")";
    			
			    // Safari<1.2, Konqueror
			    obj.style.KHTMLOpacity = opacity/100;
    			
			    // Older Mozilla and Firefox
			    obj.style.MozOpacity = opacity/100;
    			
			    // Safari 1.2, newer Firefox and Mozilla, CSS3
			    obj.style.opacity = opacity/100;
		    }
			
			
		}
		
		
		//fade in object
		function fadeIn(opacity,_this) 
		{
		  
		   if (scrollSwithch) 
		   {
		   
		   
    	    	
    	  	    if (opacity < 101) 
    	  	    {    	  
    	  		     for (x in divs)
				     {
				 	    obj = document.getElementById(divs[x]);
				 	    setOpacity(obj, opacity);
				     }			 	      		
	      		    //increase opacity
      			    opacity += inIncr;   
      			    //set recursive
      			    var toDelay = function() { fadeIn(opacity, _this ); };
      			    window.setTimeout(toDelay, inInterval);      			
    		    }
    		    else
    		    {
    			    //stop for some time and call fade out 
    			    var toDelay = function() { fadeOut(100, _this ); };
      			    window.setTimeout(toDelay, stopTime); 	
    		    }
    	    }
    	    else
    	    {
    	        var toDelay = function() { fadeIn(opacity, _this ); };
      			window.setTimeout(toDelay, inInterval);   
    	    }
  		  
		}
		function setProperies()
		{
		    var str = "";
		        for (var count = 0; count < data.length; count++)
			    {
   				    if (count  == curIdx)
   				    {
   				        str += "<img src='images/hp_gallery_bullet02.gif' alt='' id='dot" + (count + 1)+ "' />&nbsp;"
   				    }
   				    else
   				    {
   				        str += "<img src='images/hp_gallery_bullet01.gif' alt='' id='dot" + (count + 1)+ "' />&nbsp;"
   				    }
   				    
			    }
		        var obj = document.getElementById("divDots");      
		        obj.innerHTML = str;
				document.getElementById(divs[path]).src =  data[curIdx][path];
    			document.getElementById(divs[no]).innerHTML =  data[curIdx][no];
    			document.getElementById(divs[caption]).innerHTML =  data[curIdx][caption];
    			document.getElementById(divs[path]).alt =  data[curIdx][caption];
    			document.getElementById(divs[link]).href =  data[curIdx][link];
    			
		}
		
		//fade out object
		function fadeOut(opacity,_this) 
		{
		  if (scrollSwithch) 
		   {
		  	//set object
    	  	    if (opacity > 0) 
    	  	    {
    	  		    //set opacity
	      		    for (x in divs)
				     {
				 	    obj = document.getElementById(divs[x]);
				  	    setOpacity(obj, opacity);
				     }		      		//decrease opacity
      			    opacity -= outIncr;
      			    //set recursive
      			    var toDelay = function() { fadeOut( opacity, _this ); };
      			    window.setTimeout(toDelay, outInterval); 
    		    }
    		    else
    		    {
    			    scrollSwithch=false;
    			    for (x in divs)
				     {
				 	    if (document.getElementById(divs[x]) != null)
		  	                    setOpacity(document.getElementById(divs[x]), 0);		  	
				     }	    			
				    curIdx++;
    			    if (curIdx >= data.length)
    			    {
    				    curIdx = 0;
    			    }
    			    
    			    setProperies();
    			    
    			    fadeIn(inIncr, _this );
        		 	scrollSwithch=true;
      		    }
  		    }
  		    else
  		    {
  		        //set recursive
      			    var toDelay = function() { fadeOut( opacity, _this ); };
      			    window.setTimeout(toDelay, outInterval); 
  		    }
		}
	}
	
	
	
	function getImagesHome() 
    {
	//explore_type_Obj = explore_type;
    
	    var requestUrl = "ajaxPages/getPhotogallary.aspx?label=homepage";
	    
	    CreateXmlHttp();
	
	
	    // If browser supports XMLHTTPRequest object
	    if(XmlHttp)
	    {
		    //Setting the event handler for the response
		    XmlHttp.onreadystatechange = setScrollDataResponse;
    		
		    XmlHttp.open("GET", requestUrl,  true);
    		
		    //Sends the request to server
		    XmlHttp.send(null);		
    		
	    }
	    
	//return true;
    }
	
	
	function setScrollDataResponse()
    {
	       var moz = (typeof document.implementation != 'undefined') && (typeof document.implementation.createDocument != 'undefined');
            var ie = ( typeof window.ActiveXObject != 'undefined');
           
	    // To make sure receiving response data from server is completed
	    if(XmlHttp.readyState == 4)
	    {
    		
		    // To make sure valid response is received from the server, 200 means response received is OK
		    if(XmlHttp.status == 200)
		    {			
			     if (document.implementation.createDocument)
			    {			
				    setScrollData(XmlHttp.responseXML.documentElement);
			    } 
			    else if (moz)
			    {			
				    setScrollData(XmlHttp.responseXML.documentElement);
    				
			    } 
			    else if (ie)
			    { 
				    var xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
				    xmlDoc.async = false;
				    xmlDoc.loadXML(XmlHttp.responseText);
				    setScrollData(xmlDoc);
			    }
		       else
		       {
			       alert('browser does not support this script.');
		       }
    			
		    }
		    else
		    {
		    	//alert("There was a problem retrieving data from the server." );
		    }
	    }
    	
    }
	
	
    
    
    function setScrollData(Node)
    {
            
		    if (Node!=null)
		    {
    		
			    var Nodes = Node.getElementsByTagName('photo');
			    
			    var path; 
			    var caption;	
    			var link;
			    //Add new cities list to the state combo box.
    			var hs = new ciplHomeSlider();
    			var str ='';
			    for (var count = 0; count < Nodes.length; count++)
			    {
   				    path=GetInnerText(Nodes[count].getElementsByTagName('path')[0]);
   				    caption=GetInnerText(Nodes[count].getElementsByTagName('description')[0]);
   				    link=GetInnerText(Nodes[count].getElementsByTagName('link')[0]);
   				    hs.addData([(count + 1)  , caption ,'mediafiles/image/' + path,link ]);	
   				    str += "<img src='images/hp_gallery_bullet01.gif' alt='' id='dot" + (count + 1)+ "' />&nbsp;"
			    }
			    
    		    document.getElementById("divDots").innerHTML = str;
                hs.initImage(["divNo","divText","thephoto","photolink"]);

		    }
    		
    }
    
