function init(){
	cameoRollover();
	}

function getElementsByClass(searchClass,node,tag) {
	var classElements = new Array();
	if ( node == null )
		node = document;
	if ( tag == null )
		tag = '*';
	var els = node.getElementsByTagName(tag);
	var elsLen = els.length;
	var pattern = new RegExp("(^|\\s)"+searchClass+"(\\s|$)");
	for (i = 0, j = 0; i < elsLen; i++) {
		if ( pattern.test(els[i].className) ) {
			classElements[j] = els[i];
			j++;
		}
	}
	return classElements;
	}

function submitForm(formId, outputId){
	$(formId).send({update: outputId}); 
	}


/*.................................... Filter box functions ......................................*/

function filter(){
	document.onkeyup=function(){
		executeFilter();
		}
	document.filter_form.onsubmit=function(){return false;}
	}
	
function executeFilter(){
	var searchString = document.filter_form.filter_input.value;
	var searchString = searchString.toLowerCase();
	var myEls = getElementsByClass('filter_subject');
	if(searchString == ""){
		for ( i=0;i<myEls.length;i++ ) {
			var id = myEls[i].id;
			document.getElementById(id).style.display='block';
			}
		}
	else{
		for ( i=0;i<myEls.length;i++ ) {
			var id = myEls[i].id;
			var tagElementId = 'tags_'+id;
			var elementString = document.getElementById(tagElementId).innerHTML;
			if(elementString.match(searchString)){
				$(id).style.display='block';
				}
			else {
				$(id).style.display='none';
				}
			}
		}
	}

/*................................... Cameo hover functions ......................................*/

function over(id){
	var hoverId = id+'_hover';
	$(id).onmouseover=function(){
		$(hoverId).effect('opacity', {duration: 300, transition: Fx.Transitions.linear, wait: false}).start(0);
		}
	}
function out(id){
	var hoverId = id+'_hover';
	$(id).onmouseout=function(){
		$(hoverId).effect('opacity', {duration: 3000, transition: Fx.Transitions.linear, wait: false}).start(1);
		}
	}

function cameoRollover(){
	var myEls = getElementsByClass('mousecatcher');
	for ( i=0;i<myEls.length;i++ ) {
		var id = myEls[i].id;
		over(id);
		out(id);
		}
	}

/*................................... Object list functions ......................................*/

function cameosMoveLeft(type){
	var rawpos = $(type).offsetLeft;
	var wrapSize = $(type+'_bar').getSize();
	var wrapWidth = wrapSize['size']['x'];
	var objectsSize = $(type).getSize();
	var objectsWidth = objectsSize['size']['x'];		
	var newpos = (rawpos + (wrapWidth / 2));
	if(rawpos<0){
		if(newpos>((rawpos+objectsWidth)-wrapWidth)){ var pos=0; } else{ var pos=newpos; }
		$(type).effect('left', {duration: 2000, transition: Fx.Transitions.Quint.easeOut}).start(pos);	
		}
	else{
		return;
		}
	}
function cameosMoveRight(type){
	var rawpos = $(type).offsetLeft;
	var wrapSize = $(type+'_bar').getSize();
	var wrapWidth = wrapSize['size']['x'];
	var objectsSize = $(type).getSize();
	var objectsWidth = objectsSize['size']['x'];	
	var newpos = (rawpos - (wrapWidth / 2));		
	if((rawpos+objectsWidth)<(wrapWidth)){
		return;
		}
	else{
		if(newpos>((rawpos+objectsWidth)-wrapWidth)){ var pos=(objectsWidth-wrapWidth)*(-1)-20; } else{ var pos=newpos; }
		$(type).effect('left', {duration: 2000, transition: Fx.Transitions.Quint.easeOut}).start(pos);
		}
	}
	
/* jobforj78 */
