<!-- hide
///////////////////////////////////////////// Search
var tsearch=function(sss,ttt) {
	clearAllTimeouts();
	timeOuts['search'] = setTimeout("dosearch('"+sss+"','"+ttt+"')",1000)
}
var dosearch=function(sss,ttt) {
	if (sss.length>2)
	{
		var dname='main_content';
		document.getElementById(dname).innerHTML='<img id="ajaxloader" src="../library/ajaxloader.gif" alt="loading..." />';
		var act='search';
		new Ajax.Updater(dname,'ajax.asp',{parameters:{act:act,term:sss,h1:ttt},insertion:Insertion.Top,evalScripts:true});
	}
}
////////////////////////////////////////////////////////////////////////////////////////// Jamies JS Pformatter
var pformat=function(sss) {
	if (sss!="") {
		sss=sss.replace(/ /g,'_');
		sss=sss.replace(/__/g,'_');
		sss=sss.replace(/'/g,"");
		sss=sss.replace(/:/g,"");
		sss=sss.replace(/,/g,"");
		sss=sss.replace(/\//g,"");
		sss=sss.replace(/%/g,"");
		sss=sss.replace(/&/g,"");
		sss=sss.replace(/$/g,"");
		sss=sss.replace(/£/g,"");
		sss=sss.replace(/""/g,"");
		sss=sss.replace(/!/g,"");
		sss=sss.replace(/\?/g,"");
		sss=sss.replace(/#/g,"");
		sss=sss.replace(/@/g,"");
		sss=sss.replace(/~/g,"");
		sss=sss.replace(/</g,"");
		sss=sss.replace(/>/g,"");
		sss=sss.replace(/\*/g,"");
		sss=sss.replace(/^/g,"");
		sss=sss.replace(/__/g,"_");
	}
	sss=sss.toLowerCase();
	return sss;
}
///////////////////////////////////////////// Leftnav Slider
var showleft=function(sss,ttt) {
	Effect.Queues.get("lefter").cancel(sss)
	if ($(sss).style.display=='none') {
		Effect.Appear(sss,{ queue:{scope:"lefter"} });
	}
	else {
		console.log(eval(ttt*40))
		$(sss).morph('height:'+eval(ttt*40)+'px;',{ queue:{scope:"lefter"} });
	}
}
var hideleft=function(sss) {
	Effect.Queues.get("lefter").cancel(sss)
	Effect.BlindUp(sss,{queue:{scope:"lefter"}, scaleContent:true, scaleMode:'contents' }); 
}
///////////////////////////////////////////// Bottom Slider
var domorph=function(sss) {
	$(sss).morph('height:120px;'); 
	return false;
}
var unmorph=function(sss) {
	$(sss).morph('height:35px;');
	return false;
}
///////////////////////////////////////////// Timeout Array
var timeOuts=new Array(); 
function clearAllTimeouts(){  
	for(key in timeOuts ){  
		clearTimeout(timeOuts[key]);  
	}  
}
////////////////////////////////////////////////////////////////////////////////////////// Editing Functions
var pos=function(table,list) {
	var thelist=Sortable.sequence(list);
	var fullist=''
	for (x in thelist) {
		if (parseInt(thelist[1,x])==thelist[1,x]) {
			fullist=fullist+thelist[1,x]+'-'
		}
	}
	new Ajax.Request('ajax.asp',{method:'post',parameters:{act:'pos',table:table,ids:fullist}});
}
var heat=function(table,id) {
	document.getElementById('heat'+id).innerHTML='';
	new Ajax.Updater('heat'+id,'ajax.asp',{parameters:{act:'heat',id:id,table:table},insertion:Insertion.Top,evalScripts:true});
}
var activate=function(table,id,val1,val2) {
	document.getElementById('activate'+id).innerHTML='';
	new Ajax.Updater('activate'+id,'ajax.asp',{parameters:{act:'activate',id:id,table:table,val1:val1,val2:val2},insertion:Insertion.Top,evalScripts:true});
}
var del=function(table,id,fid,title,fid2,fid3,fid4,fid5) {
	document.getElementById('msg').innerHTML='';
	new Ajax.Updater('msg','ajax.asp',{parameters:{act:'del',id:id,table:table,fid:fid,title:title,fid2:fid2,fid3:fid3,fid4:fid4,fid5:fid5},insertion:Insertion.Top,evalScripts:true, queue:{position:'end',scope:'doqueue'}});
}
var kill=function(table,id,fid,fid2,fid3,fid4,fid5) {
	new Ajax.Updater('dname','ajax.asp',{parameters:{act:'kill',id:id,table:table,fid:fid,fid2:fid2,fid3:fid3,fid4:fid4,fid5:fid5},insertion:Insertion.Top,evalScripts:true, queue:{position:'end',scope:'doqueue'}});
}
var esave=function(table,id,fid,vid,iid,vtype) {
	clearTimeout(timeOuts['timedsave_'+fid]); 
	timeOuts['timedsave_'+fid] = setTimeout("dosave('"+table+"','"+id+"','"+fid+"','"+vid+"','"+iid+"','"+vtype+"')",1000);
}
var dosave=function(table,id,fid,vid,iid,vtype) {
	document.getElementById(vid).innerHTML='';
	if (document.getElementById(fid)) {
		if (document.getElementById(fid).type=='checkbox') {
			var iname=document.getElementsByName(document.getElementById(fid).name);
			var val=''
			if (iname.length>1) {
				var cb=0;
				val='-';
				fid=document.getElementById(fid).name
				for (cb=0;cb<iname.length;++cb) {
					if (iname[cb].checked) {
						val=val+iname[cb].value+'-'
					}
				}
			} 
			else {
				if (document.getElementById(fid).checked) {
					val=document.getElementById(fid).value
				} else {
					val=0	
				}
			}
		} 
		else if (document.getElementById(fid).type=='radio') {
			var iname=document.getElementsByName(document.getElementById(fid).name);
			var val=''
			if (iname.length>1) {
				var cb=0;
				fid=document.getElementById(fid).name
				for (cb=0;cb<iname.length;++cb) {
					if (iname[cb].checked) {
						val=iname[cb].value
					}
				}
			} 
			else {
				if (document.getElementById(fid).checked) {
					val=document.getElementById(fid).value
				} else {
					val=0	
				}
			}
		} 
		else if (document.getElementById(fid).type=='select-one') {
			var val=document.getElementById(fid).options[document.getElementById(fid).selectedIndex].value;
		} 
		else {
			var val=document.getElementById(fid).value;
		}
	}
	else {
		if (document.getElementById(iid).type=='checkbox') {
			var iname=document.getElementsByName(document.getElementById(iid).name);
			var val=''
			if (iname.length>1) {
				var cb=0;
				val='-';
				iid=document.getElementById(iid).name
				for (cb=0;cb<iname.length;++cb) {
					if (iname[cb].checked) {
						val=val+iname[cb].value+'-'
					}
				}
			} 
			else {
				if (document.getElementById(iid).checked) {
					val=document.getElementById(iid).value
				} else {
					val=0	
				}
			}
		} 
		else if (document.getElementById(iid).type=='radio') {
			var iname=document.getElementsByName(document.getElementById(iid).name);
			var val=''
			if (iname.length>1) {
				var cb=0;
				iid=document.getElementById(iid).name
				for (cb=0;cb<iname.length;++cb) {
					if (iname[cb].checked) {
						val=iname[cb].value
					}
				}
			} 
			else {
				if (document.getElementById(iid).checked) {
					val=document.getElementById(iid).value
				} else {
					val=0	
				}
			}
		} 
		else if (document.getElementById(iid).type=='select-one') {
			var val=document.getElementById(iid).options[document.getElementById(iid).selectedIndex].value;
		} 
		else {
			var val=document.getElementById(iid).value;
		}
	}
	new Ajax.Updater(vid,'ajax.asp',{parameters:{act:'editsave',table:table,id:id,fid:fid,vid:vid,val:val},insertion:Insertion.Top,evalScripts:true, queue:{position:'end',scope:'doqueue'}});
}
////////////////////////////////////////////////////////////////////////////////////////// Interface
var useful=function(act,id) {
	document.getElementById(fid).innerHTML='';
	new Ajax.Updater('use','ajax.asp',{parameters:{act:act,id:id},insertion:Insertion.Top,evalScripts:true, queue:{position:'end',scope:'doqueue'}});
}
var fadeusebox=function() {
	$('useholder').fade();
	new Effect.Opacity('pageholder',{ duration: 0.5, from: 0.3, to: 1 });	
}
var hidemsg=function() {
	$('msgholder').fade();
	if (document.getElementById('useholder').style.display=='none') {
		new Effect.Opacity('pageholder',{ duration: 0.5, from: 0.3, to: 1 });	
	}
}
var fadepage=function() {
	$('pageholder').fade({from: 1, to: 0.3 });
}
var fadetmsg=function() {
	$('tmsg').fade({ duration: 2.0, from: 1, to: 0, delay: 4.0 });
}
var toggleme=function(sss) {
	if ( document.getElementById(sss).style.display != 'none' )	{
		$('msgholder').appear();
	}
	else {
		$('msgholder').fade();
	}
}
var toggleshow=function(sss) {
	Effect.Queues.get("shower").cancel(sss)
	$(sss).appear({queue:{scope:"shower"}});
}
var togglehide=function(sss) {
	Effect.Queues.get("shower").cancel(sss)
	$(sss).fade({queue:{scope:"shower"}});
}
var toggleimg=function(sss,ttt,uuu) {
	if ($(sss).src==ttt) {
		$(sss).src=uuu;
	}
	else {
		$(sss).src=ttt;
	}
}
////////////////////////////////////////////////////////////////////////////////////////// Jump to URL
var jump=function(sss) {
	if (sss != "null") {
		document.location.href = sss;
	}
}
////////////////////////////////////////////////////////////////////////////////////////// Forms
var submitform=function(sss) {
	if (sss!="") {
		document.getElementById(sss).submit();
	}
}
var clearme=function(sss) {
	if (sss.value == sss.defaultValue) {
		sss.value = "";
	}
}
////////////////////////////////////////////////////////////////////////////////////////// Show/Hide Item
var toggleme=function(sss) {
	if ( document.getElementById(sss).style.display != 'none' )	{
		togglehide(sss);
	}
	else {
		toggleshow(sss);
	}
	document.body.style.overflow="auto";
}
////////////////////////////////////////////////////////////////////////////////////////// Bookmark Page
var bookmarksite=function(title,url) {
	/* Bookmark site script- © Dynamic Drive DHTML Code library 
	(www.dynamicdrive.com) This notice MUST stay intact for legal use
	Visit Dynamic Drive at http://www.dynamicdrive.com/ for full source code*/
	if (window.sidebar) // firefox
	{
		window.sidebar.addPanel(title,url,"");
	}
	else if (window.opera && window.print) // opera
	{
		var elem = document.createElement('a');
		elem.setAttribute('href',url);
		elem.setAttribute('title',title);
		elem.setAttribute('rel','sidebar');
		elem.click();
	} 
	else if(document.all)// ie
	{
		window.external.AddFavorite(url, title);
	}
}
////////////////////////////////////////////////////////////////////////////////////////// Cookies
var setco=function(sss) {
	document.cookie += 'setco='+sss+';'
}
var getcookie=function(sss) {
	var results = document.cookie.match ( '(^|;) ?' + sss + '=([^;]*)(;|$)' );
	if (results) {
		return (unescape(results[2]));
	}
	else {
		return null;
	}
}
////////////////////////////////////////////////////////////////////////////////////////// Currency Formatting
var cformat=function(sss) {
	var i = parseFloat(sss);
	if(isNaN(i)) {
		i = 0.00;
	}
	var minus = '';
	if(i < 0) {
		minus = '-';
	}
	i = Math.abs(i);
	i = parseInt((i + .005) * 100);
	i = i / 100;
	s = new String(i);
	if(s.indexOf('.') < 0) {
		s += '.00';
	}
	if(s.indexOf('.') == (s.length - 2)) {
		s += '0';
	}
	s = minus + s;
	return s;
}
///////////////////////////////////////////// get elements by class
/*
	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);
}
//
var mdlencheck = function() {
	var mdlen = document.getElementById("metadesc").value.length;
	var mdcont = document.getElementById("metadesc").value;
	document.getElementById("mdlen").innerHTML = mdlen;
	if (mdlen>254)
	{
		var mdconc = mdcont.substr(0,254);
		document.getElementById("metadesc").value = mdconc;
		document.getElementById("mtlen").innerHTML = '255';
	}
}
//
var mtlencheck = function() {
	var mtlen = document.getElementById("mtitle").value.length;
	var mtcont = document.getElementById("mtitle").value;
	document.getElementById("mtlen").innerHTML = mtlen;
	if (mtlen>254)
	{
		var mtconc = mtcont.substr(0,254);
		document.getElementById("mtitle").value = mtconc;
		document.getElementById("mtlen").innerHTML = '255';
	}
}
//
var keylencheck = function() {
	var keylen = document.getElementById("keywords").value.length;
	var keycont = document.getElementById("keywords").value;
	document.getElementById("keylen").innerHTML = keylen;
	if (keylen>254)
	{
		var keyconc = keycont.substr(0,254);
		document.getElementById("keywords").value = keyconc;
		document.getElementById("mtlen").innerHTML = '255';
	}
};
// Adams Queue
// Cancel any effect on the specified element
Effect.ScopedQueue.prototype.cancel = function(el)
{
	if(typeof(el) != 'object'){
		el = $(el);	
	}
	
	this._each(function(qel){
		if(qel.element == el){
			qel.cancel();
		}
	})
}

// Returns most fitting event eg. onChange, onClick for an element.
var getObserveType = function(el){
	var returnType;
	
	// Switch on element type
	switch (el.type){
		case 'select-one':
			returnType = 'change';
			break;
		
		case 'radio': case 'checkbox':
			returnType = 'click';
			break;
		
		default:
			returnType = 'keyup';
			break;
	}
	
	// Special cases
	if( el.hasClassName('color') )
		returnType = 'change';
		
	return returnType;
}

// end hide -->
