/**
 * Добавляет функцию в onload()
 * http://xpoint.ru/know-how/JavaScript/PoleznyieFunktsii
 */
function addGlobalOnLoad(f) {
   var root = window.addEventListener || window.attachEvent ? window : document.addEventListener ? document : null
   if (root){
      if(root.addEventListener) root.addEventListener("load", f, false)
      else if(root.attachEvent) root.attachEvent("onload", f)
   } else {
      if(typeof window.onload == 'function') {
         var existing = window.onload
         window.onload = function() {
            existing()
            f()
         }
      } else {
         window.onload = f
      }
   }
}

/**
 * Object cloning
 * from http://www.faqts.com/knowledge_base/view.phtml/aid/6231/fid/144
 */
function clone(obj, deep) {
  var objectClone = new obj.constructor();
  for (var property in obj)
    if (!deep)
      objectClone[property] = obj[property];
    else if (typeof this[property] == 'object')
      objectClone[property] = clone(obj[property], deep);
    else
      objectClone[property] = obj[property];
  return objectClone;
}

inArray = function(array, value){
    var i;
    for (i=0; i < array.length; i++) {
	if (array[i] === value) {
		return true;
	}
    }
    return false;
};
// Sets cookie values. Expiration date is optional
function setCookie(name, value, expire) {
  document.cookie = name + "=" + escape(value)
  + ((expire == null) ? "" : ("; expires=" + expire.toGMTString()));
}
function getCookie(Name) {
  var search = Name + "=";
  if (document.cookie.length > 0) {
    // if there are any cookies
    offset = document.cookie.indexOf(search);
    if (offset != -1) { // if cookie exists
      offset += search.length;
      // set index of beginning of value
      end = document.cookie.indexOf(";", offset)
      // set index of end of cookie value
      if (end == -1)  end = document.cookie.length;
      return unescape(document.cookie.substring(offset, end))
    }else {
      return null;
    }
  }
}
function getBooleanCookie(name, def){
  var c = getCookie(name);
  if((c == null)||(c == '')){
    return def;
  }else{
    if((c == 'true') || (Number(c) > 0)){
      return true;
    }else{
      return false;
    }
  }
}
loadingJSLoaded++;