var createUrls = {
	getUrlParams:function(){
	
		var params	= new Array();
		var url 			= ""+window.location;
		url = url.split("#");
		var url_split = url[0].split("?");
		if (url_split.length > 1) // Params found
		{
			var param_split = url_split[1].split("&");

			for (var i = 0; i < param_split.length; i++)
			{
				/* Create object with url params */
				var param_values		= param_split[i].split("=");
				var param_vals 			= new Object();
				param_vals.name			= param_values[0];
				param_vals.value		= param_values[1];
				
				params[params.length]	= param_vals; // fill array with url_params object
			}
		}
		
		this.scanUrls(params);
		this.scanForms(params);
		
		return;
	},
	
	scanUrls:function(params){
		$("a").each(function(){
			if ($(this).attr('rel') != "no-affiliates" && $(this).attr('target') != "_blank" )
				// Check if link is a javascript link 
			{
				var href_value = $(this).attr('href');
				if (href_value != null)
				{
					var href_javascript_check = href_value.substring(0,10);
					var mailto_check = href_value.substring(0,6);
					if (href_javascript_check != "javascript" && mailto_check != "mailto")
					{
						var def_params = new Array();
						
						for (var i = 0; i < params.length; i++)
						{
							def_params[def_params.length]	= params[i];
						}
					
						var href 			= ""+$(this).attr('href');
						var href_split 		= href.split("?");			
						
						if (href_split.length > 1) // Params found
						{
							var param_split = href_split[1].split("&");
							
							for (var i = 0; i < param_split.length; i++)
							{
								var param_values				= param_split[i].split("=");
								var param_vals					= new Object();
								param_vals.name					= param_values[0];
								param_vals.value				= param_values[1];
								
								def_params[def_params.length]	= param_vals;
							}
						}
						
						/* Fix ankerlinks */
						var org_url = href_split[0];
						
						var anker_split = org_url.split("#");
						
						if (anker_split.length > 1)
						{
							$(this).attr('href', anker_split[0] + createUrls.buildNewUrl(def_params) +"#"+anker_split[1]);
						}
						else
						{
							$(this).attr('href', href_split[0] + createUrls.buildNewUrl(def_params));
						}
					}
				}
			}
		});
	},
	
	scanForms:function(params){
		$("form").each(function(){
			if ($(this).attr('rel') != "no-affiliates")
			{
				var def_params = new Array();
				
				for (var i = 0; i < params.length; i++)
				{
					def_params[def_params.length]	= params[i];
				}
			
				var href 			= ""+$(this).attr('action');
				var href_split 		= href.split("?");			
				
				if (href_split.length > 1) // Params found
				{
					var param_split = href_split[1].split("&");
					
					for (var i = 0; i < param_split.length; i++)
					{
						var param_values				= param_split[i].split("=");
						var param_vals					= new Object();
						param_vals.name					= param_values[0];
						param_vals.value				= param_values[1];
						
						def_params[def_params.length]	= param_vals;
					}
				}
				
				$(this).attr('action', href_split[0] + createUrls.buildNewUrl(def_params));
			}
		});
	},
	
	buildNewUrl:function(params){
		
		var output = "";
		var already_chosen = new Array();
		var websites_c = new Array();
		var websites_t = new Array();
		websites_c[1] 		= "72570bff-7761-4d63-b8c9-ceaf48683523";
		websites_c[66] 		= "c=d50bf4e1-9958-4c2c-9490-e19ee322d9d5";
		websites_c[67] 		= "c=c029bb3d-12b4-4a86-b075-abeef5cfa63a";
		websites_c[69] 		= "c=da999108-1b5e-49dc-90a8-4c349981a0c2";
		websites_c[73] 		= "c=2565e7f3-ff2b-4cad-9a94-dfaa5a434fb8";
		websites_c[74] 		= "Trouwdagverzekering";
		websites_c[449] 	= "c=46c7d0c9-c573-4564-8867-145f8b47d9ac";
		websites_c[71]		= "c=24f02c9a-5a84-42ae-9bc1-2a26102cf040";
		websites_c[976]		= "c=19600746-e3b0-4674-883a-dde071998346";
		
		websites_t[1] 		= "1111";
		websites_t[66] 		= "t=1699503f-1868-4b35-ac74-d6e8f02fa5b8";
		websites_t[67] 		= "t=35339526-4941-4be2-bf55-a1a818fcd1bf";
		websites_t[69] 		= "t=7f3f9ec0-357d-4e60-ae94-07e564a102cf";
		websites_t[73] 		= "t=fe354029-497d-488b-98a8-f64d5ac25ba5";
		websites_t[74] 		= "Trouwdagverzekering";
		websites_t[449] 	= "t=71e77838-99df-4571-bbda-0024bab46380";
		websites_t[71]		= "t=7b533b29-79a3-4042-bccc-8e6e4868f33a";
		websites_t[976]		= "c=498c8799-d4ec-427b-bd25-e776085a3bab";
		
		for (var i = 0; i < params.length; i++)
		{
			if (!this.in_single_array(already_chosen, params[i].name))
			{
				if (i == 0)
					output += "?"+ params[i].name +"="+params[i].value;
				else
					output += "&"+ params[i].name +"="+params[i].value;
			}
			already_chosen[already_chosen.length] = params[i].name;
		}
		
		
		if (!this.in_array(params, "c")) 
		{
			if (output == "")
				output += "?"+websites_c[siteid];
			else
				output += "&"+websites_c[siteid];
		}
		
		if (!this.in_array(params, "t")) 
		{
			if (output == "")
				output += "?"+websites_t[siteid];
			else
				output += "&"+websites_t[siteid];
		}
		
		return output;
	},
	
	in_array:function(array, string){
		
		for (var i = 0; i < array.length; i++)
		{
			if (array[i].name == string) return true;
		}
		return false;
	},
	
	in_single_array:function(array, string){
		for (var i = 0; i < array.length; i++)
		{
			if (array[i] == string) return true;
		}
		return false;
	},
	
	setup:function(config){
		createUrls.getUrlParams();	
	}
}

$(document).ready(function(){
	if (!window.isEditor)
	{
		createUrls.setup();
	}
});