var Cookies = 
{
	init: function () {
		var allCookies = document.cookie.split('; ');
		for (var i=0;i<allCookies.length;i++) {
			var cookiePair = allCookies[i].split('=');
			this[cookiePair[0]] = cookiePair[1];
		}
	},
	create: function (name,value,days) {
		if (days) {
			var date = new Date();
			date.setTime(date.getTime()+(days*24*60*60*1000));
			var expires = "; expires="+date.toGMTString();
		}
		else var expires = "";
		document.cookie = name+"="+value+expires+"; path=/";
		this[name] = value;
	},
	erase: function (name) {
		this.create(name,'',-1);
		this[name] = undefined;
	}
};
Cookies.init();

function getStyle(oElm, strCssRule){
	var strValue = "";
	if(document.defaultView && document.defaultView.getComputedStyle){
		strValue = document.defaultView.getComputedStyle(oElm, "").getPropertyValue(strCssRule);
	}
	else if(oElm.currentStyle){
		strCssRule = strCssRule.replace(/\-(\w)/g, function (strMatch, p1){
			return p1.toUpperCase();
		});
		strValue = oElm.currentStyle[strCssRule];
	}
	return strValue;
}
//Limits: 100 Feedtemplates
//Notification sends per user per day (user-to-user)	20
//Notification sends per user per week (app-to-user)	7
//Requests per user per day				16
//Emails per user per day				4
var ww_fbc_session_key;
var ww_fbc_uid;
var ww_fbc_fql_res=new Array();
var ww_fbc_fql_ql;
var ww_fbc_is_fbcuser;

function ww_fbc_storie_feed(msg,att,links,target,prompt,onc,publish,cancellogin)
{
	FB.Connect.requireSession(function() {
		FB.Connect.streamPublish(msg,att,links,target,prompt,onc,publish);
	},function(){
		cancellogin();
	});
}

function ww_fbc_parse_fbml()
{
	FB.XFBML.Host.parseDomTree();
}

function ww_fbc_showdialog(dial,ext,onc)
{
	FB.Connect.showPermissionDialog(dial, ext);
}

function ww_fbc_register(url,flush)
{
	FB.ensureInit(function() {
		FB.Connect.requireSession(function() {
			var uid=FB.Facebook.apiClient.get_session().uid;
			var sid=FB.Facebook.apiClient.get_session().session_key;
			var api=ww_fbc_apikey;
			var onc=function(){
 			new ajax(PPATH+'ajax/fbc_connect.html', {postBody:'XID='+uid+'&FSID='+sid+'&API='+api+'&NAME='+ww_fbc_fql_res[0]["name"]+'&VNAME='+ww_fbc_fql_res[0]["first_name"]+'&LNAME='+ww_fbc_fql_res[0]["last_name"]+'&GEB='+ww_fbc_fql_res[0]["birthday"]+'&GEN='+ww_fbc_fql_res[0]["sex"]+'&PIC='+ww_fbc_fql_res[0]["pic"],onComplete:function(){
				if(return_fbc._MO_FBC_STATUS=='OK')
				{
					if(return_fbc._MO_FBC_ETXT=='REGISTER')
					{
						ToolTip.get('ww_fbc_register',this,false,'&NAME='+ww_fbc_fql_res[0]["name"]+'&VNAME='+ww_fbc_fql_res[0]["first_name"]+'&LNAME='+ww_fbc_fql_res[0]["last_name"]+'&GEN='+ww_fbc_fql_res[0]["sex"]+'&GEB='+ww_fbc_fql_res[0]["birthday"]+'&PIC='+ww_fbc_fql_res[0]["pic"],true);
					}
					if(return_fbc._MO_FBC_ETXT=='AUTOREGISTER')
					{
						ww_fbc_sitereload(url);
						wwPlugIn.flush(flush,'#23982b');
					}
					if(return_fbc._MO_FBC_ETXT=='LOGIN')
					{
						ww_fbc_sitereload(url);
						wwPlugIn.flush(flush,'#23982b');
					}
					if(return_fbc._MO_FBC_ETXT=='CONNECT')
					{
						ToolTip.get('ww_fbc_register',this,false,'&NAME='+ww_fbc_fql_res[0]["name"]+'&VNAME='+ww_fbc_fql_res[0]["first_name"]+'&LNAME='+ww_fbc_fql_res[0]["last_name"]+'&GEN='+ww_fbc_fql_res[0]["sex"]+'&GEB='+ww_fbc_fql_res[0]["birthday"]+'&PIC='+ww_fbc_fql_res[0]["pic"],true);					
					}
				}
				if(return_fbc._MO_FBC_STATUS=='NO')
				{
					if(return_fbc._MO_FBC_ETXT=='LOGIN')
					{
						wwPlugIn.flush(flush,'#b73a18');
					}
					if(return_fbc._MO_FBC_ETXT=='AUTOREGISTER')
					{
						wwPlugIn.flush(flush,'#b73a18');
					}
					if(return_fbc._MO_FBC_ETXT=='FLAG')
					{
						wwPlugIn.flush(flush,'#b73a18');
					}					
				}
			},evalObj:'return_fbc'});
			};
			ww_fbv_query.get('register',onc);
		});
	});

}

function ww_fbc_connect(name,pw)
{
	if(name && pw)
	{
		new ajax(PPATH+'ajax/fbc_connect_acc.html', {postBody:'NAME='+name+'&PW='+pw+'&XID='+FB.Facebook.apiClient.get_session().uid+'&API='+ww_fbc_apikey+'&FSID='+FB.Facebook.apiClient.get_session().session_key,onComplete:function(){
			if(return_fbc._MO_FBC_STATUS=='OK')
			{
				ww_fbc_sitereload('RELOAD');
			}
			if(return_fbc._MO_FBC_STATUS=='NO')
			{
				setInnerHTML("ww_fbc_err_field",return_fbc._MO_FBC_ETXT);
				el_flush('ww_fbc_err_field','#b73a18');
			}
		},evalObj:'return_fbc'});
	}
}

function ww_fbc_register_send(name,gender,day,month,year,pic)
{
	if(name && gender && day && month && year)
	{
		new ajax(PPATH+'ajax/fbc_connect_reg.html', {postBody:'NAME='+name+'&GEN='+gender+'&DAY='+day+'&MONTH='+month+'&YEAR='+year+'&XID='+FB.Facebook.apiClient.get_session().uid+'&API='+ww_fbc_apikey+'&FSID='+FB.Facebook.apiClient.get_session().session_key+'&PIC='+pic,onComplete:function(){
			if(return_fbc._MO_FBC_STATUS=='OK')
			{
				ww_fbc_sitereload('RELOAD');
			}
			if(return_fbc._MO_FBC_STATUS=='NO')
			{
				setInnerHTML("ww_fbc_err_field",return_fbc._MO_FBC_ETXT);
				el_flush('ww_fbc_err_field','#b73a18');
			}		
		},evalObj:'return_fbc'});
	}
}

var ww_fbc_cry_com=new Array();
var ww_fbv_query =
{
	getvar:'',
	init: function()
	{
		ww_fbc_cry_com['name']='SELECT name FROM user WHERE uid='+FB.Facebook.apiClient.get_session().uid;
		ww_fbc_cry_com['namelink']='SELECT name,profile_url FROM user WHERE uid='+FB.Facebook.apiClient.get_session().uid;
		ww_fbc_cry_com['email']='SELECT proxied_email FROM user WHERE uid='+FB.Facebook.apiClient.get_session().uid;
		ww_fbc_cry_com['all']='SELECT proxied_email,name,first_name,last_name,locale,affiliations,profile_url,timezone,birthday,sex FROM user WHERE uid='+FB.Facebook.apiClient.get_session().uid;
		ww_fbc_cry_com['register']='SELECT name,first_name,last_name,birthday,sex,pic FROM user WHERE uid='+FB.Facebook.apiClient.get_session().uid;
		ww_fbc_cry_com['appfriends']='SELECT uid FROM user WHERE has_added_app=1 and uid IN (SELECT uid2 FROM friend WHERE uid1='+FB.Facebook.apiClient.get_session().uid+')';
		ww_fbc_cry_com['noneappfriends']='SELECT uid,name FROM user WHERE has_added_app=1 and uid IN (SELECT uid2 FROM friend WHERE uid1='+FB.Facebook.apiClient.get_session().uid+')';
	},

	ready: function(res)
	{
		ww_fbc_fql_res=res;
	}, 

	get: function (qry,onc)
	{
		this.getvar=qry;
		this.init();
		FB.Facebook.get_sessionState().waitUntilReady(function() 
		{
			ww_fbc_fql_ql=ww_fbc_cry_com[qry];
 			FB.Facebook.apiClient.fql_query(ww_fbc_fql_ql,function(result, ex) 
 			{
 				ww_fbv_query.ready(result);
 				if(onc) onc();
 			});
		});
	}
}

function ww_fbc_getbyclass(classname,sfor)
{
	var elems = document.getElementsByTagName(sfor);
        var laenge = elems.length;
        for(var i = 0; i < laenge; i++)
        {
        	var elem = elems[i];
        	var cls = elem.getAttribute("class");
        	if(cls == classname)
        	{
	        	tmsg=elem.innerHTML;
            		tmsg=replaceIt(tmsg,'<span class="BVReviewSectionTitle"></span>','');
          	}
        }
}

var ww_fbc_show_push=false;
var ww_fbc_show_step='0';
addLoadEvent(function()
{
	var en_debug=false;
	if(typeof(FB)=='object')
	{
		if(ww_fbc_ownid>0)
		{
			FB.ensureInit(function() {
				FB.Facebook.apiClient.users_getLoggedInUser(function(res)
				{
					if(en_debug)console_alert('Facebook-Object: ');
					if(en_debug)console_alert(FB.Connect.get_status());
					var tmp_check=true;
					if(res==null)
					{
						if(en_debug)console_alert('1: FBID=offline OWNID='+ww_fbc_ownid+' PUSH='+ww_fbc_set_push);
						ww_fbc_show_step=1;
					}
					else
					{
						FB.Facebook.get_sessionState().waitUntilReady(function() 
						{
							if(en_debug)console_alert('2: FBID='+FB.Facebook.apiClient.get_session().uid+' OWNID='+ww_fbc_ownid+' PUSH='+ww_fbc_set_push);
							ww_fbc_show_step=2;
							if(ww_fbc_ownid==FB.Facebook.apiClient.get_session().uid)
							{
							}
							else
							{
								if(ww_fbc_set_step4==0)
								{
									ww_fbc_enpush=0;
									ww_fbc_show_push=false;
									tmp_check=false;
								}					
							}
						});
					}
					if(tmp_check) if(ww_fbc_set_push==1) ww_fbc_show_push=true;
				});
			});
		}
		else
		{
			FB.ensureInit(function() {
				FB.Facebook.apiClient.users_getLoggedInUser(function(res)
				{
					if(en_debug)console_alert(FB.Connect.get_status());
					if(res==null)
					{
						var tmp=FB.Connect.get_status().result;
						var tmp2=FB.Connect.get_status()._isReady$1;
						if(en_debug)console_alert('3: FBID=offline OWNID=offline UID='+ww_fbc_luid+' FBSTAT='+tmp);
						ww_fbc_show_step=3;
						if(tmp==3)
						{
							ww_fbc_show_push=true;
						}
						else
						{
							ww_fbc_show_push=false;
						}
					}
					else
					{
						if(en_debug)console_alert('4: FBID='+FB.Facebook.apiClient.get_session().uid+' OWNID=offline UID='+ww_fbc_luid);
						ww_fbc_show_step=4;
						ww_fbc_show_push=true;
						if(ww_fbc_set_step4==0)
						{
							ww_fbc_enpush=0;
							ww_fbc_show_push=false;
						}
					}
				});
			});
		}
	}
	else
	{
		if(en_debug)console_alert('FB no object');
	}
	if(en_debug)setTimeout("console_alert('ww_fbc_show_push='+ww_fbc_show_push+' Bei Step: '+ww_fbc_show_step);",3000);
});

