function addev(elmclass, elmevent, elmfunc){

try {
$('#ptext a.light').lightBox();
}
catch(e) {
}
    function listen(evnt, elem, func){
        if (elem.addEventListener) // W3C DOM
            elem.onclick = function(e){
                return func(elem);
            };
        //elem.addEventListener(evnt,function() {func(elem);return false ;},false);
        else 
            if (elem.attachEvent) { // IE DOM
                elem.onclick = function(e){
                    event.returnValue = false;
                    return func(elem);
                };
            //var r = elem.attachEvent("on"+evnt, function() { return func(elem);});
            //return r;
            }
            else 
                window.alert('I\'m sorry Dave, I\'m afraid I can\'t do that.');
    }
    
    /*
     Developed by Robert Nyman, http://www.robertnyman.com
     Code/licensing: http://code.google.com/p/getelementsbyclassname/
     */
    var getElementsByClassName = function(className, tag, elm){
        if (document.getElementsByClassName) {
            getElementsByClassName = function(className, tag, elm){
                elm = elm || document;
                var elements = elm.getElementsByClassName(className), nodeName = (tag) ? new RegExp("\\b" + tag + "\\b", "i") : null, returnElements = [], current;
                for (var i = 0, il = elements.length; i < il; i += 1) {
                    current = elements[i];
                    if (!nodeName || nodeName.test(current.nodeName)) {
                        returnElements.push(current);
                    }
                }
                return returnElements;
            };
        }
        else 
            if (document.evaluate) {
                getElementsByClassName = function(className, tag, elm){
                    tag = tag || "*";
                    elm = elm || document;
                    var classes = className.split(" "), classesToCheck = "", xhtmlNamespace = "http://www.w3.org/1999/xhtml", namespaceResolver = (document.documentElement.namespaceURI === xhtmlNamespace) ? xhtmlNamespace : null, returnElements = [], elements, node;
                    for (var j = 0, jl = classes.length; j < jl; j += 1) {
                        classesToCheck += "[contains(concat(' ', @class, ' '), ' " + classes[j] + " ')]";
                    }
                    try {
                        elements = document.evaluate(".//" + tag + classesToCheck, elm, namespaceResolver, 0, null);
                    } 
                    catch (e) {
                        elements = document.evaluate(".//" + tag + classesToCheck, elm, null, 0, null);
                    }
                    while ((node = elements.iterateNext())) {
                        returnElements.push(node);
                    }
                    return returnElements;
                };
            }
            else {
                getElementsByClassName = function(className, tag, elm){
                    tag = tag || "*";
                    elm = elm || document;
                    var classes = className.split(" "), classesToCheck = [], elements = (tag === "*" && elm.all) ? elm.all : elm.getElementsByTagName(tag), current, returnElements = [], match;
                    for (var k = 0, kl = classes.length; k < kl; k += 1) {
                        classesToCheck.push(new RegExp("(^|\\s)" + classes[k] + "(\\s|$)"));
                    }
                    for (var l = 0, ll = elements.length; l < ll; l += 1) {
                        current = elements[l];
                        match = false;
                        for (var m = 0, ml = classesToCheck.length; m < ml; m += 1) {
                            match = classesToCheck[m].test(current.className);
                            if (!match) {
                                break;
                            }
                        }
                        
                        if (match) {
                            returnElements.push(current);
                        }
                    }
                    return returnElements;
                };
            }
        return getElementsByClassName(className, tag, elm);
    };
    
    
    var elms = getElementsByClassName(elmclass);
    for (var i in elms) 
        listen(elmevent, elms[i], elmfunc);
}

function init(){
    setInterval(checkhash, 1000);
}

function checkhash(){
    if (window.location.hash == page) {
        return;
    }
    page = window.location.hash;
    gopage = page.replace(/#/, "");
    myreg = new RegExp('^op=.*$','');
    if (page && myreg.test(gopage)) {
        S('.?' + gopage + '&a=1');
    }else
	{
		if(gopage){
		S(gopage + '&a=1');
		}else
		{
		S('?a=1');		
		}
	}
}

function hash(name, title){
    if (name) {
        page = '#' + name;
        window.location.hash = name;
    }
    else {
        page = '';
    }
    if (title) {
        document.title = title;
        var pt = document.getElementById('page_title');
        if (pt) {
            pt.innerHTML = title;
        }
    }
}

function myfunc(elem){
    S(elem + '&a=1');
    return false
}

function set_active(name){
    frmobj = document.getElementById('history');
    var his = encodeURIComponent(frmobj.his.value);
    var active = encodeURIComponent(frmobj.active.value);
    S('index.php?op=pages&a=1&name=' + name, 'active=' + active + '&his=' + his);
    return false;
}

function set_show(name){
    frmobj = document.getElementById('history');
    var his = encodeURIComponent(frmobj.his.value);
    S('index.php?op=pages&a=1&name=' + name, 'his=' + his);
    return false;
}

function start(name){
    setInterval(checkhash, 1000);
    var page = '';
    addev('ajax', 'click', myfunc);
	if (!window.location.hash) {
		hash(name, '');
	}else
	{
	   hash('', '');
	}
}

