
	 //////////
	// MISC //
   //////////

	function show (id) {
		var elem = document.getElementById(id);
		
		if (elem)
			elem.style.display = "block";	
	}
	
	function hide (id) {
		var elem = document.getElementById(id);
		
		if (elem)
			elem.style.display = "none";
	}
	
	function confirmation ( msg, redirect )
	{
		if ( confirm( msg ) )
		{
			window.location = redirect;
		}	
	}
	
	function check ( name, checkit )
	{
		var form = document.forms[0];
		var checkit = ( checkit === false ) ? false : true;
		
		var i=0;
		while ( form[name][i] )
		{
			var elem = form[name][i];
			
			if ( elem.type == 'checkbox' && elem.checked != checkit )
				elem.checked = checkit;
				
			i++;
		}
		
	}
	
	function setActiveStyleSheet(title) {
		var i, a, main;
		for (i=0; (a = document.getElementsByTagName("link")[i]); i++)
		{
			if (a.getAttribute("rel").indexOf("style") != -1 && a.getAttribute("title"))
			{
				a.disabled = true;
				
				if (a.getAttribute("title") == title)
				{
					a.disabled = false;
				}
			}
		}
	}
	
	function getActiveStyleSheet() {
		
		var i, a;
		
		for (i=0; (a = document.getElementsByTagName("link")[i]); i++)
		{
			if (a.getAttribute("rel").indexOf("style") != -1 && a.getAttribute("title") && !a.disabled)
			{
				return a.getAttribute("title");
			}
		}
		
		return null;
	}
	
	function getPreferredStyleSheet() {
		
		var i, a;
		
		for (i=0; (a = document.getElementsByTagName("link")[i]); i++)
		{
			if( a.getAttribute("rel").indexOf("style") != -1 && a.getAttribute("rel").indexOf("alt") == -1 && a.getAttribute("title") )
			{
				return a.getAttribute("title");
			}
		}
		
		return null;
	}
	
	 /////////////
	// COOKIES //
   /////////////
  
    function get_cookie (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 set_cookie (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 unset_cookie(name) {
		set_cookie(name,"",-1);
	}
	
	 /////////////
	// SCALING //
   /////////////
	
	function fitWidth ( className, scaleUp )
	{
		var parents = getElementsByClassName(className);
		var scaleUp = ( scaleUp == true );
		var tags = [ 'img', 'div', 'object', 'embed' ];
		
		if ( parents )
		{
			// loop through parents
			for (var i=0; i<parents.length; i++)
			{
				var parent = parents[i];
				
				parent.style.overflow = 'hidden';
				
				// loop through tags
				for ( var x in tags )
				{
					var children = parent.getElementsByTagName( tags[x] );
										
					// loop through children
					for (var n = 0; n < children.length; n++)
					{
						var child = children[n];
						
						var scaleX = ( parent.offsetWidth / child.offsetWidth );
						
						if ( scaleUp || !scaleUp && scaleX < 1  )
							child.width = child.offsetWidth * scaleX;
						
					}
					
				}
			}
		}
		
	}
	
	// searches for all images in an element and wraps an anchor around it with class="lightbox"
	function to_lightbox (id)
	{
		var elem = document.getElementById(id);
		
		if (elem)
		{
			// get all images in element
			var imgs = elem.getElementsByTagName('img');
			
			for (var i=0; i<imgs.length; i++)
			{
				var img    = imgs[i];
				var parent = img.parentNode;
				
				// is the image listed under the files directory?
				if ( img.src.indexOf('madshrimps.be/files/')  != -1 )
				{
					if (parent)
					{
						var a;
						
						// parent is anchor
						if (parent.nodeName === 'A' )
						{
							a = parent;
						}
						
						// parent is not anchor
						else if (parent.nodeName !== 'A' )
						{	
							var a = document.createElement('a');
							
							// set anchor as parent
							parent.replaceChild(a, img);
							a.appendChild(img);
							
							// parse href
							if ( img.src.indexOf('thumbs/th_') != -1 )
							{	
								href = img.src.replace('thumbs/th_', '');
							}
							
							else if ( img.src.indexOf('thumbnails/TN_') != -1 )
							{
								href = img.src.replace('thumbnails/TN_', '');
							}
							
							else
							{
								href = img.src;	
							}
							
							a.setAttribute('href', href );
							
						}
						
						if ( a.href.indexOf('madshrimps.be/files/')  != -1 )
						{
							a.setAttribute('rel', 'group1');
							a.setAttribute('class', 'lightbox');
						}
					
					}
					
				}
			
			}
		}
	}
	
	/*
	Developed by Robert Nyman, http://www.robertnyman.com
	Code/licensing: http://code.google.com/p/getelementsbyclassname/
*/	
var getElementsByClassName = function (className, tag, elm){
	if (document.getElementsByClassName) {
		getElementsByClassName = function (className, tag, elm) {
			elm = elm || document;
			var elements = elm.getElementsByClassName(className),
				nodeName = (tag)? new RegExp("\\b" + tag + "\\b", "i") : null,
				returnElements = [],
				current;
			for(var i=0, il=elements.length; i<il; i+=1){
				current = elements[i];
				if(!nodeName || nodeName.test(current.nodeName)) {
					returnElements.push(current);
				}
			}
			return returnElements;
		};
	}
	else if (document.evaluate) {
		getElementsByClassName = function (className, tag, elm) {
			tag = tag || "*";
			elm = elm || document;
			var classes = className.split(" "),
				classesToCheck = "",
				xhtmlNamespace = "http://www.w3.org/1999/xhtml",
				namespaceResolver = (document.documentElement.namespaceURI === xhtmlNamespace)? xhtmlNamespace : null,
				returnElements = [],
				elements,
				node;
			for(var j=0, jl=classes.length; j<jl; j+=1){
				classesToCheck += "[contains(concat(' ', @class, ' '), ' " + classes[j] + " ')]";
			}
			try	{
				elements = document.evaluate(".//" + tag + classesToCheck, elm, namespaceResolver, 0, null);
			}
			catch (e) {
				elements = document.evaluate(".//" + tag + classesToCheck, elm, null, 0, null);
			}
			while ((node = elements.iterateNext())) {
				returnElements.push(node);
			}
			return returnElements;
		};
	}
	else {
		getElementsByClassName = function (className, tag, elm) {
			tag = tag || "*";
			elm = elm || document;
			var classes = className.split(" "),
				classesToCheck = [],
				elements = (tag === "*" && elm.all)? elm.all : elm.getElementsByTagName(tag),
				current,
				returnElements = [],
				match;
			for(var k=0, kl=classes.length; k<kl; k+=1){
				classesToCheck.push(new RegExp("(^|\\s)" + classes[k] + "(\\s|$)"));
			}
			for(var l=0, ll=elements.length; l<ll; l+=1){
				current = elements[l];
				match = false;
				for(var m=0, ml=classesToCheck.length; m<ml; m+=1){
					match = classesToCheck[m].test(current.className);
					if (!match) {
						break;
					}
				}
				if (match) {
					returnElements.push(current);
				}
			}
			return returnElements;
		};
	}
	return getElementsByClassName(className, tag, elm);
};
