/*------------------------------------------------------*/
/*                 General functions				    */
/*------------------------------------------------------*/

function general_AddEvent(object, eventName, fn) {
	if (document.addEventListener) object.addEventListener(eventName, fn, false);
	else object.attachEvent('on' + eventName, fn); 
}

function general_GetWindowHeight() {
	if (navigator.appName.indexOf("Microsoft")!=-1) {
		return document.body.offsetHeight;
	} else {
		return window.innerHeight;
	}
}

function general_GetWindowWidth() {
	if (navigator.appName.indexOf("Microsoft")!=-1) {
		return document.body.offsetWidth;
	} else {
		return window.innerWidth;
	}
}

var datCDate = new Date();
datCDate.setMonth(datCDate.getMonth()+2);

function setCookie(name, value, expires, path, domain, secure) {
  var curCookie = name + "=" + escape(value) +
      ((expires) ? "; expires=" + expires.toGMTString() : "") +
      ((path) ? "; path=" + path : "") +
      ((domain) ? "; domain=" + domain : "") +
      ((secure) ? "; secure" : "");
  document.cookie = curCookie;
}

function getCookie(name) {
  var dc = document.cookie;
  var prefix = name + "=";
  var begin = dc.indexOf("; " + prefix);
  if (begin == -1) {
    begin = dc.indexOf(prefix);
    if (begin != 0) return null;
  } else
    begin += 2;
  var end = document.cookie.indexOf(";", begin);
  if (end == -1)
    end = dc.length;
  return unescape(dc.substring(begin + prefix.length, end));
}

function AddTagToSelection(tag,id)
{
	var str = document.selection.createRange().text;
	//document.getElementById(id).focus();
	var sel = document.selection.createRange();
	sel.text = "<" + tag + ">" + str + "</" + tag + ">";
}

String.prototype.trim = function() { return this.replace(/^\s+|\s+$/, ''); };

function general_Highlight(v) {
	d = document.getElementById('divContents');
	if(d) {
		s = v.split(' ');
		for(i=0; i<s.length; i++) {
			s[i] = s[i].replace(/_/gi, ' ');
			var r = new RegExp('\\b' + s[i] + '\\b','gi');
			d.innerHTML = d.innerHTML.replace(r, '<span class=searchhighlight>' + s[i] + '</span>');
		}
	}
}

var constAttributeType_Number = 0;
var constAttributeType_String = 1;
var constAttributeType_Boolean = 2;

function general_GetAttribute(object, attributeName, attributeType, defaultValue) {
	value = object.getAttribute(attributeName);
	if(value == null) value = defaultValue;

	if(attributeType == constAttributeType_Number) {
		value = value + '';
		if(value.match(/^(-)?(\d*)(\.?)(\d*)$/) == 0) value = defaultValue;
		value = value * 1.0;
	} else if (attributeType == constAttributeType_Boolean) {
		if((value + '').toLowerCase() == 'true')
			value = true;
		else
			value = false;
	}
	
	return value;
}

function general_GetMSIEVersion() {
	msv = 0;
	if(navigator.appVersion.indexOf('MSIE') > -1) {
		msv = navigator.appVersion.substr(navigator.appVersion.indexOf('MSIE')+5,10);
		msv = msv.substr(0, msv.indexOf(';'));
		msv = msv * 1;
	}
	return msv;
}




