function Functions() {
	var self = this;
	var imageobject;
	var opacity;
	var oid;
	var divid;
	var urlname;
	var also = false;
	var cntval;
	var fobj;
	this.menu = false;
	this.submenu = false;
	this.posmenus = function() {
		var pos = document.getElementById('mainmenu');
		var elms = pos.getElementsByTagName('a');
		for (i = 0; i<elms.length;i++) {
			if (elms[i].id && elms[i].id.toLowerCase() == 'blog') {
				elms[i].removeAttribute('onclick');
				elms[i].setAttribute('href','http://noindiano.blogspot.com');
				elms[i].setAttribute('target','_blank');
			}
			if (i == 0) {
				var s = elms[i].id;
				if (document.getElementById('sub-'+s)) {
					var selms = document.getElementById('sub-'+s).getElementsByTagName('a');
					setTimeout("func.activatesub('"+s+"')",1000);
					setTimeout("func.clicksub('"+selms[0].id+"')",2000);
				}
				else { setTimeout("func.activatesub('"+s+"')",100); }
			}
			if (document.getElementById('sub-'+elms[i].getAttribute('id'))) {
				document.getElementById('sub-'+elms[i].getAttribute('id')).style.top = pos.offsetTop+'px';
			}
		}
	}
	this.clicksub = function(oid) {
		var elms = document.getElementById('sub-'+self.submenu).getElementsByTagName('a');
		for (i = 0;i<elms.length;i++) {
			elms[i].className = '';
		}
		document.getElementById(oid).className = 'magenta';
		document.getElementById('container').innerHTML = '';
		self.writeindiv('container','index.php?mod=categories&name='+oid);
	}
	this.activatesub = function(oid) {
		var issub = self.deactivatesub(oid);
		if (issub && document.getElementById('sub-'+oid)) {
			setTimeout("func.activatesub('"+oid+"')",1000);
			return false;
		}
		document.getElementById(oid).className = 'magenta';
		self.menu = oid;
		var mainmenu = document.getElementById('mainmenu');
		if (document.getElementById('sub-'+oid) && (!self.submenu || self.submenu != oid)) {
			self.submenu = oid;
			efx.activatesub(oid);
		}
		else {
			document.getElementById('container').innerHTML = '';
			self.writeindiv('container','index.php?mod=categories&name='+oid);
		}
	}
	this.deactivatesub = function(oid) {
		var mainmenu = document.getElementById('mainmenu');
		if (self.menu && self.menu != oid) {
			document.getElementById(self.menu).className = '';
		}
		if (self.submenu && self.submenu != oid) {
		var elms = document.getElementById('sub-'+self.submenu).getElementsByTagName('a');
			for (i = 0;i<elms.length;i++) {
				elms[i].className = '';
			}
			efx.deactivatesub(self.submenu);
			self.submenu = false;
			self.menu = false;
			return true;
		}
		return false;
	}
	this.changeopacity = function(imageobject, opacity) {
		if (imageobject) {
			if (navigator.appName.indexOf("Netscape")!=-1&&parseInt(navigator.appVersion)>=5) {
				imageobject.style.MozOpacity=opacity/100;
			}
			else if (navigator.appName.indexOf("Microsoft")!=-1&&parseInt(navigator.appVersion)>=4) {
				imageobject.style.filter = 'alpha(opacity='+opacity+')';
			}
			imageobject.style.opacity = opacity/100;
		}
	}
	this.writeindiv = function(divid,urlname,also) {
		var xmlhttp=CreateHttpRequestObject();
		var url = urlname;
		xmlhttp.onreadystatechange=function() {
			if (xmlhttp.readyState==4) {
				var content = xmlhttp.responseText;
				if(content) {
					if (also == 'also') {
						document.getElementById(divid).innerHTML += content;
					}
					else {
						document.getElementById(divid).innerHTML = content;
					}
				}
			}
		}
		xmlhttp.open('GET', url, true);
		xmlhttp.send(null);
	}
	this.cntcheck = function(cntval,fobj) {
		if (fobj.value == '') { fobj.value = cntval; }
	}
	this.cntclick = function(cntval,fobj) {
		if (fobj.value == cntval) { fobj.value = ''; }
	}
	this.sendmail = function() {
		cmessage = document.getElementById('message').value;
		cmail = document.getElementById('mail').value;
		cphone = document.getElementById('phone').value;
		cname = document.getElementById('firstname').value;
		ccompany = document.getElementById('companyname').value;
		var status = false;
		var contentType = "application/x-www-form-urlencoded; charset=UTF-8"
		var url = 'index.php?mod=categories&name=contacts';
		var query = 'name='+cname+'&company=' + ccompany+'&phone=' + cphone+'&email=' + cmail+'&message=' + cmessage;
		if (cmessage.length > 0) {
			if (window.XMLHttpRequest) {
				request = new XMLHttpRequest();
				request.open("post", url, true);
				request.setRequestHeader("Content-Type", contentType);
				request.send(query);
				status = true;
				// ActiveX XMLHttpRequest object
			} 
			else if (window.ActiveXObject) {
				request = new ActiveXObject("Microsoft.XMLHTTP");
				if (request) {
					request.open("post", url, true);
					request.setRequestHeader("Content-Type", contentType);
					request.send(query);
					status = true;
				}
			}
		}
		var elm = document.getElementById('cntform').getElementsByTagName('a')[0];
		document.getElementById('cntform').removeChild(elm);
		document.getElementById('cntform').innerHTML += '<a>Thank you</a>';
		return;
	}
	this.findPosX = function(fobj) {
		var curleft = 0;
		if(fobj.offsetParent)
		while(1) {
			curleft += fobj.offsetLeft;
			if(!fobj.offsetParent)
			break;
			fobj = fobj.offsetParent;
		}
		else if(fobj.x)
		curleft += fobj.x;
		return curleft;
	}
	this.findPosY = function(fobj) {
		var curtop = 0;
		if(fobj.offsetParent)
		while(1) {
			  curtop += fobj.offsetTop;
			  if(!fobj.offsetParent)
			  break;
			  fobj = fobj.offsetParent;
		}
		else if(fobj.y)
		curtop += fobj.y;
		return curtop;
	}
	var gid;
	this.changegal = function(gid) {
		document.getElementById('images').style.left = 0;
		document.getElementById('images').innerHTML = '';
		document.getElementById('bigimage').src='index.php?mod=images&img=1&gid='+gid;
		self.writeindiv('images','index.php?mod=images&gid='+gid);
	}
}
function CreateHttpRequestObject()
{
	var http_request=false;

	if (window.XMLHttpRequest) { // Mozilla, Safari,...
		http_request = new XMLHttpRequest();
		if (http_request.overrideMimeType) http_request.overrideMimeType('text/xml');
	} else if (window.ActiveXObject) { // IE
		try {
			http_request = new ActiveXObject("Msxml2.XMLHTTP");
			}			
		catch (e) {
		try {
			http_request = new ActiveXObject("Microsoft.XMLHTTP");
			}
		catch (e) {}
		}
	}

	return http_request;
}
var func = new Functions();
