/* routines.js */

addLoadEvent(fontSizeDetect);
addLoadEvent(contrastDetect);

function addLoadEvent(func) {
  var oldonload = window.onload;
  if (typeof window.onload != 'function') {
    window.onload = func;
  } else {
    window.onload = function() {
      if (oldonload) {
        oldonload();
      }
      func();
    }
  }
}

// http://www.scottandrew.com/weblog/articles/cbs-events

function addEvent(obj, evType, fn){ 
 if (obj.addEventListener){ 
   obj.addEventListener(evType, fn, false); 
   return true; 
 } else if (obj.attachEvent){ 
   var r = obj.attachEvent("on"+evType, fn); 
   return r; 
 } else { 
   return false; 
 } 
}

function removeEvent(obj, evType, fn, useCapture){
  if (obj.removeEventListener){
    obj.removeEventListener(evType, fn, useCapture);
    return true;
  } else if (obj.detachEvent){
    var r = obj.detachEvent("on"+evType, fn);
    return r;
  } else {
    return false;
  }
}

window.Xpos = 0;
window.Ypos = 0;

function mouseXY(evt) {
if (evt.pageX) window.Xpos = evt.pageX; window.Ypos = evt.pageY;
if (evt.clientX) {
   window.Xpos = evt.clientX + (document.documentElement.scrollLeft ?
   document.documentElement.scrollLeft :
   document.body.scrollLeft);
   window.Ypos =  evt.clientY + (document.documentElement.scrollTop ?
   document.documentElement.scrollTop :
   document.body.scrollTop);
 }
}

function _id(id) {
	if (!document.getElementById) return;
	var obj = document.getElementById(id);
return obj;
}

function _tag(name,id,cls) {
	if (!document.getElementsByTagName) return;
	var obj = new Array();
	if (typeof(id) != 'undefined' && id !=0) {
	var scope = _id(id);
		if (typeof(cls) != 'undefined') {
			var j = 0;
			var allobj = scope.getElementsByTagName(name);
			for (var i=0; i < allobj.length; i++) {
				if (allobj[i].className == cls) {
					obj[j] = allobj[i];
					j++;
				}
			}
		}
		else {
			obj = scope.getElementsByTagName(name);
		}
	}
	else {
		if (typeof(cls) != 'undefined') {
			var j = 0;
			var allobj = document.getElementsByTagName(name);
			for (var i=0; i < allobj.length; i++) {
				if (allobj[i].className == cls) {
					obj[j] = allobj[i];
					j++;
				}
			}
		}
		else {
			obj = document.getElementsByTagName(name);
		}	
	}
	return obj;
}

// Thanks! http://www.sitepoint.com/article/standards-compliant-world	
function externalLinks(clss) {
 if (!document.getElementsByTagName) return;
 
 var parentobj = typeof(clss) != 'undefined' ? clss : 0; 
 
 var anchors = _tag('a',parentobj,'ext');
 for (var i=0; i < anchors.length; i++) {
   if (anchors[i].getAttribute('href')) {
     anchors[i].target = '_blank'; }
 }
}

/**
 * Cookies script found at:
 *   http://www.echoecho.com/jscookies02.htm
 */
function getCookie(NameOfCookie)
{ if (document.cookie.length > 0)
{ begin = document.cookie.indexOf(NameOfCookie+"=");
if (begin != -1)
{ begin += NameOfCookie.length+1;
end = document.cookie.indexOf(";", begin);
if (end == -1) end = document.cookie.length;
return unescape(document.cookie.substring(begin, end)); }
}
return null;
}

function setCookie(NameOfCookie, value, expiredays)
{ var ExpireDate = new Date ();
ExpireDate.setTime(ExpireDate.getTime() + (expiredays * 24 * 3600 * 1000));
document.cookie = NameOfCookie + "=" + escape(value) +
((expiredays == null) ? "" : "; expires=" + ExpireDate.toGMTString());
}

function delCookie (NameOfCookie)
{ if (getCookie(NameOfCookie)) {
document.cookie = NameOfCookie + "=" +
"; expires=Thu, 01-Jan-70 00:00:01 GMT";
}
}

function fontSizeDetect() {
  if (getCookie('nagybetu')) {
    if (document.getElementById) {
		if (document.getElementById("top").style.fontSize != "15px") {
			document.getElementById("top").style.fontSize = "15px";
			document.getElementById("sr").src = "img/normalsize.gif";
			document.getElementById("sr").title = "Normál betűméret";
			}
  }
  }
}

function fontSizeAdjust() {
  
	if (document.getElementById) {
		if (document.getElementById("top").style.fontSize != "15px") {
		document.getElementById("top").style.fontSize = "15px";
		document.getElementById("sr").src = "img/normalsize.gif";
		document.getElementById("sr").title = "Normál betűméret";
		
		setCookie('nagybetu','120','1');
		}
		else {
		document.getElementById("top").style.fontSize = "13px";
		document.getElementById("sr").src = "img/fontsize.gif";
		document.getElementById("sr").title = "Betűméret növelése";
		
		delCookie('nagybetu');
		
		
		}
	}
}

function contrastDetect() {
  if (getCookie('kontraszt')) {
    if (document.getElementById) {
        black = window.opera ? '#000000' : 'black';
		if (document.getElementById('top').style.color != black ) {
			document.getElementById("top").style.color = black;
			// document.getElementById("sr").src = "img/normalsize.gif";
			// document.getElementById("sr").title = "Normál betűméret";
			}
  }
  }
}

function contrastAdjust() {
  
	if (document.getElementById) {
            black = window.opera ? '#000000' : 'black';
		if (document.getElementById("top").style.color != black) {
		document.getElementById("top").style.color = black;
		// document.getElementById("sr").src = "img/normalsize.gif";
		// document.getElementById("sr").title = "Normál betűméret";
		
		setCookie('kontraszt','120','1');
		}
		else {
		document.getElementById("top").style.color = "#666666";
		// document.getElementById("sr").src = "img/fontsize.gif";
		// document.getElementById("sr").title = "Betűméret növelése";
		
		delCookie('kontraszt');
		
		
		}
	}
}

function showhide (which) {
	w = document.getElementById(which);
	/* b = document.getElementById(caller); */ 
	if (w.className =='menuitem') {
		w.className = 'fixedmenuitem';
	}
	else {
		w.className = 'menuitem';
	}
}

function toggle(obj) {
  var o = _id(obj);
  o.style.display = o.style.display != 'block' ? 'block' : 'none';
}

function showLinkToSend() {

  var oo = _id('ctrlwindow');
    var y = window.Ypos;
    var x = window.Xpos;
    // alert(y);
  toggle('ctrlwindow');
    oo.style.top = y + 5 + 'px';
    oo.style.left = x + 10 + 'px';
  }

function showhideBox (box, caller) {
	bb = document.getElementById(box);
	cc = document.getElementById(caller);
	
	if (bb.style.display != 'block') {
	bb.style.display = 'block'
	cc.style.display = 'none'
	}
	else {
	bb.style.display = 'none'
	cc.style.display = 'block'
	}
}

/***********************************************
* Textarea Maxlength script- Dynamic Drive (www.dynamicdrive.com)
* This notice must stay intact for legal use.
* Visit http://www.dynamicdrive.com/ for full source code
***********************************************/

function ismaxlength(obj){
var mlength=obj.getAttribute? parseInt(obj.getAttribute("maxlength")) : ""
if (obj.getAttribute && obj.value.length>mlength) {
obj.value=obj.value.substring(0,mlength); 
alert('A hozzászólás hossza legfeljebb 4000 karakter lehet.');
}
}

function checkLength(obj,len){
var mlength=len;
if (obj.getAttribute && obj.value.length>mlength) {
obj.value=obj.value.substring(0,mlength); 
alert('A hozzászólás hossza legfeljebb 4000 karakter lehet.');
}
}