var shareFormFocus = false;
function addShareForm(target,x,y,w,h,c1,c2,c3,url,name,image,iconR,fixed){
	$(target).addShareForm(x,y,w,h,c1,c2,c3,url,name,image,iconR,fixed,relative);
}
function removeShareForm(){
	if($(".share_form").length > 0){
		$("#playlist_facebook_icon").stop(true).css({left:90});
		$("#playlist_twitter_icon").stop(true).css({left:121});
		$("#playlist_copy_icon").stop(true).css({left:159});
		if($("#playlist_sh_icon").css("display") == "none"){
			$("#playlist_sh_icon").css({display:"block"});
		}
		//
		if($(".blog_entry").length > 0){
			$(".blog_entry #sh_icon").each(function(){
				$(this).css({visibility:"visible"});
			});
		}
		/*
		
			$("#sh_icon").css({visibility:"visible"});
		}
		*/
		//
		$("#share_form_message").stop(true);
		$(".share_form").stop(true);
		$(".share_form").remove();
		shareFormFocus = false;
	}
}
jQuery.fn.addShareForm = function(x,y,w,h,c1,c2,c3,url,name,image,iconR,fixed,relative){
	removeShareForm();
	var padding = 19;
	var iconPos = w < 300 ? 13 : padding;
	var position = fixed ? "fixed" : "absolute";
	if(relative){
		position = "relative";
	}
	var html = '<div class="share_form" style="position:'+position+';left:'+x+'px;top:'+y+'px;width:'+(w-padding*2)+'px;height:'+(h-padding*2)+'px;background-color:'+c1+';padding:'+padding+'px;color:'+c2+';">';
	if(iconR){
		html += '<img src="assets/share_icon.png" style="position:absolute;top:15px;right:13px;" onload="tintIMG(this,\''+c3+'\')" />';
	}else{
		html += '<img src="assets/share_icon.png" style="top:15px;left:'+padding+'px;padding-bottom:10px;margin-left:-1px;" onload="tintIMG(this,\''+c3+'\')" /><br>';
	}
	html += '<span id="share_form_title">Email</span><br>';
	html += '<input id="share_form_to" value="To:" /><br>';
	html += '<input id="share_form_from" value="From:" />';
	html += '<div id="share_form_buttons"><span id="share_form_send" class="share_form_button">Send</span>/<span id="share_form_close" class="share_form_button">Close</span></div>';
	html += '<div id="share_form_message"></div>';
	html += '</div>';
	$(this).append(html);
	$(".share_form_button").data("url",url);
	$(".share_form_button").data("name",name);
	$(".share_form_button").data("image",image);
	$(".share_form input").css({color:c3,width:(w-padding*2)});
	$(".share_form input").focus(function(){
		var val = $(this).attr("id").split("share_form_").join("").toLowerCase()+":";
		var str = String($(this).val()).split(" ").join("").toLowerCase();
		if(str == val){
			$(this).val("");
		}
		shareFormFocus = true;
	});
	$(".share_form input").blur(function(){
		var str = String($(this).val()).split(" ").join("").toLowerCase();
		var val = $(this).attr("id") == "share_form_to" ? "To:" : "From:";
		if(str == ""){
			$(this).val(val);
		}
		shareFormFocus = false;
	});
	$(".share_form_button").css({cursor:"pointer",color:c2});
	$(".share_form_button").mouseover(function(){
		$(this).stop(true).animate({color:c3},150);
	});
	$(".share_form_button").mouseout(function(){
		$(this).stop(true).animate({color:c2},150);
	});
	$(".share_form_button").click(function(){
		if($(this).attr("id") == "share_form_close"){
			removeShareForm();
		}else{
			sendShareForm($(this).data("url"),$(this).data("name"),$(this).data("image"));
		}
	});
	$(".share_form").css({opacity:0}).animate({opacity:1},300);
}
function cleanMails(str){
	var tmp = str;
	tmp = tmp.split("\r").join("");
	tmp = tmp.split("\n").join("");
	tmp = tmp.split(" ").join("");
	for(var i=0;i<3;i++){
		if(tmp.substring(tmp.length) == ","){
			tmp = tmp.substring(0,tmp.length);
		}
	}
	return tmp;
}
function checkMails(str){
	var ok = true;
	var tmp = str.split(",");
	var tmp2;
	var tmp3;
	for(var i=0;i<tmp.length;i++){
		tmp2 = tmp[i].split("@");
		if(tmp2.length == 2){
			tmp3 = tmp2[1].split(".");
			if(tmp3.length<2){
				ok = false;	
			}
		}else{
			ok = false;	
		}
	}
	return ok;
}
function sendShareForm(url, name, image){
	var to = cleanMails($("#share_form_to").val());
	var from = cleanMails($("#share_form_from").val());
	var from2 = "website@weareroyale.com";
	var bcc = "websiteroyale@gmail.com";
	var url = url == "" ? $.address.path() : url;
	if(url == "root"){
		url = "";
	}
	var subject = getSubject(url,name);
	var body = getBody(url,name,image);
	//
	var fieldsOK = 0;
	if(checkMails(to)){
		fieldsOK++;
	}
	if(checkMails(from)){
		fieldsOK++;
	}
	if(fieldsOK == 2){
		$.ajax({
			type: "POST",
			url: "mailer_new.php",
			data: "to=" + to + "&email=" + from2 + "&bcc="+ bcc +"&reply=" + from + "&subject=" + subject + "&body=" + body,
			cache: false,
			dataType: "html",
			beforeSend: function(objeto){
				$("#share_form_message").css({display:"block"}).html("Sending...");
				$("#share_form_buttons").css({display:"none"});
			},
			success: function(msg){
				$("#share_form_message").css({display:"block"}).html("Thanks for sharing.");
				$("#share_form_message").stop(true).delay(3000).animate({opacity:0},50,function(){
					$("#share_form_buttons").css({display:"block"});
					$(this).css({display:"none"});
					removeShareForm();
				});
			},
			error: function(objeto, quepaso, otroobj){
				$("#share_form_message").html("Try again later.");
				$("#share_form_message").stop(true).delay(3000).animate({opacity:0},50,function(){
					$("#share_form_buttons").css({display:"block"});
					$(this).css({display:"none"});
				});
			}
		});
	}else{
		$("#share_form_message").stop(true).css({display:"block",opacity:1});
		$("#share_form_buttons").css({display:"none"});
		$("#share_form_message").html("Check Email Address.");
		$("#share_form_message").delay(3000).animate({opacity:0},50,function(){
			$("#share_form_buttons").css({display:"block"});
			$(this).css({display:"none"});
		});
	}
}
function getSubject(url, name){
	var subject = "Check out Royale's site";
	var pn = url.substring(1,url.length).split("/");
	if(pn[0] == "work" || pn[0] == "play"){
		subject = "Check out "+name+". A project by Royale";
	}
	if(pn[0] == "reels"){
		subject = "Check out Royale's "+name+" Reel";
	}
	if(pn[0] == "playlist"){
		subject = "Project Playlist From Royale";
	}
	if(pn[0] == "about" && pn[1] == "company"){
		subject = "About Royale";
	}
	if(pn[0] == "about" && pn[1] == "jobs"){
		subject = "Join Royale";
	}
	if(pn[0] == "contact"){
		subject = "Hello Royale";
	}
	if(pn[0] == "blog"){
		subject = "A post from the Royale Blog";
	}
	return subject;
}
function getBody(url, name, image){
	var base = $.address.baseURL();
	var body = '<a href="'+base+'" target="_blank"><img src="http://205.186.162.159/assets/logo_mail.jpg" /></a><br><br>';
	var img = image;
	if(Boolean(img)){
		if(img.substring(0,1) == "."){
			img = img.substring(1,img.length);
		}
		img = base+img;
	}
	var pn = url.substring(1,url.length).split("/");
	if(url == "/" || url == ""){
		body += '<a href="'+base+'">'+base+'</a><br><br>';
		body += 'For more information please contact Bryan Shrednick at bryan@weareroyale.com';
	}
	if(pn[0] == "work" || pn[0] == "play"){
		body += 'Check out this project at the Royale website: <a href="'+base+'/#'+url+'" target="_blank">'+base+'/#'+url+'</a><br><br>';
		body += '<a href="'+base+'/#'+url+'" target="_blank"><img src="'+img+'" border="0" width="478" height="268" /></a><br><br>';
		body += 'For more information please contact Bryan Shrednick at bryan@weareroyale.com';
	}
	if(pn[0] == "reels"){
		body += 'Check out this reel at the Royale website: <a href="'+base+'/#'+url+'" target="_blank">'+base+'/#'+url+'</a><br><br>';
		body += '<a href="'+base+'/#'+url+'" target="_blank"><img src="'+img+'" border="0" width="478" height="268" /></a><br><br>';
		body += 'For more information please contact Bryan Shrednick at bryan@weareroyale.com';
	}
	if(pn[0] == "playlist"){
		body += 'Check out this Playlist of projects at the Royale website: <a href="'+base+'/#'+url+'" target="_blank">'+base+'/#'+url+'</a><br><br>';
		body += 'For more information please contact Bryan Shrednick at bryan@weareroyale.com';
	}
	if(pn[0] == "about" && pn[1] == "company"){
		body += 'Click here to learn more about Royale: <a href="'+base+'/#'+url+'" target="_blank">'+base+'/#'+url+'</a><br><br>';
		body += 'For more information please contact Bryan Shrednick at bryan@weareroyale.com';
	}
	if(pn[0] == "about" && pn[1] == "jobs"){
		body += 'There\'s a job opening at Royale! Click here to learn more about it: <a href="'+base+'/#'+url+'" target="_blank">'+base+'/#'+url+'</a><br><br>';
		body += 'For more information please contact Bryan Shrednick at bryan@weareroyale.com';
	}
	if(pn[0] == "contact"){
		body += 'Click here to view Royale\'s contact information: <a href="'+base+'/#'+url+'" target="_blank">'+base+'/#'+url+'</a><br><br>';
		body += 'For more information please contact Bryan Shrednick at bryan@weareroyale.com';
	}
	if(pn[0] == "blog"){
		body += 'Check out this post from the Royale Blog: <a href="'+base+'/#'+url+'" target="_blank">'+base+'/#'+url+'</a><br><br>';
		body += 'For more information please contact Bryan Shrednick at bryan@weareroyale.com';
	}
	return body;
}
function shareSocialNetwork(target,url){
	$(target).shareSocialNetwork(url);
}
jQuery.fn.shareSocialNetwork = function(url){
	var url = (url == "" || !Boolean(url)) ? $.address.path() : $.address.baseURL()+url;
	var id = $(this).attr("id").toLowerCase();
	var facebook = id.split("facebook").length > 1; 
	var twitter = id.split("twitter").length > 1; 
	if(facebook){
		window.open('http://www.facebook.com/sharer.php?u='+url,'_blank');
	}
	if(twitter){
		window.open('http://twitter.com/share?url='+url,'_blank');
	}
}	
jQuery.fn.setClipboardData = function(str){
	$(this).children("embed").remove();
	$(this).append('<embed src="assets/setClipboard.swf?'+str+'" wmode="transparent" width="18" height="19" type="application/x-shockwave-flash" style="position:absolute;"/>');
	
}
