// JavaScript Document
var navi 			= navigator.appVersion;
var browserIE 		= false;
var browserIE6 		= false;
var browserIE8		= false;
var browserSAF 		= false;
var scrollSpeed 	= 50;
var scrollHeight	= 10;
var notification 	= '';

//alert(navigator.appVersion)

if(navi.indexOf("MSIE")>-1){
	browserIE = true;
	var navAr = navi.split(";");
	browserIE6 = (parseFloat(navAr[1].split(" ")[2])<=6.0?true:false);
	browserIE8 = (parseFloat(navAr[1].split(" ")[2])>7.0?true:false);
	
} else if(navi.indexOf("Safari")>-1){
	browserSAF = true;
}

var width_Avail 	= screen.availWidth;
var heigth_Avail 	= screen.availHeight;
var innerWidth 		= 0;
var innerHeight 	= 0;

if(!browserSAF){
	if(browserIE){
		innerWidth 	= parseInt((document.documentElement.clientWidth * 1));
	}else{
		innerWidth 	= parseInt((document.documentElement.clientWidth * 1));
	}
	innerHeight	= parseInt((document.documentElement.clientHeight * 1));
}else{
	innerWidth 	= parseInt((document.documentElement.clientWidth * 1)- 16);
	innerHeight	= parseInt((document.documentElement.clientHeight * 1));
}

//alert(innerWidth);

var middleX				= innerWidth / 2;
var middleY				= innerHeight / 2;

var http_request 		= false;
var rootdomain			= "http://www.tcuniversity.nl/";

var status 				= 0;
var active_option 		= '';


var flash_can			= false;
var flash_message		= '';

function hasFlash() {
	//alert(Browser.Plugins.Flash.version);
	if(Browser.Plugins.Flash.version > 9){
		return true;
	}else{
		return false;
	}
}

var fx_mouse_overs	= new Array;
var fx_inner_content_menu;
var fx_inner_content;

var menulist;
var mouseY,mouseX;

var item_page_array 		= new Array();
var start_content 			= new Array();

var load_innercontent		= new Array();
var swfLoad					= new Array();
var class_array 			= new Array();
var class_array 			= new Array();
var categories_array 		= new Array();
var content_folder 			= new Array();
var gallery_type			= new Array();

//side positions
var sidepositions_array 	= new Array();

var months_array			= new Array('','January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December');
var active_current		  	= 0;	

function LoadInit(basis_url, basis_item){
	if(browserIE6==true){
		notification		= 'U maakt momenteel gebruik van Internet Explorer 6.0. Voor optimaal gebruik van deze website adviseren wij u te upgraden naar <a href="http://www.microsoft.com/windows/downloads/ie/getitnow.mspx" target="_blank">Internet Explorer 7.0</a> of <a href="http://www.mozilla.com/en-US/firefox/" target="_blank">Mozilla Firefox</a>.';
		$('header_notification').innerHTML = notification;
	}
	LoadPageAll(basis_url, basis_item);
}

//function to comm between flash n js
function thisMovie(movieName) {
	var isIE = navigator.appName.indexOf("Microsoft") != -1;
	return (isIE) ? window[movieName] : document[movieName];
}

function makeCall(target,str) {
	thisMovie(target).asFunc(str);
	//makeCall("ID?NAME SWF OBJECT",string);
}

function openItem(items_id,categories){
	
	for(var cat = 0; cat < categories_array.length; cat++){
		if(categories_array[cat] == categories && items_id>0){
			allow_click 		= false;
			var target 			= 'inner_content';
			var post_query		= '?include_header=1&item='+items_id;
			loadNshow(content_folder[cat]+'/'+item_page_array[cat]+post_query, target, 'get', false);
		}
	}
	
}

var post_query 		= ''
var allow_click 	= true;

function processDirectClick(categories, query){
	for(var cat = 0; cat < categories_array.length; cat++){
		if(categories_array[cat] == categories){
			processClick(cat, query);
			fx_mouse_overs[cat].cancel();
			fx_mouse_overs[cat].start({'top': 20});
		}
	}
}


function processClick(current, query){
		$('inner_content_menu').innerHTML = '';
		$('inner_content').innerHTML = '';
		active_current = current;
		
		post_query = query;
		if(start_content[current]){
			loadNshow(content_folder[current]+'/'+start_content[current]+query, 'inner_content_menu', 'get', swfLoad[current]);
		}else{
			allow_click	= true;
		}
}

var currentTime 			= new Date();
var month 					= currentTime.getMonth() + 1;
var day 					= currentTime.getDate();
var year 					= currentTime.getFullYear();


//common var for al center swf's
var commonSWF;

function setSomeSWF(swf_src, swf_title, swf_width, swf_height, target, swf_vars){
	var someSWF	= new SWFObject(swf_src, swf_title, swf_width, swf_height, "9", "86A098");
	someSWF.addParam('flashvars',swf_vars);
	someSWF.addParam("wmode", "transparent"); 
	someSWF.addParam("quality", "high"); 
	someSWF.addParam("allowscriptaccess", "all"); 
	someSWF.addParam("codebase", "all"); 
	someSWF.useExpressInstall('expressinstall.swf');
	someSWF.write(target);
}

function sendAlert(url,output) {
   pageTracker._trackPageview('/'+url);
  //s alert(rootdomain+'/'+url); 
}

function loadNshow(url, target, method, swfload){
	
	if(swfload == true){
		var request = new Request.JSON({
			url: url,
			onComplete: function(jsonObj) {
				var result = jsonObj.swfvar;
				
				result.each(function(swf) {
					
					var swf_src			= swf.source;
					var swf_title		= swf.titel;
					var swf_width		= swf.width;
					var swf_height		= swf.height;
					var swf_vars		= '?'+swf.vars;
					
					if(flash_can){
		
						commonSWF	= new SWFObject(swf_src, swf_title, swf_width, swf_height, "9", "86A098");
						commonSWF.addParam('flashvars',swf_vars);
						commonSWF.addParam("wmode", "transparent"); 
						commonSWF.addParam("quality", "high"); 
						commonSWF.addParam("allowscriptaccess", "all"); 
						commonSWF.addParam("codebase", "all"); 
						commonSWF.useExpressInstall('expressinstall.swf');
						
						$(target).removeClass('loading');
						//$(target).addClass(class_array[active_current]);
						
						commonSWF.write(target);
					}else{
						$(target).removeClass('loading');
						//$(target).addClass(class_array[active_current]);
						$(target).innerHTML = flash_message;	
					}
						
					allow_click = true;	
				});
				
			}
		}).send();
		
	}else{
	
		var req = new Request({url: url,
			method: method,
			onSuccess: function(responseText) {
				var output 	= req.response.text;
				
			//	$(target).removeClass('loading_content');
				
				switch(target){
					case 'inner_content':
						
						fx_inner_content.cancel();
						fx_inner_content.set({'opacity': 0});
						
						$(target).innerHTML = output;
						
						processAfterClick(target);
						
						allow_click = true;
						
						//sendAlert(url);
					break;
					case 'inner_content_menu':
						fx_inner_content_menu.cancel();
						fx_inner_content_menu.set({'opacity': 0});
						
						$(target).innerHTML = output;
						
						/*//album
						if(gallery_type[active_current]==1){
							active_category = 0;
							active_gallery 	= 0;
							setAlbumInterface();
						}else if(gallery_type[active_current]==2){
							setGalleryVars(active_current);
						}
						*/
						
						if(load_innercontent[active_current]==1){
							loadNshow(content_folder[active_current]+'/'+item_page_array[active_current]+post_query, 'inner_content', 'get', false);
						}else{
							allow_click = true;	
						}
						
						processAfterClick(target);
						
						
						//sendAlert(url);
						
					break;
					default:
						//alert(1);
						$(target).innerHTML 			= output;
						processAfterClick(target);
					break;
				}
				
				sendAlert(url,output);
				
			},
			onFailure: function() {
				$(target).set('innerHTML', 'The request failed.');
			}
		});
		req.send();
	}
}


function loadNshowJS(url, target, method, swfload, bron){
	var req = new Request({url: url,
	method: method,
	evalScripts: true,
   	onSuccess: function(responseText) {
		var output 	= req.response.text;
		
		switch(target){
			default:
				$(target).innerHTML 			= output;
				processAfterClick(target);
			break;
		}
		
		//alert(bron);
		pageTracker._trackPageview('/inschrijven/'+bron+'/bedankt');
		
	},
	onFailure: function() {
		$(target).set('innerHTML', 'The request failed.');
	}
	});
	req.send();
}

//image vars

var active_category = 0;
var active_option	= 0;

function loadDropDownActions(element_name){
	var element_clicker = $(element_name);
	
	element_clicker.addEvent('click', function(){
		
		if(element_clicker.getProperty('name')!=active_option){
			
			if(active_option!=0){
				var valueTarget = $('search_option_values'+active_option);
				if(valueTarget){
					var clickTarget = $('search_option'+active_option);
					ChangeAnim('height', valueTarget, 0, 500, Fx.Transitions.Cubic.easeOut)
					clickTarget.setStyle('backgroundImage', 'url('+rootdomain+'img/assets-university/scroll/bg_options.gif)');
				}
			}
			
			active_option 	= element_clicker.getProperty('name');
			element_clicker.setStyle('backgroundImage', 'url('+rootdomain+'img/assets-university/scroll/bg_options_up.gif)');
			var nr_ofValues	= $('option_value_counter'+active_option).value;
			valueTarget 	= $('search_option_values'+active_option);
			var toMove		= nr_ofValues * 20;
			if(toMove>200){
				toMove = 200;
			}
			
			ChangeAnim('height', valueTarget, toMove, 300, Fx.Transitions.Cubic.easeOut)
			
			scroller = new Scroller('search_option_values'+active_option, {area: 20, velocity: 0.15});
			valueTarget.addEvent('mouseover', scroller.start.bind(scroller));
			valueTarget.addEvent('mouseout', scroller.stop.bind(scroller));		
		}else{
			closeCloset(active_option);
		}
	});

	var optionsValuelist = $$('#search_option_values'+element_clicker.getProperty('name')+' .search_option_value');
	optionsValuelist.each(function(element) {
	 
		var fxvalues = new Fx.Morph(element, {wait:false});
		element.addEvent('mouseenter', function(){
			if(element.getProperty('class')=='search_option_value'){									
			fxvalues.set({
				'background-color': '#ae88a4'
			});
			}
		});
	 
		element.addEvent('mouseleave', function(){
			if(element.getProperty('class')=='search_option_value'){									
			fxvalues.set({
				'background-color': '#ffffff'
			});
			}
		});

		element.addEvent('click', function(){
			//alert('click');
			var childof = element.getProperty('childof');
			var disablelist = $$('#search_option_values'+childof+' .search_option_value');
			disablelist.each(function(element) {
				element.setStyle('background-color', '#ffffff');
				element.removeClass('selected');
			});
			element.addClass('selected');
			fxvalues.start({
				'background-color': '#bebbae'
			});
			
			var tempval;
			tempval	= parseInt(element.getProperty('id').substring(6));
			
			afterDropDownClick(childof, tempval, element.innerHTML);
			
		});
		
		
	});
}

function closeCloset(childof){
	var valueTarget = $('search_option_values'+childof);
	ChangeAnim('height', valueTarget, 0, 300, Fx.Transitions.Cubic.easeOut);
	
	if(gallery_type[active_current]==1){
		var clickTarget = $('search_option'+active_option);
	}else if(gallery_type[active_current]==2){
		var clickTarget = $('search_optionGallery');
	}else{
		var clickTarget = $('search_option'+active_option);
	}
	
	ChangeAnim('height', valueTarget, 0, 300, Fx.Transitions.Cubic.easeOut)
	clickTarget.setStyle('backgroundImage', 'url('+rootdomain+'img/assets-university/scroll/bg_options.gif)');
	active_option = 0;
}

function ChangeAnim(prop, target, to, speed, trans){
	if(target){
		var myFx = new Fx.Tween(target,{duration:speed, transition: trans});
		myFx.start(prop, to );
	}
}

function MorpheItems(target, speed, trans){
	if(target){
		return new Fx.Morph(target, {duration: speed, transition: trans});
	}
}

//forms//

var active_form 		= '';
var active_form_busy 	= false;

function setSomeForm(target_form, target_loading, target_output){
	active_form			= target_form;
	active_form_busy	= false;
		
	$(target_form).addEvent('submit', function(e){
		if(active_form_busy	== false){
			active_form_busy	= true;
			$(target_loading).addClass('loading');
			new Event(e).stop();
			
			var formCheck = checkForm(target_form , 0);
			if(formCheck){
				if(target_form == 'inschrijven_1'){
					$(target_form).submit();					
				}else if(target_form == 'inschrijven_2'){
					//alert($(target_form).action);
					$(target_form).submit();					
				}else{
					this.set('send', {
						method: 'post',
						data: $(target_form),                                      
						onSuccess: function(responseText, responseXML) {
							$(target_loading).removeClass('loading');
							var result = responseText;
							$(target_output).innerHTML = responseText;
							active_form_busy	= false;
							afterSubMitting(target_output);
						}
					});
					this.send(this.action); 
				}
			}else{
				active_form_busy	= false;
				$(target_loading).removeClass('loading');
			}
		}
		
	});	
	
}
function sendForm(target_form, target_loading, target_output){
	if(target_form == 'inschrijven_1'){
		$(target_form).submit();					
	}else if(target_form == 'inschrijven_2'){
		$(target_form).submit();					
	}else{
		$(target_form).set('send', {
		method: 'post',
		data: $(target_form),                                      
		onSuccess: function(responseText, responseXML) {
			
			$(target_loading).removeClass('loading');
			var result = responseText;
			$(target_output).innerHTML = responseText;
			
			active_form_busy	= false;
			afterSubMitting(target_output);
			
		}
	});
	$(target_form).send($(target_form).action); 
}
}


function SendRequest(target_form, target_loading, target_output, error_msg){
	if(active_form_busy	== false){
		active_form_busy	= true;
		$(target_loading).addClass('loading');
		var formCheck = checkForm(target_form , 0);
		if(formCheck){
			sendForm(target_form, target_loading, target_loading);
		}else{
			$(target_loading).removeClass('loading');
			setSomeForm(target_form, target_loading, target_output);	
			error_message			= '';
		}
	}
}
