var scr=window.scr||{};
(function()
{
	if(!scr.widgets){
		scr.widgets={}
	}
	if(!scr.widgets.host){
		scr.widgets.host="cupid{i}.stylecaster.com"
	}
	if(typeof scr.widgets.ignoreSSL==="undefined"){
		scr.widgets.ignoreSSL=false
	}
	function T(X){
		var Z=M(X);
		var Y=scr.widgets.host;
		var W=Y.replace("{i}",G++);
		if(G==5){
			G=1
		}
		return Z+"://"+W
	}
	function M(W){
		return(window.location.protocol.match(/s\:$/)||W)&&!scr.widgets.ignoreSSL?"https":"http"
	}
	function Q(W){
		return encodeURIComponent(W).replace(/\+/g,"%2B")
	}
	function D(W){
		return decodeURIComponent(W)
	}
	function J(Y){
		var X=[];
		for(var W in Y){
			if(Y[W]!==null&&typeof Y[W]!=="undefined"){
				X.push(Q(W)+"="+Q(Y[W]))
			}
		}
		return X.sort().join("&")
	}
	function F(X,Y){
		for(var W in Y){
			X[W]=Y[W];
		}
		return X
	}
	function I(b){
		var Y;
		var Z;
		var X=function(){
			if(document.readyState=="complete"){
				Y()
			}
		};
		var W;
		var a=function(){
			try{
				document.documentElement.doscrroll("left");
				Y()
			}catch(c){}
		};
		if(window.addEventListener){
			Y=function(){
				if(!Z){
					Z=true;
					b()
				}
				window.removeEventListener("DOMContentLoaded",Y,false);
				window.removeEventListener("load",Y,false)
			};

			window.addEventListener("DOMContentLoaded",Y,false);
			window.addEventListener("load",Y,false)
		}else{
			if(window.attachEvent){
				W=window.setInterval(a,13);
				Y=function(){
					if(!Z){
						Z=true;
						b()
					}
					window.clearInterval(W);
					window.detachEvent("onreadystatechange",X);
					window.detachEvent("onload",Y)
				};

				window.attachEvent("onreadystatechange",X);
				window.attachEvent("onload",Y)
			}
		}
	}
	function get_buttons(element_type, button_class)
	{
		var Z;
		var result=[];
		var X;
		var Y;
		try
		{
			if(document.querySelectorAll)
			{
				result = document.querySelectorAll(element_type+"."+button_class);
			}
			else
			{
				if(document.getElementsByClassName)
				{
					Z = document.getElementsByClassName(button_class);
					for(X=0;(Y=Z[X]);X++)
					{
						if(Y.tagName.toLowerCase() == element_type)
						{
							result.push(Y);
						}
					}
				}
				else
				{
					Z = document.getElementsByTagName(element_type);
					var d = new RegExp("\\b"+button_class+"\\b");
					for(X = 0; (Y = Z[X]); X++)
					{
						if(Y.className.match(d))
						{
							result.push(Y);
						}
					}
				}
			}
		} catch(c) {}
		return result;
	}
	function P(Z){
		var b={},Y,a,X,W;
		if(Z){
			Y=Z.split("&");
			for(W=0;(X=Y[W]);W++){
				a=X.split("=");
				if(a.length==2){
					b[D(a[0])]=D(a[1])
				}
			}
		}
		return b
	}
	function R(X){
		var W;
		if(X.match(/^https?:\/\//)){
			return X
		}else{
			W=location.host;
			if(location.port.length>0){
				W+=":"+location.port
			}
			return[location.protocol,"//",W,X].join("")
		}
	}
	function A(){
		var W=document.getElementsByTagName("link");
		for(var X=0,Y;(Y=W[X]);X++){
			if(Y.getAttribute("rel")=="canonical"){
				return R(Y.getAttribute("href"))
			}
		}
		return null
	}
	
	function init(object)
	{
		var X;
		for(var selector in object)
		{
			X = get_buttons.apply(this, selector.split("."));
			for(var Y = 0, Z; (Z = X[Y]); Y++)
			{
				new object[selector](Z).render()
			}
		}
	}
	var L=encodeURI(location.href),G=1;
	scr.Button = function(a){
		this.originElement = a;
		var X = a.href.split("?")[1];
		var Z = X?P(X):{};
		this.text = Z.text||a.getAttribute("data-text");
		this.url = Z.url||a.getAttribute("data-url")||A()||L;
		this.statusID = Z.status_id||a.getAttribute("data-status-id");
		this.counturl = Z.counturl||a.getAttribute("data-counturl");
		this.imageurl = Z.imageurl||a.getAttribute("data-imageurl");
	};
	F(scr.Button.prototype,{
		parameters:function(){
			var W;
			if(this.statusID){
				W={
					status_id:this.statusID
				}
			} else {
				W={
					text:this.text,
					url:this.url,
					counturl:this.counturl,
					imageurl:this.imageurl
				}
			}
			W._=(new Date()).getTime();
			return J(W)
		},
		render:function(){
			if(!scr.Button.fragment){
				scr.Button.fragment=document.createElement("div");
				scr.Button.fragment.innerHTML='<iframe allowtransparency="true" frameborder="0" scrrolling="no" tabindex="0" class="stylecaster-love-button"></iframe>'
			}
			var X=scr.Button.fragment.firstChild.cloneNode(false);
			X.src=T()+"/index.php?"+this.parameters();
			X.style.width="110px";
			X.style.height="20px";
			X.title="StyleCaster Love Button";
			var W=this.originElement.parentNode;
			if(W){
				W.replaceChild(X,this.originElement)
			}
		}
	});
	var O={
		"a.stylecaster-love-button":scr.Button
	};
	init(O);
	I(function(){
		init(O);
	})
}());
