function externalLinks() {
	if (!document.getElementsByTagName) return;
	var anchors = document.getElementsByTagName("a");
	for (var i=0; i<anchors.length; i++) {
		var anchor = anchors[i];
		if (anchor.getAttribute("href") &&
		anchor.getAttribute("rel") == "external")
		anchor.target = "_blank";
	}
}
function navigate(theUrl)
{
    document.location.href = theUrl;
}
function addToField(field, code, sdefault)
{
	if($('#'+field).val() == sdefault){
		$('#'+field).val('');
	}
	$('#'+field).val($('#'+field).val()+code+ ' ');
}
function showImage(object, source){
	$('#'+object).attr("src", source);
}
function confirmDelete(){
	if(confirm('Are you sure that you want to delete this item?')){
		return true;
	}
	return false;
}
function onEnterSubmit(e, form){
	if(e){
		e = e 
	} 
	else {
		e = window.event
	} 

	if(e.which){ 
		var keycode = e.which
	} 
	else {
		var keycode = e.keyCode 
	}
	if(keycode == 13) {
		form.submit();
	}
}
function open_url(page,target, reformurl){
	var firstpageload=false;
	$(document).ready(function() {
		if(firstpageload){
			setup_urlcontent(page, target,reformurl);
		}
		else{
			$('#'+target).fadeOut('slow', function(){ setup_urlcontent(page, target,reformurl);});
		}
	});
}
function setup_urlcontent(page, target, reformurl){	
	$.ajax({
		type: "GET",
		url: page,
		cache: false,
		dataType: 'json',
		success: function(html){
			// Empty content
			$('#'+target).empty();
			// New content
	    	$("#"+target).append(html.content);
	    	// Page Url
	    	if(reformurl != false){
	    		setPageUrl(page);
	    	}
	    	// External links
	    	externalLinks();
	    	$('#'+target).fadeIn('slow', function(){
	    		CSBfleXcroll('contentscroll');
	    	});
	    	
	  	},
	  	error: function(){
	  		if(page == 'error/inline'){
	  			alert("You request ended up in an endless loop\n Please try again later");
	  		}
	  		else{
	  			open_url('error/inline', 'content');
	  		}
	  	}
	});
}
function setPageUrl(strPage){
	window.location.hash = strPage;
}
function collectTwitter(){
	new $.ajax( 
	  	{ 
			url: 'index/twitter', 
			type: 'get',
			cache: false,
			dataType: 'json',
			success: function(json){
	  			$('#twitlastmessage').fadeOut('slow', function(){
	  				$('#twitlastmessage').empty();
	  				// Message
	  				$('#twitlastmessage').append(json['message'][0]);
	  				// Date
	  				var spandate = document.createElement('span');
	  				$(spandate).append(' - '+json['date']);
	  				$('#twitlastmessage').append(spandate);
	  				// Fade back
	  				$('#twitlastmessage').fadeIn('slow');
	  			});	  			
			},
			error: function(request) {    
				open_url('error/inline', 'content')
			}
		}
	);
    return false;
}
function validateGuestbook(){
	new $.ajax( 
	  	{ 
			url: 'guestbook/validate', 
			type: 'post',
			cache: false,
			dataType: 'json',
			data: {
				name: $('#frmname').val(),
				email: $('#frmemail').val(),
				message: $('#frmmessage').val(),
				captcha: $('#frmcaptcha').val()
			},			
			success: function(json){
				if(json['ok'] == 1){
					open_url('guestbook', 'content');
				}
				else{
					$('#frmname').css("background-color", json['name']);
					$('#frmemail').css("background-color", json['email']);
					$('#frmmessage').css("background-color", json['message']);
					$('#frmcaptcha').css("background-color", json['captcha']);
				}
				reloadCaptcha();
			},
			error: function(request) {    
				open_url('error/inline', 'content')
			}
		}
	);
    return false;
}function validateBookings(){
	new $.ajax(
	  	{
			url: 'bookings/validate/bookings',
			type: 'post',
			cache: false,
			dataType: 'json',
			data: {
	  			frmeventname: $('#frmeventname').val(),
	  			frmeventdate: $('#frmeventdate').val(),

	  			frmorganisationname: $('#frmorganisationname').val(),
	  			frmorganisationcontactperson: $('#frmorganisationcontactperson').val(),
	  			frmorganisationaddress: $('#frmorganisationaddress').val(),
	  			frmorganisationzipcode: $('#frmorganisationzipcode').val(),
	  			frmorganisationcity: $('#frmorganisationcity').val(),
	  			frmorganisationcountry: $('#frmorganisationcountry').val(),
	  			frmorganisationphonenumber: $('#frmorganisationphonenumber').val(),
	  			frmorganisationfaxnumber: $('#frmorganisationfaxnumber').val(),
	  			frmorganisationemail: $('#frmorganisationemail').val(),
	  			frmorganisationvatnumber: $('#frmorganisationvatnumber').val(),
	  			frmorganisationchamberofcommerce: $('#frmorganisationchamberofcommerce').val(),

	  			frmlocation: $('#frmlocation').val(),
	  			frmlocationcontactperson: $('#frmlocationcontactperson').val(),
	  			frmlocationaddress: $('#frmlocationaddress').val(),
				frmlocationzipcode: $('#frmlocationzipcode').val(),
				frmlocationcity: $('#frmlocationcity').val(),
				frmlocationcountry: $('#frmlocationcountry').val(),
				frmlocationphonenumber: $('#frmlocationphonenumber').val(),
				frmlocationfaxnumber: $('#frmlocationfaxnumber').val(),
				frmlocationemail: $('#frmlocationemail').val(),
				frmlocationwebsite: $('#frmlocationwebsite').val(),

				frmperformancecapacity: $('#frmperformancecapacity').val(),
				frmperformancetime: $('#frmperformancetime').val(),
				frmperformanceduration: $('#frmperformanceduration').val(),
				frmperformanceartistbefore: $('#frmperformanceartistbefore').val(),
				frmperformanceartistafter: $('#frmperformanceartistafter').val(),
				frmperformanceaskedstyle: $('#frmperformanceaskedstyle').val(),
				frmperformanceticketprice: $('#frmperformanceticketprice').val(),
				frmperformancemoreinfo: $('#frmperformancemoreinfo').val(),
				frmcaptcha: $('#frmcaptcha').val()
			},
			success: function(json){
				if(json['ok'] == 1){
					open_url('bookings/success', 'content');
				}
				else{
					$('#frmeventname').css("background-color", json['frmeventname']);
		  			$('#frmeventdate').css("background-color", json['frmeventdate']);

		  			$('#frmorganisationname').css("background-color", json['frmorganisationname']);
		  			$('#frmorganisationcontactperson').css("background-color", json['frmorganisationcontactperson']);
		  			$('#frmorganisationaddress').css("background-color", json['frmorganisationaddress']);
		  			$('#frmorganisationzipcode').css("background-color", json['frmorganisationzipcode']);
		  			$('#frmorganisationcity').css("background-color", json['frmorganisationcity']);
		  			$('#frmorganisationcountry').css("background-color", json['frmorganisationcountry']);
		  			$('#frmorganisationphonenumber').css("background-color", json['frmorganisationphonenumber']);
		  			$('#frmorganisationfaxnumber').css("background-color", json['frmorganisationfaxnumber']);
		  			$('#frmorganisationemail').css("background-color", json['frmorganisationemail']);
		  			$('#frmorganisationvatnumber').css("background-color", json['frmorganisationvatnumber']);
		  			$('#frmorganisationchamberofcommerce').css("background-color", json['frmorganisationchamberofcommerce']);

		  			$('#frmlocation').css("background-color", json['frmlocation']);
		  			$('#frmlocationcontactperson').css("background-color", json['frmlocationcontactperson']);
		  			$('#frmlocationaddress').css("background-color", json['frmlocationaddress']);
					$('#frmlocationzipcode').css("background-color", json['frmlocationzipcode']);
					$('#frmlocationcity').css("background-color", json['frmlocationcity']);
					$('#frmlocationcountry').css("background-color", json['frmlocationcountry']);
					$('#frmlocationphonenumber').css("background-color", json['frmlocationphonenumber']);
					$('#frmlocationfaxnumber').css("background-color", json['frmlocationfaxnumber']);
					$('#frmlocationemail').css("background-color", json['frmlocationemail']);
					$('#frmlocationwebsite').css("background-color", json['frmlocationwebsite']);

					$('#frmperformancecapacity').css("background-color", json['frmperformancecapacity']);
					$('#frmperformancetime').css("background-color", json['frmperformancetime']);
					$('#frmperformanceduration').css("background-color", json['frmperformanceduration']);
					$('#frmperformanceartistbefore').css("background-color", json['frmperformanceartistbefore']);
					$('#frmperformanceartistafter').css("background-color", json['frmperformanceartistafter']);
					$('#frmperformanceaskedstyle').css("background-color", json['frmperformanceaskedstyle']);
					$('#frmperformanceticketprice').css("background-color", json['frmperformanceticketprice']);
					$('#frmperformancemoreinfo').css("background-color", json['frmperformancemoreinfo']);
					$('#frmcaptcha').css("background-color", json['frmcaptcha']);
				}
				reloadCaptcha();
			},
			error: function(request) {
				open_url('error/inline', 'content')
			}
		}
	);
    return false;
}

function reloadCaptcha() {
	$('#captcha').attr('src', '/captcha?sid='+ (898989218921 * Math.random()*Math.random()));
}
var arrRows = new Array();
arrRows[0] = 0;

function SmileyAddShortkey(){
	// Add value to array
	lastnumber = arrRows.length;
	// Add to array
	arrRows[lastnumber] = lastnumber;
	// Create new Row
	var rownumber = document.createElement('div');
	rownumber.setAttribute('id', 'rownumber'+(lastnumber));
	rownumber.style.display = 'none';
	rownumber.setAttribute('class', 'row stripe');	
		// Create new colomtitle
		var colomtitle = document.createElement('div');
		colomtitle.setAttribute('id', 'colomtitle'+(lastnumber));
		colomtitle.setAttribute('class', 'colom_20');
		$(colomtitle).html('Shortkey');
		// Create new colominfo
		var colominfo = document.createElement('div');
		colominfo.setAttribute('id', 'colominfo'+(lastnumber));
		colominfo.setAttribute('class', 'colom_80');	
			// input track
			var inputcolomshortkey = document.createElement('input');
			inputcolomshortkey.setAttribute('type', 'text');
			inputcolomshortkey.setAttribute('name', 'shortkey[]');
			inputcolomshortkey.setAttribute('size', 40);
				$(colominfo).append(inputcolomshortkey);$(colominfo).append(' ');
			// delete image link
			var deleteimagelink = document.createElement('a');
			deleteimagelink.setAttribute('id', 'deleteshortkey'+ (lastnumber));
			deleteimagelink.setAttribute('onclick', 'SmileyDeleteShortkey('+(lastnumber)+');');
			deleteimagelink.setAttribute('href', '#deleteshortkey');	
				// delete image
				var deleteimage = document.createElement('img');
				deleteimage.setAttribute('src', '/cms/images/icons/delete.png');
					$(deleteimagelink).append(deleteimage);
					$(colominfo).append(deleteimagelink); $(colominfo).append(' ');
			// add image link
			var addimagelink = document.createElement('a');
			addimagelink.setAttribute('id', 'addshortkey'+ (lastnumber));
			addimagelink.setAttribute('onclick', 'SmileyAddShortkey();');
			addimagelink.setAttribute('href', '#addshortkey');	
				// add image
				var addimage = document.createElement('img');
				addimage.setAttribute('src', '/cms/images/icons/add.png');
					$(addimagelink).append(addimage); 
					$(colominfo).append(addimagelink);
			// Remove old ADD images
			for(i=0;i<=lastnumber;i++){
				$('#addshortkey'+i).remove();
			}	
	// // Add all data to the Rownumber div
	$(rownumber).append(colomtitle);
	$(rownumber).append(colominfo);	
	// Add Row to main layer
	$('#shortkeylist').append(rownumber);	
	// Animate 
	$(rownumber).animate({"height": "toggle"}, { duration: 200 });
}
function SmileyDeleteShortkey(number){
	// Get previous key
	var prevelement = 0;
	for(i=0;i<number;i++){
		if(arrRows[i] != ''){
			prevelement = i;
		}
	}
	// Last item
	var lastelement = 0;
	for(i=0;i<=arrRows.length;i++){
		if(arrRows[i] != null && arrRows[i] != ''){
			lastelement = i;
		}
	}
	// Check for last entry and add new add button
	if(number == lastelement){
		// add image link
		var addimagelink = document.createElement('a');
		addimagelink.setAttribute('id', 'addshortkey'+prevelement);
		addimagelink.setAttribute('onclick', 'SmileyAddShortkey();');
		addimagelink.setAttribute('href', '#addshortkey');	
			// add image
			var addimage = document.createElement('img');
			addimage.setAttribute('src', '/cms/images/icons/add.png');
				$(addimagelink).append(addimage); 
				$('#colominfo'+prevelement).append(addimagelink); 	
	}	
	// Remove key
	arrRows[number] = '';	
	// Remove row
	$('#rownumber'+number).animate({"height": "toggle"}, { duration: 200 });
	setTimeout(function() {$('#rownumber'+number).remove();}, 400);
}
function DiscographyAddTrack(){
	// Add value to array
	lastnumber = arrRows.length;
	// Add to array
	arrRows[lastnumber] = lastnumber;
	// Create new Row
	var rowtotal = document.createElement('div');
	rowtotal.setAttribute('id', 'rowtotal'+(lastnumber));
	rowtotal.style.display = 'none';
	// Create new Row
	var rownumber = document.createElement('div');
	rownumber.setAttribute('id', 'rownumber'+(lastnumber));
	rownumber.setAttribute('class', 'row');	
		// Create new colomtitle
		var colomtitle = document.createElement('div');
		colomtitle.setAttribute('id', 'colomtitle'+(lastnumber));
		colomtitle.setAttribute('class', 'colom_20');
		$(colomtitle).html('Track');
		// Create new colominfo
		var colominfo = document.createElement('div');
		colominfo.setAttribute('id', 'colominfo'+(lastnumber));
		colominfo.setAttribute('class', 'colom_80');	
			// input track
			var inputcolomtrack = document.createElement('input');
			inputcolomtrack.setAttribute('type', 'text');
			inputcolomtrack.setAttribute('name', 'track[]');
			inputcolomtrack.setAttribute('size', 3);
				$(colominfo).append(inputcolomtrack); $(colominfo).append(' ');
			// input artist
			var inputcolomartist= document.createElement('input');
			inputcolomartist.setAttribute('type', 'text');
			inputcolomartist.setAttribute('name', 'trackartist[]');	
				$(colominfo).append(inputcolomartist); $(colominfo).append(' - ');
			// input title
			var inputcolomtitle = document.createElement('input');
			inputcolomtitle.setAttribute('type', 'text');
			inputcolomtitle.setAttribute('name', 'tracktitle[]');	
				$(colominfo).append(inputcolomtitle); $(colominfo).append(' ');			
				// delete image link
				var deleteimagelink = document.createElement('a');
				deleteimagelink.setAttribute('id', 'deletetrack'+ (lastnumber));
				deleteimagelink.setAttribute('onclick', 'DiscographyDeleteTrack('+(lastnumber)+');');
				deleteimagelink.setAttribute('href', '#deletetrack');	
					// delete image
					var deleteimage = document.createElement('img');
					deleteimage.setAttribute('src', '/cms/images/icons/delete.png');
						$(deleteimagelink).append(deleteimage);
						$(colominfo).append(deleteimagelink); $(colominfo).append(' ');
				// add image link
				var addimagelink = document.createElement('a');
				addimagelink.setAttribute('id', 'addtrack'+ (lastnumber));
				addimagelink.setAttribute('onclick', 'DiscographyAddTrack();');
				addimagelink.setAttribute('href', '#addtrack');	
					// add image
					var addimage = document.createElement('img');
					addimage.setAttribute('src', '/cms/images/icons/add.png');
						$(addimagelink).append(addimage); 
						$(colominfo).append(addimagelink);
				// Remove old ADD images
				for(i=0;i<=lastnumber;i++){
					$('#addtrack'+i).remove();
				}	
	// Create new Row
	var rownumber2 = document.createElement('div');
	rownumber2.setAttribute('id', 'rownumber'+(lastnumber)+'-sub');
	rownumber2.setAttribute('class', 'row stripe');
		// Create new colomtitle
		var colomtitle2 = document.createElement('div');
		colomtitle2.setAttribute('id', 'colomtitle'+(lastnumber)+'sub');
		colomtitle2.setAttribute('class', 'colom_20');
		$(colomtitle2).html('Url');
		// Create new colominfo
		var colominfo2 = document.createElement('div');
		colominfo2.setAttribute('id', 'colominfo'+(lastnumber)+'sub');
		colominfo2.setAttribute('class', 'colom_80');	
			// input track
			var inputcolomurl = document.createElement('input');
			inputcolomurl.setAttribute('type', 'text');
			inputcolomurl.setAttribute('name', 'url[]');
			inputcolomurl.setAttribute('size', 56);
				$(colominfo2).append(inputcolomurl);
	// // Add all data to the Rownumber div
	$(rownumber2).append(colomtitle2);
	$(rownumber2).append(colominfo2);			
	// // Add all data to the Rownumber div
	$(rownumber).append(colomtitle);
	$(rownumber).append(colominfo);	
	// Add Row to main layer
	$(rowtotal).append(rownumber);
	$(rowtotal).append(rownumber2);
	$('#discographytracklist').append(rowtotal);	
	// Animate 
	$(rowtotal).animate({"height": "toggle"}, { duration: 200 });
	
}
function DiscographyDeleteTrack(number){
	// Get previous key
	var prevelement = 0;
	for(i=0;i<number;i++){
		if(arrRows[i] != ''){
			prevelement = i;
		}
	}
	// Last item
	var lastelement = 0;
	for(i=0;i<=arrRows.length;i++){
		if(arrRows[i] != null && arrRows[i] != ''){
			lastelement = i;
		}
	}
	// Check for last entry and add new add button
	if(number == lastelement){
		// add image link
		var addimagelink = document.createElement('a');
		addimagelink.setAttribute('id', 'addtrack'+prevelement);
		addimagelink.setAttribute('onclick', 'DiscographyAddTrack();');
		addimagelink.setAttribute('href', '#addtrack');	
			// add image
			var addimage = document.createElement('img');
			addimage.setAttribute('src', '/cms/images/icons/add.png');
				$(addimagelink).append(addimage); 
				$('#colominfo'+prevelement).append(addimagelink); 	
	}	
	// Remove key
	arrRows[number] = '';	
	// Remove row
	$('#rowtotal'+number).animate({"height": "toggle"}, { duration: 200 });
	setTimeout(function() {$('#rowtotal'+number).remove();}, 400);
}
function setArrRows(total){ 
	for(i=0;i<total;i++){
		arrRows[i] = i;
	}
}


// Init
var firstpageload = true;
// Setup links
window.onload = externalLinks;