/* begin Page */
if (window.addEvent) window.addEvent('domready', function() { });

var artEventHelper = {
    'bind': function(obj, evt, fn) {
        if (obj.addEventListener)
            obj.addEventListener(evt, fn, false);
        else if (obj.attachEvent)
            obj.attachEvent('on' + evt, fn);
        else
            obj['on' + evt] = fn;
    }
};

var artUserAgent = navigator.userAgent.toLowerCase();

var artBrowser = {
    version: (artUserAgent.match(/.+(?:rv|it|ra|ie)[\/: ]([\d.]+)/) || [])[1],
    safari: /webkit/.test(artUserAgent) && !/chrome/.test(artUserAgent),
    chrome: /chrome/.test(artUserAgent),
    opera: /opera/.test(artUserAgent),
    msie: /msie/.test(artUserAgent) && !/opera/.test(artUserAgent),
    mozilla: /mozilla/.test(artUserAgent) && !/(compatible|webkit)/.test(artUserAgent)
};

artCssHelper = function() {
    var is = function(t) { return (artUserAgent.indexOf(t) != -1) };
    var el = document.getElementsByTagName('html')[0];
    var val = [(!(/opera|webtv/i.test(artUserAgent)) && /msie (\d)/.test(artUserAgent)) ? ('ie ie' + RegExp.$1)
    : is('firefox/2') ? 'gecko firefox2'
    : is('firefox/3') ? 'gecko firefox3'
    : is('gecko/') ? 'gecko'
    : is('chrome/') ? 'chrome'
    : is('opera/9') ? 'opera opera9' : /opera (\d)/.test(artUserAgent) ? 'opera opera' + RegExp.$1
    : is('konqueror') ? 'konqueror'
    : is('applewebkit/') ? 'webkit safari'
    : is('mozilla/') ? 'gecko' : '',
    (is('x11') || is('linux')) ? ' linux'
    : is('mac') ? ' mac'
    : is('win') ? ' win' : ''
    ].join(' ');
    if (!el.className) {
        el.className = val;
    }
    else {
        var newCl = el.className;
        newCl += (' ' + val);
        el.className = newCl;
    }
} ();

(function() {
    // fix ie blinking
    var m = document.uniqueID && document.compatMode && !window.XMLHttpRequest && document.execCommand;
    try { if (!!m) { m('BackgroundImageCache', false, true); } }
    catch (oh) { };
})();

var artLoadEvent = (function() {
    var list = [];
    var done = false;
    var ready = function() {
        if (done) return;
        done = true;
        for (var i = 0; i < list.length; i++)
        list[i]();
    };
    if (document.addEventListener && !artBrowser.opera)
        document.addEventListener('DOMContentLoaded', ready, false);
    if (artBrowser.msie && window == top) {
        (function() {
            try {
                document.documentElement.doScroll('left');
            }
            catch (e) {
                setTimeout(arguments.callee, 10);
                return;
            }
            ready();
        })();
    }
    if (artBrowser.opera) {
        document.addEventListener('DOMContentLoaded', function() {
            for (var i = 0; i < document.styleSheets.length; i++) {
                if (document.styleSheets[i].disabled) {
                    setTimeout(arguments.callee, 10);
                    return;
                }
            }
            ready();
        }, false);
    }
    if (artBrowser.safari || artBrowser.chrome) {
        var numStyles;
        (function() {
            if (document.readyState != 'loaded' && document.readyState != 'complete') {
                setTimeout(arguments.callee, 10);
                return;
            }
            if ('undefined' == typeof numStyles) {
                numStyles = document.getElementsByTagName('style').length;
                var links = document.getElementsByTagName('link');
                for (var i = 0; i < links.length; i++) {
                    numStyles += (links[i].getAttribute('rel') == 'stylesheet') ? 1 : 0;
                }
                if (document.styleSheets.length != numStyles) {
                    setTimeout(arguments.callee, 0);
                    return;
                }
            }
            ready();
        })();
    }
    if (!(artBrowser.msie && window != top)) { // required for Blogger Page Elements in IE, #154540
        artEventHelper.bind(window, 'load', ready);
    }
    return ({
        add: function(f) {
            list.push(f);
        }
    })
})();

function artGetElementsByClassName(clsName, parentEle, tagName) {
    var elements = null;
    var found = [];
    var s = String.fromCharCode(92);
    var re = new RegExp('(?:^|' + s + 's+)' + clsName + '(?:$|' + s + 's+)');
    if (!parentEle) parentEle = document;
    if (!tagName) tagName = '*';
    elements = parentEle.getElementsByTagName(tagName);
    if (elements) {
        for (var i = 0; i < elements.length; ++i) {
            if (elements[i].className.search(re) != -1) {
                found[found.length] = elements[i];
            }
        }
    }
    return found;
}
/* end Page */

/* begin VMenu */
function artAddVMenuSeparators() {
    var create_VSeparator = function(sub, first) {
        var cls = 'art-v' + (sub ? "sub" : "") + 'menu-separator';
        var li = document.createElement('li');
        li.className = (first ? (cls + " " + cls + " art-vmenu-separator-first") : cls);
        var span = document.createElement('span');
        span.className = cls+'-span';
        li.appendChild(span);
        return li;
    };
    var menus = artGetElementsByClassName("art-vmenublock", document, "div");
    for (var k = 0; k < menus.length; k++) {
        var uls = menus[k].getElementsByTagName("ul");
        for (var i = 0; i < uls.length; i++) {
            var ul = uls[i];
            var childs = ul.childNodes;
            var listItems = [];
            for (var y = 0; y < childs.length; y++) {
                var el = childs[y];
                if (String(el.tagName).toLowerCase() == "li") listItems.push(el);
            }
            for (var j = 0; j < listItems.length; j++) {
                var item = listItems[j];
                if ((item.parentNode.getElementsByTagName("li")[0] == item) && (item.parentNode != uls[0]))
                    item.parentNode.insertBefore(create_VSeparator(item.parentNode.parentNode.parentNode != uls[0], true), item);
                if (j < listItems.length - 1)
                    item.parentNode.insertBefore(create_VSeparator(item.parentNode != uls[0], false), item.nextSibling);
            }
        }
    }
}
artLoadEvent.add(artAddVMenuSeparators);
/* end VMenu */

/* begin VMenuItem */
function artVMenu() {
    var menus = artGetElementsByClassName("art-vmenu", document, "ul");
    for (var k = 0; k < menus.length; k++) {
        var vmenu = menus[k];
        vmenu.uls = vmenu.getElementsByTagName("ul");
        vmenu.items = vmenu.getElementsByTagName("li");
        vmenu.alinks = vmenu.getElementsByTagName("a");
        for (var x = 0; x < vmenu.items.length; x++) {
            var li = vmenu.items[x];
            li.className = li.className.replace(/active/, "").replace("  ", " ");
            for (var s = 0; s < li.childNodes.length; s++) {
                var ch = li.childNodes[s];
                if (!(ch && ch.tagName)) continue;
                if (String(ch.tagName).toLowerCase() == "a") {
                    if (ch.href == window.location.href)
                        {vmenu.active = li; var tmp =1;}
                        li.a = ch;
                }
                if (String(ch.tagName).toLowerCase() == "ul")
                    li.ul = ch;
                ch.className = ch.className.replace(/active/, "").replace("  ", " ");
            }
        }
        if (tmp != 1){
            for (var x = 0; x < vmenu.items.length; x++) {
                var li = vmenu.items[x];
                li.className = li.className.replace(/active/, "").replace("  ", " ");
                for (var s = 0; s < li.childNodes.length; s++) {
                    var ch = li.childNodes[s];
                    if (!(ch && ch.tagName)) continue;
                    if (String(ch.tagName).toLowerCase() == "a") {
                    if (ch.href == getCookie("url"))
                        {vmenu.active = li;}
                        li.a = ch;
                    }
                    if (String(ch.tagName).toLowerCase() == "ul")
                        li.ul = ch;
                        ch.className = ch.className.replace(/active/, "").replace("  ", " ");
                }
            }
        }
        if (!vmenu.active) return;
        if (vmenu.active.ul) vmenu.active.ul.className += " active";
        var parent = vmenu.active;
        var mas = new Array();
        var t = 0;
        while (parent && parent != vmenu) {
            parent.className += " active";
            if (parent.a) parent.a.className += " active"; mas[t] = parent.a;
            parent = parent.parentNode;
            t++;
        }
    }
    setCookie("url",mas[0]);
}
artLoadEvent.add(artVMenu);
/* end VMenuItem */
function setCookie (name, value, expires, path, domain, secure) {
      document.cookie = name + "=" + escape(value) +
        ((expires) ? "; expires=" + expires : "") +
        ((path) ? "; path=" + path : "") +
        ((domain) ? "; domain=" + domain : "") +
        ((secure) ? "; secure" : "");
}

function getCookie(name) {
	var cookie = " " + document.cookie;
	var search = " " + name + "=";
	var setStr = null;
	var offset = 0;
	var end = 0;
	if (cookie.length > 0) {
		offset = cookie.indexOf(search);
		if (offset != -1) {
			offset += search.length;
			end = cookie.indexOf(";", offset)
			if (end == -1) {
				end = cookie.length;
			}
			setStr = unescape(cookie.substring(offset, end));
		}
	}
	return(setStr);
}
