// JavaScript Document

var gallery_image_array =  new Array();
var gallery_image_count=0;
var paging_total_count=0;
var paging_array = new Array();
var paging_slot_array = new Array();
var paging_slot=4;
var paging_start=0;
var paging_end=3;
var pivot=0;
var popuptype;

var popUp = {
	activeObj:false,
	
	init: function(obj,type,url){
		gallery_image_array =  new Array();
		gallery_image_count=0;
		paging_total_count=0;
		paging_array = new Array();
		paging_slot_array = new Array();
		paging_slot=4;
		paging_start=0;
		paging_end=3;
		pivot=0;
		
		popuptype=type;
		
		this.resetData();
		
		this.callPopup(obj,type,url);
	},
	
	resetData: function(){
		
		if(popuptype == "project"){
			$('popup_title').innerHTML='Loading...';
			
			/*$('popup_address').innerHTML='';
			$('popup_address').hide();*/
			
			$('popup_attributes').innerHTML='';
			$('popup_attributes').hide();
			
			/*$('description_box_content').innerHTML='';
			popUp.showDescription(false);*/
			
			$('popup_links').innerHTML='';
			$('popup_links').hide();
			
			$('main_image').hide();
			$('loader_img').show();
			
			this.removePaging();
		} else if(popuptype == "people"){
			$('popup_title').innerHTML='Loading...';
			$('popup_designation').innerHTML='';
			$('popup_attributes').innerHTML='';
			$('popup_attributes').hide();
			$('main_image').hide();
			$('loader_img').show();
		}
	},
	
	callPopup: function(obj,type,url){
		popUp.popupWindow(true,obj);
		var method='get';
		var param='';
		new Ajax.Request(url, {
			method:method,
			parameters: param,
			onSuccess: function(transport){
				
				//alert(transport.responseText);
				var responseArray = transport.responseText.evalJSON();
				
				if(responseArray['response']['resultType'] == "PROJECT"){
					if(responseArray['response']['value']['attributes']['title']){
						if($('popup_title')){
							$('popup_title').innerHTML=responseArray['response']['value']['attributes']['title'];
						}
					} else {
						if($('popup_title')){
							$('popup_title').innerHTML="";
						}
					}
					/*if(responseArray['response']['value']['attributes']['location']){
						if($('popup_address')){
							$('popup_address').innerHTML=responseArray['response']['value']['attributes']['location'];
							$('popup_address').show();
						}
					} else {
						$('popup_address').innerHTML='';
						$('popup_address').hide();
					}*/
					if(responseArray['response']['value']['attributes']['others']){
						if($('popup_attributes')){
							$('popup_attributes').innerHTML=responseArray['response']['value']['attributes']['others'];
						}
						$('popup_attributes').show();
					}
					/*if(responseArray['response']['value']['attributes']['description']){
						if($('description_box_content')){
							$('description_box_content').innerHTML=responseArray['response']['value']['attributes']['description'];
						}
					}*/
					
					if(responseArray['response']['value']['links']){
						if($('popup_links')){
							$('popup_links').innerHTML='<strong>Links:</strong> '+responseArray['response']['value']['links'];
						}
						$('popup_links').show();
					} else {
						$('popup_links').innerHTML='';
						$('popup_links').hide();
					}
					
					$('main_image').hide();
					$('loader_img').show();
					
					gallery_image_count = responseArray['response']['value']['images'].length;
					paging_total_count = gallery_image_count;
					
					pivot=0;
					popUp.createPaging();
					if(gallery_image_count>0){
						gallery_image_array = responseArray['response']['value']['images'];
						var imgPreloader = new Image();
						imgPreloader.onload=function(){
							///$('main_image').src=responseArray['response']['value']['images'][0];
							$('main_image').style.backgroundImage="url("+responseArray['response']['value']['images'][0]+")";
							imgPreloader.onload=function(){};
							imgPreloader.src="";
							$('loader_img').hide();
							$('main_image').show();
						}
						imgPreloader.src=responseArray['response']['value']['images'][0];
						
						
						
					}
				} else if(responseArray['response']['resultType'] == "PEOPLE"){
					if(responseArray['response']['value']['attributes']['title']){
						if($('popup_title')){
							$('popup_title').innerHTML=responseArray['response']['value']['attributes']['title'];
						}
					}
					if(responseArray['response']['value']['attributes']['designation']){
						if($('popup_designation')){
							$('popup_designation').innerHTML=responseArray['response']['value']['attributes']['designation'];
						}
					}

					if(responseArray['response']['value']['attributes']['others']){
						if($('popup_attributes')){
							$('popup_attributes').innerHTML=responseArray['response']['value']['attributes']['others'];
						}
						$('popup_attributes').show();
					}
					
					$('main_image').hide();
					$('loader_img').show();
					var imgPreloader = new Image();
					imgPreloader.onload=function(){
						//$('main_image').src=responseArray['response']['value']['image'];
						$('main_image').style.backgroundImage="url("+responseArray['response']['value']['image']+")";
						imgPreloader.onload=function(){};
						imgPreloader.src="";
						$('loader_img').hide();
						$('main_image').show();
					}
					imgPreloader.src=responseArray['response']['value']['image'];
					
				}
			},
			onFailure: function(){ //alert('Something went wrong...') 
				//failed
			}
		});	
	},
	
	createPaging: function(){
		if(paging_total_count>paging_slot){
			$('arrowboxLeft').show();
			$('arrowboxRight').show();
			$("paging").show();	
		} else {
			$('arrowboxLeft').hide();
			$('arrowboxRight').hide();
			if(paging_total_count==1){
				$("paging").hide();	
			} else {
				$("paging").show();		
			}
		}
		$('paging').innerHTML='';
		
		var numbers='';
		var track=0;
		var sep=' sep';
		for(var m=paging_start; m<paging_total_count; m++){
			if(track < paging_slot){
				if(track == (paging_slot-1)){
					sep='';
				} else if(m == (paging_total_count-1)){
					sep='';
				} else {
					sep=' sep';
				}
				if(m==pivot){
					numbers +='<a id="img_anchor_'+m+'" class="hold'+sep+'" href="javascript:void(0);" onclick="javascript:popUp.callPic('+m+');"><div align="center">'+(m+1)+'</div></a>';
				} else {
					numbers +='<a id="img_anchor_'+m+'" class="anchor'+sep+'" href="javascript:void(0);" onclick="javascript:popUp.callPic('+m+');"><div align="center">'+(m+1)+'</div></a>';
				}
			} else {
				break;	
			}
			track++;
		}
		$('paging').innerHTML=numbers;
	},
	
	removePaging: function(){
		$('arrowboxLeft').hide();
		$('arrowboxRight').hide();
		$('paging').innerHTML='';
	},
	
	callPic: function(imgindex){
		
		this.updateHold(imgindex);
		$('main_image').hide();
		$('loader_img').show();
		if(gallery_image_array[imgindex]){
			var imgPreloader = new Image();
			imgPreloader.onload=function(){
				//$('main_image').src=gallery_image_array[imgindex];
				$('main_image').style.backgroundImage="url("+gallery_image_array[imgindex]+")";
				imgPreloader.onload=function(){};
				imgPreloader.src="";
				$('loader_img').hide();
				$('main_image').show();
			}
			imgPreloader.src=gallery_image_array[imgindex];
		}
	},
	
	updateHold: function(imgindex){
		pivot = imgindex;
		for(var i=0; i<paging_total_count; i++){
			if(i == (paging_total_count-1)){
				sep='';
			} else {
				sep=' sep';
			}
			if($('img_anchor_'+i)){
				if(i==pivot){
					//$('img_anchor_'+i).className='hold'+sep;
					$('img_anchor_'+i).removeClassName('anchor');
					$('img_anchor_'+i).addClassName('hold');
				} else {
					//$('img_anchor_'+i).className='anchor'+sep;
					$('img_anchor_'+i).addClassName('anchor');
					$('img_anchor_'+i).removeClassName('hold');
				}
			}
		}
	},
	
	scrollRight: function(){
		if(paging_end < (paging_total_count-1)){
			paging_start++;
			paging_end++;
			this.createPaging();
		}
		if(paging_start>0){
			$('scrollLeft').className='arrow';	
		}
		if(paging_end == (paging_total_count-1)){
			$('scrollRight').className='arrow_disable';
		}
	},
	scrollLeft: function(){
		if(paging_start > 0){
			paging_start--;
			paging_end--;
			this.createPaging();
		}
		if(paging_end<paging_total_count){
			$('scrollRight').className='arrow';	
		}
		if(paging_start == 0){
			$('scrollLeft').className='arrow_disable';
			$('scrollRight').className='arrow';
		}
	},
	
	showDescription: function(flag){
		if(flag){
			$('gallery_box').hide();
			$('description_box').show();
		} else {
			$('gallery_box').show();
			$('description_box').hide();
		}
	},
	
	popupWindow: function(flag,obj){
		if(popuptype == "project"){
			
			if(flag){
				this.activeObj = obj;
				var startOffset = $$('.projects-cms-section2')[0].cumulativeOffset();
				var sourceOffset = $(obj).cumulativeOffset();
				$$('#popup .box_close','#popup .popup_body').each(function(ob){ob.hide()});
				$('popup').hide().setStyle('visibility:visible;height:67px; width:84px; top:'+(sourceOffset[1]-($('projects-list').scrollTop)+5)+'px; left:'+(sourceOffset[0]+5)+'px;').appear({duration:0.4}).morph('height:433px;width:607px;top:'+(startOffset[1])+'px;left:'+(startOffset[0]+226)+'px;',{duration:0.4,delay:0.2});
				$$('#popup .box_close','#popup .popup_body').each(function(ob){ob.appear({duration:0.4,delay:0.6})});
			} else {
				obj = this.activeObj;
				var sourceOffset = $(obj).cumulativeOffset();
				$$('#popup .box_close','#popup .popup_body').each(function(ob){ob.hide()});
				$('popup').morph('height:47px; width:64px; top:'+(sourceOffset[1]-($('projects-list').scrollTop)+5)+'px; left:'+(sourceOffset[0]+5)+'px;',{duration:0.4}).fade({duration:0.3,delay:0.3});
			}
		} else if(popuptype == "people"){
			if(flag){
				this.activeObj = obj;
				var startOffset = $$('.eds-body')[0].cumulativeOffset();
				var sourceOffset = $(obj).cumulativeOffset();
				$$('#popup-people .box_close','#popup-people .popup_body').each(function(ob){ob.hide()});
				$('popup-people').hide().setStyle('visibility:visible;height:47px; width:64px; top:'+sourceOffset[1]+'px; left:'+sourceOffset[0]+'px;').appear({duration:0.4}).morph('height:350px;width:607px;top:'+(startOffset[1]+82)+'px;left:'+(startOffset[0]+295)+'px;',{duration:0.4,delay:0.2});
				$$('#popup-people .box_close','#popup-people .popup_body').each(function(ob){ob.appear({duration:0.4,delay:0.6})});
				///setTimeout("$('popup_attributes').setStyle('height:'+(289-($('popup_header').offsetHeight))+'px;');",630);
			} else {
				obj = this.activeObj;
				var sourceOffset = $(obj).cumulativeOffset();
				$$('#popup-people .box_close','#popup-people .popup_body').each(function(ob){ob.hide()});
				$('popup-people').morph('height:57px; width:74px; top:'+sourceOffset[1]+'px; left:'+sourceOffset[0]+'px;',{duration:0.4}).fade({duration:0.3,delay:0.3});
			}
			
		}
	}
	
	
};
