jQuery.noConflict();

jQuery.jQueryRandom = 0;
jQuery.extend(jQuery.expr[":"],
{
	random: function(a, i, m, r) {
		if (i == 0) {
			jQuery.jQueryRandom = Math.floor(Math.random() * r.length);
		};
		return i == jQuery.jQueryRandom;
	}
});

function createCookie(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=/";
}

function readCookie(name) {
	var nameEQ = name + "=";
	var ca = document.cookie.split(';');
	for(var i=0;i < ca.length;i++) {
		var c = ca[i];
		while (c.charAt(0)==' ') c = c.substring(1,c.length);
		if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
	}
	return null;
}

function eraseCookie(name) {
	createCookie(name,"",-1);
}


jQuery(window).ready(function(){

	//INIT META DATA
	if(jQuery.metadata)
		jQuery.metadata.setType("attr", "data");
	
	//SELECTED ELEMENTS
	var levels = [
			jQuery("meta[name='Netblast-Page-ID']").attr("content") != '' ? jQuery("meta[name='Netblast-Page-ID']").attr("content") : '',
			jQuery("meta[name='Netblast-ID-Level-2']").attr("content") != '' ? jQuery("meta[name='Netblast-ID-Level-2']").attr("content") : '',
			jQuery("meta[name='Netblast-ID-Level-3']").attr("content") != '' ? jQuery("meta[name='Netblast-ID-Level-3']").attr("content") : '',
			jQuery("meta[name='Netblast-ID-Level-4']").attr("content") != '' ? jQuery("meta[name='Netblast-ID-Level-4']").attr("content") : '',
			jQuery("meta[name='Netblast-ID-Level-5']").attr("content") != '' ? jQuery("meta[name='Netblast-ID-Level-5']").attr("content") : ''
		];

	jQuery.each(levels,function(index,element){
		jQuery(".li"+element).each(function(index,element){
			jQuery(element).addClass("selected").find("ul:first").css("display","block");			
		});
		jQuery(".li"+element+" a:first").addClass("selected");
	});

	
	//RSS FEED - ADDED 29th of July 2011
	
	//RSS FEED - ADDED 29th of July 2011	
	function rss(element, feed){
    	try {    
        	jQuery.get('/Webdesk/rss?source='+feed+'&encoding=iso', function(d) {
            	var html = '<ul class="link-list">';
	            jQuery(d).find('item').each(function(index,el) {
	                if(index == 5) return false;
	                var $item = jQuery(this);
	                var title = $item.find('title').text();
	                var link = $item.find('link').text();
	                var description = $item.find('description').text();
	                var pubDate = $item.find('pubDate').text();
	                html += "<li><a href=\"" + link + "\" target=\"_blank\">" + title + "<\/a><\/li>"; 
	            });
	            jQuery(element).append(html+"<\/ul>");
	        });
	    } catch(e){
	        //console.log(e);
	    }
	}

	
	jQuery("#column-3 .element, #main .column-4 .box").each(function(index,element){
		if(jQuery(element).attr("rss") &&  jQuery(element).attr("rss") != ""){
			rss(element,jQuery(element).attr("rss"));
		}
	});	
	
	///MAILFILTER - NEW VERSION UPLOADED 5h august 2011	
	jQuery(".nb-mailtofilter").each(function(index,element){
	    try {
	    	var address = "";
	        //Contains an e-mail e.g name@domain.com, encoded into a <span class="nb-mailfilter"></span>
	        if(jQuery(element).find(".nb-mailfilter").length > 0){
	            var mail = jQuery(element).find(".nb-mailfilter");
	            address = jQuery(mail).attr("n")+"@"+jQuery(mail).attr("d")+"."+jQuery(mail).attr("t");
	
	        //Contains something else
	        } else {
	            address = jQuery(element).html();
	        }
	        var replacement = jQuery('<a href="mailto:'+jQuery(element).attr("n")+"@"+jQuery(element).attr("d")+"."+jQuery(element).attr("t")+'">'+address+'</a>');
	        jQuery(element).replaceWith(replacement);
	    } catch(exception){
	    	//console.log(exception);
		}
	});
	

	jQuery(".nb-mailfilter").each(function(index,element){
		try {
   			var address = jQuery(element).attr("n")+"@"+jQuery(element).attr("d")+"."+jQuery(element).attr("t");
    		jQuery(element).replaceWith(address);
    	} catch(exception){
    		//Error
    	}	
	});
	
	var pattern = new RegExp("\\[#([^#]*)#([^#]*)#([^#]*)#\\]");	

	jQuery("*", jQuery("#main")).not("iframe").contents().each( function(index, element) {
        try {
    		if(element.nodeType === 3) {
        		if(pattern.test(element.data)){
        	    	element.data = element.data.replace(/\[#([^#]*)#([^#]*)#([^#]*)#\]/,"$1@$2.$3");            
    	    	}    
	        }
        } catch(exception){
            //Error
        } 
	});


	jQuery("input,img,a,option", jQuery("#main")).each(function(index,element){
        try {
	        switch(this.nodeName.toLowerCase()){
	            case 'input' :
            		if(jQuery(element).attr("value"))
	                	jQuery(element).attr("value", jQuery(element).attr("value").replace(/\[#([^#]*)#([^#]*)#([^#]*)#\]/,"$1@$2.$3"));
            	break;
            	case 'img' :
                    if(jQuery(element).attr("alt"))
	                    jQuery(element).attr("alt", jQuery(element).attr("alt").replace(/\[#([^#]*)#([^#]*)#([^#]*)#\]/,"$1@$2.$3"));
            	break;
            	case 'a' :
                    if(jQuery(element).attr("title"))
	                    jQuery(element).attr("title", jQuery(element).attr("title").replace(/\[#([^#]*)#([^#]*)#([^#]*)#\]/,"$1@$2.$3"));
                    if(jQuery(element).attr("href"))
	                    jQuery(element).attr("href", jQuery(element).attr("href").replace(/\[#([^#]*)#([^#]*)#([^#]*)#\]/,"$1@$2.$3"));            
            	break;
                case 'option' :
                    if(jQuery(element).attr("value"))
	                    jQuery(element).attr("value", jQuery(element).attr("value").replace(/\[#([^#]*)#([^#]*)#([^#]*)#\]/,"$1@$2.$3"));
	            break;
        	}
        } catch(exception){
            //Error
        }
	});
	
	
	//REPLACE VERWEIS WITH ACTIVE LINKS
	jQuery("span.Verweis").each(function(index,element){
    	var original = jQuery(element).html();
	    var replaced = original.replace(/&lt;s.\s([0-9.]+)&gt;/,'<a href="http://intranet1.ekbo.de/ekbo/adr/Browser.zul?ziffer=$1" target="_blank">'+original+'</a>');
    	jQuery(element).html(replaced);
	});
	

	//SIDEBAR ELEMENTS
	jQuery.each(jQuery("meta[name='Netblast-Sidebar-Elements']").attr("content").split(','),function(index,element){
    	//ELEMENT MUST NOT BE ""
		if(element)			
        	jQuery("#"+jQuery.trim(element)).addClass("clearfix").show();
	});
	
	//FONT SIZE
	var fontSizeFromCookie = readCookie("ekbo-font-size");
    if(fontSizeFromCookie){jQuery("body").css("font-size",fontSizeFromCookie);}

 	jQuery("#increase-text-size").unbind("click").click(function(event){
		event.preventDefault();
		jQuery("body").css({"font-size": function(index,value){return parseFloat(value) * 1.2;}});
		createCookie("ekbo-font-size",jQuery("body").css("font-size"));    
	});

 	jQuery("#decrease-text-size").unbind("click").click(function(event){
		event.preventDefault();
		jQuery("body").css({"font-size": function(index,value){return parseFloat(value) * 0.8;}});
		createCookie("ekbo-font-size",jQuery("body").css("font-size"));
	});

	//PORTRAITS IMAGES
	jQuery(".text img:not(.nb_imported_data img, a[target='true'] img)").each(function(index,element){
		if(jQuery(element).attr("alt") != ''){
			var container = jQuery("<div/>").addClass("image-container");
			var description = jQuery("<p>"+jQuery(element).attr("alt")+"</p>").addClass("description");
			jQuery(element).wrap(container).after(description).removeAttr("align");
		}
	});

	jQuery("#portraits .element:first").css("display","block");	
	
	
	
	//ACTIVITIES
	if(jQuery("meta[name='Netblast-Template-Name']").length > 0 && jQuery("meta[name='Netblast-Template-Name']").attr("content")  == "Startseite"){
		
		//ONLY FIVE NEWS
		jQuery("#news .element:gt(4)").detach();
		
		//var organization = jQuery("#activities .container").attr("organization").split(",");

		
		//var parameters = {maxelements:6,display:jQuery("#activities .container").attr("display"),parameters:{archive: jQuery("#activities .container").attr("archive"), organizations:jQuery("#activities .container").attr("organization").split(",")}};
		if(jQuery("#activities .container").length > 0 && jQuery.metadata)
			jQuery("#activities .container").activities(jQuery("#activities .container").metadata());
	}
	
	//ACTIVITIES TABLE
	if(jQuery("#nb-activity-result-table").length>0){
		jQuery("#nb-activity-result-table").activities(jQuery("#nb-activity-result-table").metadata())
		/*;{
			parameters : {
				archive: jQuery("#nb-activity-result-table").attr("data"),
				organizations: jQuery("#nb-activity-result-table").attr("organization").split(","),
				date : {
					from : {
						year : '2010'
					},
					to : {
						year : '2012'
					}
				}
			}
		});*/
	}
	
	//REMOVES EMPTY IMAGES
	jQuery("img[src='../../images/']").detach();
	
	//REMOVES EMPTY IMAGES IN REFERENCED (IE7 FIX)
	jQuery("#referenced").find("img").each(function(index,element){
	    if(jQuery(this).attr("src") == "../../images/"){
        	jQuery(this).detach();
    	}
	});
	
	//REMOVES HEADER FROM PAGE ELEMENTS WHERE FIELD-1 IS SET TO "no-title"
	jQuery(".column-4 .no-title").each(function(index,element){
   		jQuery("h2",element).detach();
	});	
	
	
	
	//PRINT HEADER
	var today = new Date();
	var url = "http://"+location.href.split(/\/+/g)[1];
	
	date = today.getDate() > 9 ? today.getDate() : "0"+today.getDate();
	month = (today.getMonth()+1) > 9 ? (today.getMonth()+1) : "0"+(today.getDate()+1);
	year = today.getFullYear();
	
	jQuery("#print-header .url").text(url);
	jQuery("#print-header .date").text(date+"."+month+"."+year);
			
});
