$(document).ready(function(){
	$('#submit').click(validatePage);
	$('body').append('<iframe id="pdfCreatorFrame"></iframe>');
	$('#fbpage').focus();
	positionWall();
	$(window).resize(function(){
		positionWall();
	})
});



function validatePage(){

	trackEvent('submit');
	var fbpage = $('#fbpage').val();
	
	//var fbUrlRegex1 = new RegExp('^pages/[a-zA-Z0-9.]{5,}/[0-9]{5,30}$'); 
	var fbUrlRegex1 = new RegExp('^pages/[^\/]{5,}/[0-9]{5,30}$'); //pages/[title]/[number]
	var fbUrlRegex2 = new RegExp('^[a-zA-Z0-9.]{5,}$'); //[name]

	if (fbUrlRegex1.test(fbpage)){
		var pageId = fbpage.substr(fbpage.lastIndexOf('/')+1);
		loadPageData(pageId);
	}else if (fbUrlRegex2.test(fbpage)){
		var pageId = fbpage;
		loadPageData(pageId);
	}else{
		showMessage('Wrong facebook page',true);
		trackEvent('error');
		return;
	}
}


function loadPageData(pageId){
	showMessage('<img src="images/ajax-loader2.gif"/> Wait...');
	$.getJSON(
		'validate_facebook.php', 
		'pageid='+pageId,
		function(data) {
			if (data.id==undefined){
				showMessage('Wrong facebook page',true);
				trackEvent('error');
				return;
			}
			showMessage('Creating a QR poster for <b>'+data.name+'</b>'
						);
			createPoster(data.id,data.name,$('#lang').val());
		}
	);
}


function showMessage(text,isError){
	$('#message').html(text);
	if (isError){
		$('#message').addClass('error');
	}else{
		$('#message').removeClass('error');
	}
}


function createPoster(id,name,lang){
	pdfCreatorUrl = 'createpdf.php?id='+id+'&name='+name+'&lang='+lang;
	showMessage('<a href="'+pdfCreatorUrl+'">Your poster</a> is downloading. <b>Hang it high!</b><br/>'
				+'('+name+')'
			);
	trackEvent('success/'+id+'-'+name);
	$('#pdfCreatorFrame').attr("src",pdfCreatorUrl);
}

function positionWall(){
	$('#wall').css('height',$(window).height());
	$('#wall').css('left',$('#wrapper').offset().left + 600);
	$('#wall').css('width',$(window).width() - $('#wall').offset().left);
	$('#wallborder').css('height',$(window).height());
}

function trackEvent(eventname){
	_gaq.push(['_trackPageview', '/event/'+eventname]);
	//console.log('tracking '+eventname);
}

