$.fn.wait = function(time, type) {
        time = time || 1000;
        type = type || "fx";
        return this.queue(type, function() {
            var self = this;
            setTimeout(function() {
                $(self).dequeue();
            }, time);
        });
    };	

$(document).ready(function(){

	/*Chronik aufklappen*/
	$('.ccBox .chronicBox h3').click(function(){
		$(this).parents('.chronicBox').children('#chronic').toggle();			
	});

	$("#add-favourites").jBrowserBookmark();

	/*Share Sidebar*/
	$('#ccShare a').click(function(){
		$(this).parents('##ccShare').children('.shareLinks').toggle();			
		return false;
	});

	$('#ccShare .shareLinks li a').click(function(e){		
		var meName = $(this).parents('li').attr('class');
		shareMe(meName);
		e.preventDefault();
	});

	/*Share-Layer öffnen/schließen*/
	$('.share a').click(function(what){
		shareLayer(this);
	});
	$('.shareLayer .head a').click(function(what){
		shareLayer(this);
	});
	
	/*Share-Layer Parameter*/
	$('.shareLayer ul li a').click(function(e){		
		var meName = $(this).parents('li').attr('class');
		shareMe(meName);
		e.preventDefault();
		return false;
	});
	
	$('.shareButtons li a').click(function(e){		
		var meName = $(this).parents('li').attr('class');
		shareMe(meName);
		e.preventDefault();
		return false;
	});
});

function shareLayer(what){
	if ($(what).parents('.sharing').children('.shareLayer').hasClass('show')){
		$(what).parents('.sharing').children('.shareLayer').removeClass('show');
	}
	else {
		$(what).parents('.sharing').children('.shareLayer').addClass('show');
	}
}

function shareMe(which){
	var shareURL = encodeURIComponent(location.href);
	var shareTITLE = encodeURIComponent(document.title);
	var shareDESC = "";

	if (which == "fb") {
		if (typeof(pageTracker) != "undefined") {
			pageTracker._trackPageview('/conversions/sharing/facebook/shared');
		}
		window.open('http://www.facebook.com/sharer.php?u='+shareURL+'&t='+shareTITLE,'Share','width=400,height=400,toolbar=no,location=yes,directories=no,status=no,menubar=no,scrollbars=yes,copyhistory=yes,resizable=yes');
	}
	else if (which == "tw") {
		if (typeof(pageTracker) != "undefined") {
			pageTracker._trackPageview('/conversions/sharing/twitter/shared');
		}
		window.open('http://twitter.com/intent/tweet?url='+shareURL+'&text='+shareTITLE+' on Ferrostaal','Share','width=400,height=400,toolbar=no,location=yes,directories=no,status=no,menubar=no,scrollbars=yes,copyhistory=yes,resizable=yes');
	}
	else if (which == "xi") {
		if (typeof(pageTracker) != "undefined") {
			pageTracker._trackPageview('/conversions/sharing/xing/shared');
		}
		window.open('https://www.xing.com/app/user?op=share&url='+shareURL+';title='+shareTITLE+';provider=Ferrostaal','Share','width=400,height=400,toolbar=no,location=yes,directories=no,status=no,menubar=no,scrollbars=yes,copyhistory=yes,resizable=yes');
	}
	else if (which == "li") {
		if (typeof(pageTracker) != "undefined") {
			pageTracker._trackPageview('/conversions/sharing/linkedin/shared');
		}
		window.open('http://www.linkedin.com/shareArticle?mini=true&amp;url='+shareURL+'&amp;title='+shareTITLE+'&summary='+shareDESC+'&source=Ferrostaal','Share','width=400,height=400,toolbar=no,location=yes,directories=no,status=no,menubar=no,scrollbars=yes,copyhistory=yes,resizable=yes');
	}
	else if (which == "go") {
		if (typeof(pageTracker) != "undefined") {
			pageTracker._trackPageview('/conversions/sharing/google/shared');
		}
		window.open('http://www.google.com/reader/link?url='+shareURL+'&title='+shareTITLE+'&srcTitle='+shareTITLE+'&srcUrl='+shareURL,'Share','width=400,height=400,toolbar=no,location=yes,directories=no,status=no,menubar=no,scrollbars=yes,copyhistory=yes,resizable=yes');
	}
	else if (which == "mw") {
		if (typeof(pageTracker) != "undefined") {
			pageTracker._trackPageview('/conversions/sharing/misterwrong/shared');
		}
		window.open('http://www.mister-wong.com/index.php?action=addurl&amp;bm_url='+shareURL+'&amp;bm_description='+shareTITLE,'Share','width=400,height=400,toolbar=no,location=yes,directories=no,status=no,menubar=no,scrollbars=yes,copyhistory=yes,resizable=yes');
	}
	else if (which == "de") {
		if (typeof(pageTracker) != "undefined") {
			pageTracker._trackPageview('/conversions/sharing/delicious/shared');
		}
		window.open('http://www.delicious.com/save?v=5&amp;noui&amp;jump=close&amp;url='+shareURL+'&amp;title='+shareTITLE,'Share','width=400,height=400,toolbar=no,location=yes,directories=no,status=no,menubar=no,scrollbars=yes,copyhistory=yes,resizable=yes');
	}
	else if (which == "su") {
		if (typeof(pageTracker) != "undefined") {
			pageTracker._trackPageview('/conversions/sharing/stumbleupon/shared');
		}
		window.open('http://www.stumbleupon.com/submit?url='+shareURL+'&amp;title='+shareTITLE,'Share','width=400,height=400,toolbar=no,location=yes,directories=no,status=no,menubar=no,scrollbars=yes,copyhistory=yes,resizable=yes');
	}
	else if (which == "me") {
		if (typeof(pageTracker) != "undefined") {
			pageTracker._trackPageview('/conversions/sharing/meneame/shared');
		}
		window.open('http://www.meneame.net/submit.php?url='+shareURL,'Share','width=400,height=400,toolbar=no,location=yes,directories=no,status=no,menubar=no,scrollbars=yes,copyhistory=yes,resizable=yes');
	}
	else if (which == "bg") {
		if (typeof(pageTracker) != "undefined") {
			pageTracker._trackPageview('/conversions/sharing/blogger/shared');
		}
		window.open('http://www.blogger.com/blog_this.pyra?t&u='+shareURL+'&n='+shareTITLE+'&pli=1','Share','width=400,height=400,toolbar=no,location=yes,directories=no,status=no,menubar=no,scrollbars=yes,copyhistory=yes,resizable=yes');
	}
	else if (which == "di") {
		if (typeof(pageTracker) != "undefined") {
			pageTracker._trackPageview('/conversions/sharing/digg/shared');
		}
		window.open('http://digg.com/submit?url='+shareURL+'&amp;title='+shareTITLE,'Share','width=400,height=400,toolbar=no,location=yes,directories=no,status=no,menubar=no,scrollbars=yes,copyhistory=yes,resizable=yes');
	}
	else if (which == "ri") {
		if (typeof(pageTracker) != "undefined") {
			pageTracker._trackPageview('/conversions/sharing/reddit/shared');
		}
		window.open('http://reddit.com/submit?url='+shareURL,'Share','width=400,height=400,toolbar=no,location=yes,directories=no,status=no,menubar=no,scrollbars=yes,copyhistory=yes,resizable=yes');
	}
	else if (which == "so") {
		if (typeof(pageTracker) != "undefined") {
			pageTracker._trackPageview('/conversions/sharing/sonico/shared');
		}
		window.open('http://www.sonico.com/share.php?title='+shareTITLE+'&url='+shareURL,'Share','width=400,height=400,toolbar=no,location=yes,directories=no,status=no,menubar=no,scrollbars=yes,copyhistory=yes,resizable=yes');
	}
	else if (which == "or") { //Orkut - nicht so einzubinden
//		window.open('http://promote.orkut.com/preview?nt=orkut.com&tt='+shareTITLE+'&du='+shareURL,'Share','width=400,height=400,toolbar=no,location=yes,directories=no,status=no,menubar=no,scrollbars=yes,copyhistory=yes,resizable=yes');
	}
}

function base64_decode( data ) {    // Decodes data encoded with MIME base64
 
 
    var b64 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";
    var o1, o2, o3, h1, h2, h3, h4, bits, i=0, enc='';
 
    do {  
        h1 = b64.indexOf(data.charAt(i++));
        h2 = b64.indexOf(data.charAt(i++));
        h3 = b64.indexOf(data.charAt(i++));
        h4 = b64.indexOf(data.charAt(i++));
 
        bits = h1<<18 | h2<<12 | h3<<6 | h4;
 
        o1 = bits>>16 & 0xff;
        o2 = bits>>8 & 0xff;
        o3 = bits & 0xff;
 
        if (h3 == 64)      enc += String.fromCharCode(o1);
        else if (h4 == 64) enc += String.fromCharCode(o1, o2);
        else               enc += String.fromCharCode(o1, o2, o3);
    } while (i < data.length);
 
    return enc;
}


jQuery.fn.ShowToolBox = function(options){
	return this.each(function(){
		
		$(this).find("#open_page").each(function(){
			$(this).attr("active",0);
			$(this).click(function(){
				if($(this).attr("active")==0){
					$("#open_page_div").addClass("active");
					$("#list_page").css("display","block");
					WorkWithPageList.ViewPageList();
				}else{
					$("#open_page_div").removeClass("active");
					$("#list_page").css("display","none");
				}
				$(this).attr("active",$(this).attr("active")==0?1:0 );
			});
		});
		
		$("#close_page_list").click(function(){
			$("#open_page_div").removeClass("active");
			$("#list_page").css("display","none");
			$("#open_page").attr("active",$("#open_page").attr("active")==0?1:0 );
		});
		$("#add_page").click(function(){
			WorkWithData.AddPage();
			if (typeof(pageTracker) != "undefined") {
				pageTracker._trackPageview('/conversions/clipping/add');
			}
		});
		$("#delete_all").click(function(){
			WorkWithData.DeleteAll();
			$("#open_page").attr("active",0);
			$("#open_page_div").removeClass("active");
			$("#list_page").css("display","none");			
			var count_save_page = WorkWithData.GetCountData();
			WorkWithPageList.SetCountMemberPage(count_save_page);
		});		
		$("#send_curent_page").click(function(){
			WorkWithMail.ViewMailWindow("this");
		});
		
		var count_save_page = WorkWithData.GetCountData();
		
		WorkWithPageList.SetCountMemberPage(count_save_page);
	})
	};
	
WorkWithPageList = {
	SetCountMemberPage:function(count){
		var str = $("#count_page").html();
		var start_pos = str.indexOf("(");
		var end_pos = str.indexOf(")");
		str = str.replace(/\d+/, count); 
	
		$("#count_page").html(str);
		if(count > 0){
			$("#open_page_div").css("display","block");
		}else{
			$("#open_page_div").css("display","none");
		}
	},
	ViewPageList:function(){
		var str = "";
		var page = 1;
		var list_page = WorkWithData.GetListPage();
		var count_on_page = 10000;
		var count_all = list_page.length;
		var count_page_real = count_all/count_on_page;
		var count_page_int = parseInt(count_all/count_on_page);
		var count_page = count_page_int;
		if(count_page_int != count_page_real) count_page++;			
		if(page>count_page) page = count_page;
		if(page == 0) page = 1;
		var start = (page-1)*count_on_page;
		
		var end = start+count_on_page;
		if(end>count_all) end = count_all;
		for(var i=start;i<end;i++){
			var mas = list_page[i].split("->");
			
			var str_new = $("#template_one_element").html();
			str_new = str_new.replace(/###TOOLBOXHREF###/g,base64_decode(mas[0]));
			str_new = str_new.replace(/###TOOLBOXHREF_FIRST###/g,mas[0]);
			//str_new = str_new.replace("###HREF###",mas[0]);
			str_new = str_new.replace(/###TOOLBOXTITLE###/g,mas[1]);
			//str_new = str_new.replace("###TITLE###",mas[1]);
			str_new = str_new.replace(/###TOOLBOXHREF_PRINT###/g,base64_decode(mas[2]));
			str += str_new;
		}		
		$("#list_page ul").empty();
		$("#list_page ul").html(str);
	},
	RemovePage:function(obj){
		$(obj).parent().parent().find(".sys_link").each(function(){
			var url = $(this).attr("href_id");
			WorkWithData.RemovePage(url);
			var count = WorkWithData.GetCountData();
			WorkWithPageList.SetCountMemberPage(count);						
			WorkWithPageList.ViewPageList();
			if(count == 0){
				$("#open_page_div").removeClass("active");
				$("#list_page").css("display","none");
				$("#open_page").attr("active",0);			
			}			
		});
	},
	PrintThisPage:function(){

		if (typeof(pageTracker) != "undefined") {
			pageTracker._trackPageview('/conversions/print/show-printable-version');
		}

		var xurl = toolboxPrint;
		xurl = base64_decode(xurl);
		var t=setTimeout("WorkWithPageList.DoPrint('" + xurl + "')",500);
	},
	DoPrint:function(url){
		window.open(url);	
	},
	PrintOnePage:function(url){
		if (typeof(pageTracker) != "undefined") {
			pageTracker._trackPageview('/conversions/print/show-printable-version');
		}
		var t=setTimeout("WorkWithPageList.DoPrint('" + url + "')",500);
	}	
}	

	
WorkWithData = {
	setCookie:function(name, value, expires, path, domain, secure){
	    document.cookie = name + "=" + escape(value) +
	        ((expires) ? "; expires=" + expires : "") +
	        ((path) ? "; path=" + path : "") +
	        ((domain) ? "; domain=" + domain : "") +
	        ((secure) ? "; secure" : "");	
	},
	getCookie:function(name){
		var cookie = " " + document.cookie;
		var search = " " + name + "=";
		var setStr = null;
		var offset = 0;
		var end = 0;
		if (cookie.length > 0) {
			offset = cookie.indexOf(search);
			if (offset != -1) {
				offset += search.length;
				end = cookie.indexOf(";", offset)
				if (end == -1) {
					end = cookie.length;
				}
				setStr = unescape(cookie.substring(offset, end));
			}
		}
		return(setStr);	
	},
	IsSetFlash:function(){
		return 0;
	},
	GetCountData : function(){
		if (this.IsSetFlash()){
			return 0;
		}else{
			var cookie = this.getCookie("page_list");
			if(!cookie) return 0;
			if(cookie == "") return 0;
			var mas = cookie.split("||");
			return mas.length;

		}
	},
	AddPage:function(){
		if (this.IsSetFlash()){
			return ;
		}else{
			var cookie = this.getCookie("page_list");
			var url = toolboxUrl;
			var title = toolboxTitle;
			if(title == "") title = "no name";
			if(!cookie) cookie = "";
			if(cookie.length>4000){
				var str = $("#error_cookie").html();
			}
			var flag = true;
			
			var mas = cookie.split("||");
			for(var i=0;i<mas.length;i++){
				var mas2 = mas[i].split("->");
				if (mas2[0] == url) flag = false;
			}
			
			if(flag == true){
				if (cookie != "") cookie += "||";
				cookie += url+"->"+title+"->"+toolboxPrint;
				this.setCookie("page_list", cookie);
				var count = this.GetCountData();
				WorkWithPageList.SetCountMemberPage(count);
			}
		

		}	
		
		if($("#open_page").attr("active")==1){
			WorkWithPageList.ViewPageList();
		}
	},
	RemovePage:function(url){
		if (this.IsSetFlash()){
			return ;
		}else{
			var cookie = this.getCookie("page_list")
			if(!cookie) cookie = "";
			var mas = cookie.split("||");
			var new_cookie = "";
			for(var i=0;i<mas.length;i++){
				var mas2 = mas[i].split("->");
				if (mas2[0] != url) {
					if (new_cookie != "") new_cookie += "||";
					new_cookie += mas2[0]+"->"+mas2[1];
				}
			}
			this.setCookie("page_list", new_cookie);		
		}
	},
	GetListPage:function(){
		var list_page = new Array();
		if (this.IsSetFlash()){
			return "";
		}else{
			var cookie = this.getCookie("page_list");
			if(cookie && cookie!=""){
				list_page = cookie.split("||");
			}
			return list_page;
			
		}
	},
	GetListPageAll:function(){
		var list_page = new Array();
		if (this.IsSetFlash()){
			return "";
		}else{
			var cookie = this.getCookie("page_list");
			return cookie;
			
		}
	},	
	DeleteAll:function(){
		if (this.IsSetFlash()){
			return ;
		}else{
			this.setCookie("page_list", "");
		}		
	}
}
