var Metodus = new Object();

Metodus.parser = function() {
	str = document.URL;	
	x = str.indexOf("?");
	
	if (x != -1) {
		x++;
		y = str.length;
		p = str.substring(x, y);
		
		x = p.indexOf("=");
		a = p.substring(0, x);
		
		x++;
		y = p.length;
		b = p.substring(x, y);
		
		el = document.getElementById(a);
		if (el != null) { el.value = unescape(b); }
	}
}

Metodus.dotter = function() {
	var children = document.getElementsByTagName('*');
	
	for (var i = 0; i < children.length; i++) {
		if (children[i].className.indexOf('dotted') != -1) {
			children[i].onmouseover = function() { 
				var child = document.getElementById(this.id);
				
				anchors = child.getElementsByTagName('a');
			
				for (var j = 0; j < anchors.length; j++) { anchors[j].className = 'dotted'; }				
			}
			children[i].onmouseout = function() { 
				var child = document.getElementById(this.id);
				
				anchors = child.getElementsByTagName('a');
			
				for (var j = 0; j < anchors.length; j++) { anchors[j].className = ''; }				
			}
		}
	}	
	
	var element = document.getElementById('content');

	var parents = new Array('p', 'blockquote', 'ul');

	for (i in parents) {
		var children = element.getElementsByTagName(parents[i]);
	
		for (var j = 0; j < children.length; j++) {
			children[j].id = parents[i] + j;
		
			children[j].onmouseover = function() { 
				var child = document.getElementById(this.id);
				
				anchors = child.getElementsByTagName('a');
			
				for (var k = 0; k < anchors.length; k++) { anchors[k].className = 'dotted'; }				
			}
			children[j].onmouseout = function() { 
				var child = document.getElementById(this.id);
				
				anchors = child.getElementsByTagName('a');
			
				for (var k = 0; k < anchors.length; k++) { anchors[k].className = ''; }				
			}
		}		
	}
}

Metodus.framer = function() {
	if (document.getElementById('content').className.indexOf('sidebar') != -1) { var colArray = new Array('main', 'sidebar'); }
	else { var colArray = new Array('main'); }
	
	for (i in colArray) {	
		var el = document.getElementById(colArray[i]);
                
		if (el != null) {
			var imgs = el.getElementsByTagName('img');
			var imgArray = new Array();
	
			for (var j = 0; j < imgs.length; j++) {
				var img = imgs[j];
				var src = (img.src) ? img.src : "";

				if (src.indexOf('.jpg') != -1) {
					x = src.lastIndexOf('images/');
					y = src.length;
	
					var path = src.substring(0, x);
					var filename = src.substring(x, y);

					img.id = colArray[i] + j;
					if (img.parentNode.tagName == 'TH' || img.parentNode.tagName == 'TD') { // image in table
						img.src = path + 'js/table-img.png?' + j; // opera fix
					}
					else { img.src = path + 'js/' + colArray[i] + '-img.png?' + j; } // opera fix  
					img.style.background = 'url(' + src + ')';			
					imgArray.push(img.id);			
				}
			}
	
			if (navigator.appName.indexOf('Microsoft') != -1 || navigator.appName.indexOf('MSIE') != -1) {
				var arVersion = navigator.appVersion.split("MSIE");
				var version = parseFloat(arVersion[1]);
	
				if ((version >= 5.5) && (document.body.filters)) {					
					for (var i = 0; i < imgArray.length; i++) {				
						if (imgArray[i].indexOf('main') != -1) { var strCSS = "float:left;margin:0 10px 10px 0;"; }
						else { var strCSS = "margin:0 0 10px 0;"; }
						
						var img = document.getElementById(imgArray[i]);
						var imgID = (img.id) ? "id='" + img.id + "' " : "";
						var imgClass = (img.className) ? "class='" + img.className + "' " : "";
						var imgTitle = (img.title) ? "title='" + img.title + "' " : "title='" + img.alt + "' ";
		         			var imgStyle = strCSS + "display:inline-block;" + img.style.cssText;
						if (img.parentElement.href) imgStyle = "cursor: hand;" + imgStyle;
						var strNewHTML = "<span " + imgID + imgClass + imgTitle + " style=\"" + "width:" + img.width + "px; height:" + img.height + "px;" + imgStyle + ";" + "filter:progid:DXImageTransform.Microsoft.AlphaImageLoader" + "(src=\'" + img.src + "\', sizingMethod='scale');\"></span>";
						img.outerHTML = strNewHTML;
					}
				}
			}	
		}	
	}
}

var wiped = new Array();

Metodus.wipe = function(el) { // focus
	x = el.id + "";
	
	if (wiped[x] == null) {
		wiped[x] = el.value + "";
	}
	
	if (el.value == wiped[x]) {	
		el.value = "";
		el.style.color = "#000";
	}
}
Metodus.unwipe = function(el) { // blur
	x = el.id + "";

	if (el.value == "" || el.value == " " || el.value == "\t") {
		el.style.color = "#8C8C8C";
		el.value = wiped[x];
	}
}

Metodus.err = function(el) {
	var pn = el.parentNode;
	var children = pn.getElementsByTagName('*');
	for (var i = 0; i < children.length; i++) {
		if (children[i].className == 'err') { return children[i]; }	
	}
}

Metodus.validate = function(form) {
	var ok = true;
	
	if (form.name == 'contact') {	
		if (form.nombre.value.length == 0) {
			err = Metodus.err(form.nombre);
			err.innerHTML = "Please enter your name";
			err.style.visibility = "visible";
			ok = false;
		}
		else { 
			err = Metodus.err(form.nombre);
			err.style.visibility = "hidden";
		}

		if (form.correo.value.length == 0 || form.correo.value.substring(0, 4) == "eg. " || form.correo.value.indexOf("@") == -1) {
			err = Metodus.err(form.correo);
			err.innerHTML = "Please enter a valid email";
			err.style.visibility = "visible";
			ok = false;
		}
		else { 
			err = Metodus.err(form.correo);
			err.style.visibility = "hidden";
		}

		if (form.mensaje.value.length == 0) {
			err = Metodus.err(form.mensaje);
			err.innerHTML = "Please enter your message";
			err.style.visibility = "visible";
			ok = false;
		}
		else { 
			err = Metodus.err(form.mensaje);
			err.style.visibility = "hidden";
		}
		
		if (!ok) {
			el = document.getElementById('submit');
			err = Metodus.err(el);
			err.innerHTML = "Please correct the errors above";
			err.style.visibility = "visible";
		}
	}
	
	if (form.name == 'empleos') {
		if (form.nombre.value.length == 0) {
			err = Metodus.err(form.nombre);
			err.innerHTML = "<em>Debe inidicar su nombre</em>";
			ok = false;
		}
		else { 
			err = Metodus.err(form.nombre);
			err.innerHTML = "Nombre <em>*</em>";
		}
		
		if (form.correo.value.length == 0 || form.correo.value.substring(0, 4) == "ej. " || form.correo.value.indexOf("@") == -1) {
			err = Metodus.err(form.correo);
			err.innerHTML = "<em>Correo valida requirido</em>";
			ok = false;
		}
		else { 
			err = Metodus.err(form.correo);
			err.innerHTML = "Correo <em>*</em>";
		}
		
		if (form.telefono.value.length == 0 || form.telefono.value.substring(0, 4) == "ej. ") {
			err = Metodus.err(form.telefono);
			err.innerHTML = "<em>Debe indicar su telefono</em>";
			ok = false;
		}
		else { 
			err = Metodus.err(form.telefono);
			err.innerHTML = "Telefono <em>*</em>";
		}
		
		if (form.curriculum.value.length == 0) {
			err = Metodus.err(form.curriculum);
			err.innerHTML = "<em>Curriculum requirido</em>";
			ok = false;
		}
		else { 
			err = Metodus.err(form.curriculum);
			err.innerHTML = "Curriculum <em>*</em>";
		}

		if (!ok) {
			el = document.getElementById('submit');
			err = Metodus.err(el);
			err.innerHTML = "<em>Corrija los errores indicados arriba</em>";
		}
	}

	return ok;	
}

var fimages = new Array();
var fimage; var fcurr; var ftimer; var myOpacity;

Metodus.flash = function(str) {
        if (/Opera/.test(navigator.userAgent)) return; 
        
	fimages = str.split(',');

	if (fimages.length == 1) return;

	fg = document.createElement('img');
	fg.setAttribute('id', 'fg');
	fg.src = 'images/' + fimages[0] + '.jpg';
	
	bg = document.getElementById('flash');
	bg.appendChild(fg);

	myOpacity = new fx.Opacity('fg', { duration: 4000, onComplete: Metodus.fnext }); // init moo fx
        
        fcurr = 1;
        
	fimage = new Image();
        fimage.src = 'images/' + fimages[fcurr] + '.jpg';
                
        Metodus.floader();
}       

Metodus.floader = function() {
	if (fimage.complete) { // image loaded
                el = document.getElementById('flash');
                el.style.background = 'url(' + fimage.src + ') no-repeat';
                myOpacity.custom(1, 0); // fade
        }       
        else { setTimeout('Metodus.floader()', 10); }
}

Metodus.fnext = function() {
        el = document.getElementById('fg'); // move bg to fg
        el.src = fimage.src;

        myOpacity.setOpacity(1);

        if (fcurr == fimages.length - 1) { fcurr = 0; }
        else { fcurr++; }

	fimage = new Image();
        fimage.src = 'images/' + fimages[fcurr] + '.jpg';

        Metodus.floader();
}
