var homecount = 0;
var parameters = '';
var currentpath = Array();
var _arrow = 0;
var _arrowoffset = 0;
document._aExistingProjectData = Array();

$(document).ready(function(){
	setLinks(' ');
});



function setLinks(p_sDiv){
	//alert(p_sDiv);
	$(p_sDiv+' .ajaxlink').click( function(){ 
		if(! CandtAjax._override){
			if( $(this).attr('rev') == 'left'){
				CandtAjax._direction = 'left';
			}
			if( $(this).attr('rev') == 'right'){
				CandtAjax._direction = 'right';
			}
			SWFAddress.setValue(this.rel); 
			this.blur(); 
		}
		return false;
	});
}


SWFAddress.addEventListener(SWFAddressEvent.INIT, handleInit);
function handleInit(event){
	//alert('INIT');
}



SWFAddress.addEventListener(SWFAddressEvent.CHANGE, handleChange);

function handleChange(event) {
	CandtAjax._count++;
	
	CandtWork._issearchset = 0;
	
    parameters = '';
	i=0;
    for (var p in event.parameters) {
		//alert(p+'='+event.parameters[p]);
		if(i) parameters += '&';
        parameters +=  p + '=' + event.parameters[p];
		i++;
    }
	
	getPage(event.path);

}



getDocumentWidth = function()
{
	if (document.body.scrollWidth)
		return document.body.scrollWidth;
	var w = document.documentElement.offsetWidth;
	if (window.scrollMaxX)
		w += window.scrollMaxX;
	return w;
};

getDocumentHeight = function()
{
	if (document.body.scrollHeight)
		return document.body.scrollHeight;
	return document.documentElement.offsetHeight;
};


function getPageWithDirection(path, direction) {
	CandtAjax._direction = direction;
	SWFAddress.setValue(path); 
}

function getPage(path){
	//window.scrollTo(0,0);
	
	//$.scrollTo(0, {speed:300, axis:'y'} );
	
	patharray = path.split('/') ;
	$('#header .container').attr('class','container');
	
	
	if(	CandtAjax._ishome == 1 && patharray[1]){
		
		if(CandtHome.animating) {
			$('#realheader').css('display','block');
			$('#fakeheader').css('display','none');
			$('#realheader').css('visibility','visible');	
			$('#fakeheader').css('visibility','hidden');
		};
		
		$('#ajaxcontrol').empty();
		
		$('#ajaxhelper').animate({ opacity: .9999}, 1, '', function() { 
			$('body').css('background-color','#222');
				$('#ajaxhelper').animate({ opacity: .9999}, 1, '', function() { 
					$('body').css('background-color','#444');
						$('#ajaxhelper').animate({ opacity: .9999}, 1, '', function() { 
							$('body').css('background-color','#666');
								$('#ajaxhelper').animate({ opacity: .9999}, 1, '', function() { 
									$('body').css('background-color','#888');
									
										$('#ajaxhelper').animate({ opacity: .9999}, 1, '', function() {
																				
											$('body').css('background-color','#aaa');					   
											$('#ajaxhelper').animate({ opacity: .9999}, 1, '', function() { 
												$('body').css('background-color','#fff');
												ajaxcontrolswitch(patharray[1]);
												CandtAjax._ishome = 0;
												
											});
										});
								});
							
						});
					
				});
		});
		
		$('#homeborder').css('display','none');
		$('body').attr('id','');
	}
	else{
		
		ajaxcontrolswitch(patharray[1]);
	}
	if(patharray[1] == 'playlist')
		$('#header .container').addClass('playlist_view');
	else
		$('#header .container').addClass(patharray[1]);
	
}




function ajaxcontrolswitch(switchon){
	
	 
	
	_arrowoffset = 0;
	
	switch(switchon){
		case '':
			setTitleAs('');
			_arrow = 0;

			$("#header .backdrop").stop().animate({ opacity: 0 }, 150);
			$('#arrow').css('display','none');
			
			homecount++;
			CandtAjax._ishome = 1;
			
			$('#ajaxcontrol').empty();
			$('body').css('background-color','#000');
			
			$('body').attr('id','home_body');
			
			$('#home_body #realheader').css('display','none');
			$('#home_body #fakeheader').css('visibility','hidden');
			$('#home_body #homeborder').css('visibility','hidden');
			$('#home_body #homeborder').css('display','block');

			$('#ajaxhelper').animate({ opacity: .9999}, 0001, '', function() { 
				
				$('#home_body #fakeheader #header').css('visibility','hidden');
				$('#home_body #fakeheader').css('display','block');
				
				CandtAjax._xArgs.callBack = CandtHome.initialize;
				CandtAjax._xArgs.data = 'a=ajax_home';
				CandtAjax._xArgs.returnDiv = '#ajaxcontrol';
				CandtAjax._xArgs.noloader  = true;
				CandtAjax._xArgs.bypassCall = false;
				CandtAjax.makeAjaxCall();
			
		   });
			break;
		
		
		case 'contact':
			setTitleAs('Contact');
			_arrowoffset = 484;

			$("#header .backdrop").stop().animate({ opacity: .9999 }, 150);
				
			CandtAjax._xArgs.data = 'a=ajax_contact';
			CandtAjax._xArgs.returnDiv = '#ajaxcontrol';
			CandtAjax._xArgs.cover =  '#ajaxcontrolcover';
			CandtAjax._xArgs.bypassCall = false;
			
			if(movearrowreturn = movearrow())
				$('#ajaxhelper').animate({ opacity: .9999}, movearrowreturn, '', function() { 
					CandtAjax.makeAjaxCall();
				});
			else
				CandtAjax.makeAjaxCall();
			break;
			
		
		case 'careers':
				
			_arrowoffset = 402;
			setTitleAs('Careers');

			$("#header .backdrop").stop().animate({ opacity: .9999 }, 150);
				
		case 'about':
				
			if(switchon == 'about'){
				_arrowoffset = 317;
				setTitleAs('About Us');	
				$("#header .backdrop").stop().animate({ opacity: .9999 }, 150);
			}
					
			
			//alert(patharray[2]);
			//alert(currentpath);
			if(patharray[2]  && currentpath[1]==patharray[1]){
				CandtAjax._xArgs.data = 'a=ajax_sections_sub';
				CandtAjax._xArgs.data += '&cat_slug='+patharray[2];
				CandtAjax._xArgs.data += '&sec_slug='+patharray[3];
				CandtAjax._xArgs.returnDiv = '#sections_content';
				CandtAjax._xArgs.cover =  '#sections_content_cover';
				CandtAjax._xArgs.bypassCall = false;
				CandtAjax.makeAjaxCall();
				$('#sections_navlist .span').attr('class', 'link');
				$('#'+patharray[2]+'In'+patharray[3]).attr('class','span');
			}
			else if(patharray[2] ){
				CandtAjax._xArgs.callBack = sectionsComplete;
				CandtAjax._xArgs.data = 'a=ajax_sections';
				CandtAjax._xArgs.data += '&page='+patharray[1];
				CandtAjax._xArgs.data += '&cat_slug='+patharray[2];
				CandtAjax._xArgs.data += '&sec_slug='+patharray[3];
				CandtAjax._xArgs.returnDiv = '#ajaxcontrol';
				CandtAjax._xArgs.cover =  '#ajaxcontrolcover';
				CandtAjax._xArgs.bypassCall = false;
				
				if(movearrowreturn = movearrow())
					$('#ajaxhelper').animate({ opacity: .9999}, movearrowreturn, '', function() { 
						CandtAjax.makeAjaxCall();
					});
				else
					CandtAjax.makeAjaxCall();
					
				$('#sections_navlist .span').attr('class', 'link');
				$('#'+patharray[2]+'In'+patharray[3]).attr('class','span');
			}
			else {
				CandtAjax._xArgs.callBack = sectionsComplete;
				CandtAjax._xArgs.data = 'a=ajax_sections';
				CandtAjax._xArgs.data += '&page='+patharray[1];
				CandtAjax._xArgs.returnDiv = '#ajaxcontrol';
				CandtAjax._xArgs.cover =  '#ajaxcontrolcover';
				CandtAjax._xArgs.bypassCall = false;
				if(movearrowreturn = movearrow())
					$('#ajaxhelper').animate({ opacity: .9999}, movearrowreturn, '', function() { 
						CandtAjax.makeAjaxCall();
					});
				else
					CandtAjax.makeAjaxCall();
			}
			break;
			
			
			
		case 'work':
			CandtPlaylist.clearPlaylistForNavigation();
			_arrowoffset = 232;

			$("#header .backdrop").stop().animate({ opacity: .9999 }, 150);
			
			if(patharray[2] && patharray[2] != 'search' && currentpath[1]==patharray[1] ){
				 
				CandtAjax._override = true;
				CandtGlobal.replacePlayerWithPlaceHolder('playerHolder');
				CandtAjax._xArgs.data = 'a=ajax_single_proj';
				CandtAjax._xArgs.data += '&project_slug='+patharray[3];
				CandtAjax._xArgs.data += '&project_date='+patharray[2];
				CandtAjax._xArgs.returnDiv = '#content_transition_two';
		//		CandtAjax._xArgs.cover =  '#ajaxcontrolcover';
				CandtAjax._nofade = 0;
				CandtAjax._xArgs.callBack = workSingleScroll;
				CandtAjax._xArgs.noloader = 1;
				CandtAjax._xArgs.bypassCall = false;
				
				var l_sKeyValue = patharray[2] + "_" + patharray[3];
				if( (obj = document._aExistingProjectData[l_sKeyValue]) != null ){
					//alert('havit');
					CandtAjax._xArgs.returnVar = obj;
					CandtAjax._xArgs.bypassCall = true;
				} 
				
				if(currentpath[2])
					CandtAjax.makeAjaxCall();
				
				else{
					
					$.scrollTo(0, {speed:500, axis:'y'} );
					
					$('#ajaxhelper').animate({ opacity: .9999}, 500, '', function() { 
						CandtAjax.makeAjaxCall();
					});
				}
				
				
			}
			else if(patharray[2] && patharray[2] != 'search' ){
				CandtAjax._xArgs.data = 'a=ajax_single';
				CandtAjax._xArgs.data += '&project_slug='+patharray[3];
				CandtAjax._xArgs.data += '&project_date='+patharray[2];
				CandtAjax._xArgs.returnDiv = '#ajaxcontrol';
				CandtAjax._xArgs.cover =  '#ajaxcontrolcover';
				CandtAjax._xArgs.bypassCall = false;
				CandtAjax._xArgs.callBack = workSingleComplete;
				if(movearrowreturn = movearrow())
					$('#ajaxhelper').animate({ opacity: .9999}, movearrowreturn, '', function() {
						CandtAjax.makeAjaxCall();
					});
				else
					CandtAjax.makeAjaxCall();
				
				
			}
			else if( currentpath[1]==patharray[1] ){
				$('#content_transition_two').css('visibility','hidden');
				CandtAjax._override = true;
				CandtGlobal.replacePlayerWithPlaceHolder('playerHolder');
				CandtAjax._xArgs.data = 'a=ajax_work';
				CandtAjax._xArgs.data += '&nofade=1&haveTags='+document.bHaveSearchdata;
				CandtAjax._xArgs.returnDiv = '#content_transition_two';
		//		CandtAjax._xArgs.cover =  '#ajaxcontrolcover';
				CandtAjax._xArgs.callBack = workSingleScroll;
				CandtAjax._nofade = 1;
				CandtAjax._xArgs.islist = true;
				CandtAjax._xArgs.noloader = 1;
				CandtAjax._xArgs.bypassCall = false;
				CandtAjax.makeAjaxCall();
				
			}
			else{
				CandtAjax._xArgs.data = 'a=ajax_work';
				CandtAjax._xArgs.data += '&footer=1';
				CandtAjax._xArgs.returnDiv = '#ajaxcontrol';
				CandtAjax._xArgs.cover =  '#ajaxcontrolcover';
				CandtAjax._xArgs.callBack = workListComplete;
				CandtAjax._xArgs.bypassCall = false;
				if(movearrowreturn = movearrow())
					$('#ajaxhelper').animate({ opacity: .9999}, movearrowreturn, '', function() { 
						CandtAjax.makeAjaxCall();
					});
				else
					CandtAjax.makeAjaxCall();
				
					
				
			}
			break;
		
		
		
		case 'playlist':
				
				setTitleAs('Playlist');
				_arrow = 0;
				$('#arrow').css('display','none');

				$("#header .backdrop").stop().animate({ opacity: .9999 }, 150);
				
				if(patharray[2] == 'all'){
					CandtAjax._xArgs.data = 'a=ajax_playlist_all';
					CandtAjax._xArgs.returnDiv = '#ajaxcontrol';
					CandtAjax._xArgs.cover =  '#ajaxcontrolcover';
					CandtAjax._xArgs.callBack = setPlaylistLinks; 
					CandtAjax._xArgs.bypassCall = false;
					CandtAjax.makeAjaxCall();
					
				}
				else{
					CandtAjax._xArgs.data = 'a=ajax_playlist';
					CandtAjax._xArgs.returnDiv = '#ajaxcontrol';
					CandtAjax._xArgs.cover =  '#ajaxcontrolcover';
					CandtAjax._xArgs.callBack = setPlaylistLinks;
					CandtAjax._xArgs.bypassCall = false;
					CandtAjax.makeAjaxCall();
				}
				break;
		
		default:
			window.location = "/"
			break;
		
		
	}
	
	$('#realheader').css('visibility','visible');
	currentpath=patharray;
}

function setPlaylistLinks(){
	setLinks('#playlist');
}

function make_scroller_control(){
	//	make_scroller(1, 410,90, 'message_text')
}

function sectionsComplete(){
	CandtCareers.fadeInPage();
	setLinks('#sections');
}

function workSingleComplete(){
	setLinks('#work_single');
	CandtGlobal.setNavHovers();
	setTitleFrom('#work_single_details  h2');

}


function movearrow(){
	
	
	movetime = 300;
	
	if(_arrow){
		$('#arrow').animate({ "left": _arrowoffset+"px" }, movetime);
		return movetime;
	}
	else{
		_arrow =1;
		$('#arrow').css('left',_arrowoffset+'px');
		$('#arrow').css('display','block');
		return false;
	}
}


function workListComplete(){
	CandtGlobal.setDefaultInputs();
	setLinks('#work_list');
	CandtWork.initialize();
	
	$('#work_list').wrap('<div class="content_holder content_holder_sequential"></div>');
	$('#work_list').wrap('<div class="content_transition_holder" id="content_transition_holder">');
	$('#work_list').wrap('<div class="content_transition_reel">');
	$('#work_list').wrap('<div id="content_transition_one" class="content_transition_item">');
	 				
	$('#content_transition_one').after('<div id="content_transition_two" class="content_transition_item"></div>');
	setTitleAs('Work');
	
	
	worklistSearchCheck();
	
}

function worklistSearchCheck(){
	
	if( patharray[2] == 'search' && patharray[3]  ){
		var searchString = patharray[3].replace(/%20/g,' ');
		$('#livesearch').attr('value',searchString );
		CandtWork.startSearch();	
	}
}


function workSingleScroll(){
	//alert('workSingleScroll');
	//alert(CandtWork._sCurrentProjectSlug);
	var l_sKeyValue = CandtWork._sCurrentProjectDate + "_" + CandtWork._sCurrentProjectSlug;
	if(!document._aExistingProjectData[l_sKeyValue]){
		//alert("Storing : " + l_sKeyValue);
		document._aExistingProjectData[l_sKeyValue] = CandtAjax._xArgs.returnVar;
	}
	 
	CandtGlobal.setDefaultInputs();
	$('#content_transition_holder').css('overflow','hidden');
	$('.content_transition_reel').css('width','2000px');
	$('#content_transition_two').css('visibility','visible');
	if (CandtAjax._direction == 'right'){
		
		$('#content_transition_holder').scrollTo( 1000, {
			speed:CandtPlaylist._nTransitionSpeed, axis:'x' ,
			onAfter: function(){   
			
				if ( ! $.browser.msie  ){
					$('#content_transition_one').html( $('#content_transition_two').html() );
				}
				else{
					$('#content_transition_one').html( CandtAjax._xArgs.returnVar );
				}
				$('#content_transition_holder').scrollTo( 0, {speed:0, axis:'x',onAfter: function(){
						workSingleScroll_helper();
													
						 setTitleFrom('#work_single_details  h2');	
						 
						CandtGlobal.setDefaultInputs ();	
						worklistSearchCheck();
					}
				});
			}
		});
	}
	else{
		var ieHackString = $('#content_transition_two').html( );
		$('#content_transition_two').html( $('#content_transition_one').html() );
		$('#content_transition_holder').scrollTo( 1000, {
			speed:0, axis:'x' ,
			onAfter: function(){  
				if ( ! $.browser.msie  ){
					$('#content_transition_one').html( ieHackString );
				}
				else{
					$('#content_transition_one').html( CandtAjax._xArgs.returnVar );
				}
				$('#content_transition_holder').scrollTo( 0, {speed:CandtPlaylist._nTransitionSpeed, axis:'x', onAfter: function(){
						workSingleScroll_helper();
						
						if( $('#work_single_details  h2').html() )
							setTitleFrom('#work_single_details  h2');
						else
							setTitleAs('Work');
						
						CandtGlobal.setDefaultInputs ();
						
						worklistSearchCheck();
					}
				});
			}
		});
	}
	
};


function setTitleFrom(p_sElement){
	
	 setTitleAs( $(p_sElement).html() );	
}


function setTitleAs(p_sTitle){
	if(p_sTitle){
		p_sTitle = p_sTitle.replace('&amp;','&');
		SWFAddress.setTitle( p_sTitle+' - Code and Theory' );	
	}
	else
		SWFAddress.setTitle( 'Code and Theory' );	
	 
}

function workSingleScroll_helper(){
	if(CandtAjax._xArgs.islist){
		CandtWork.initialize();
		CandtAjax._xArgs.islist = false;
	}
	
	 
	setLinks('#content_transition_one');
		
	CandtAjax._override = false;
	CandtAjax._direction = '';
	$('#content_transition_two').empty();
	$('#playerHolder2').attr('id','playerHolder');
	if(! g_bNoVideo)
		CandtGlobal.replacePlaceHolderWithPlayer('playerHolder');
	g_bNoVideo = false;
	CandtGlobal.setNavHovers();
	$('#content_transition_holder').css('overflow','visible');
	$('.content_transition_reel').css('width','1000px');
	CandtWork.fadeInContent();
	
}

function zohoOpenResumeForm(digest){
        var owindow = window.open("https://people.zoho.com/hrms/commonform.hr?digest="+digest+"&T=757575&lay=FFFFFF&title=Resume&bgrndcolor=FFFFFF&font=&headercolor=666666",'ZPSearch','width=1109, height=529,scrollbars=yes,status=yes,resizable=yes');
        if(!owindow){
			alert('A Pop-up blocker has prevented the window from opening');
		}
		owindow.focus();
        return false;
}

function getCareerQuestions(p_nId){
  $.ajax({
      type:       "POST",
      url:        CandtAjax._sHandlerUrl,
      data:       'a=ajax_sections_questions&id='+p_nId,
      success:    function(p_sMsg) {
        if(p_sMsg.substring(0, 4) != "Error") {
          zohoOpenResumeForm(p_sMsg);
        } else {
          alert(p_sMsg);
        }
//      $('#questionnaire').html(p_sMsg);
//      $('#questionnaire').show();
//      $('#apply_here').hide();
      }
  });
}

function cancelQuestionnaire(){
	$('#questionnaire').hide(600);
	$('#apply_here').fadeIn(600);
}	

function maxTextarea(p_xTextarea, p_nLimit){
	if(p_xTextarea.value.length > p_nLimit)
		p_xTextarea.value = p_xTextarea.value.substring(0, p_nLimit);
}

function checkFileUpload(p_sUploadForm){
	$l_sFile = $('#'+p_sUploadForm).val();
	if($l_sFile == '')
		alert("Please upload your resume using the \"Browse\" button");
	else
		document.questionnaire_form.submit();	
	
	return false;
}	