Element.implement({
	show: function() {
		this.setStyle("display", "");
	},
	hide: function() {
		this.setStyle("display", "none");
	},
	hidden: function() {
		return this.getStyle("display") == "none";
	}
});
Cookie.implement({
	writeUnencoded: function(value){
		if (this.options.domain) value += '; domain=' + this.options.domain;
		if (this.options.path) value += '; path=' + this.options.path;
		if (this.options.duration){
			var date = new Date();
			date.setTime(date.getTime() + this.options.duration * 24 * 60 * 60 * 1000);
			value += '; expires=' + date.toGMTString();
		}
		if (this.options.secure) value += '; secure';
		this.options.document.cookie = this.key + '=' + value;
		return this;
	}
});
Cookie.writeUnencoded= function(key, value, options){
	return new Cookie(key, options).writeUnencoded(value);
};
function autoFocus(e) {
    window.addEvent("domready", function() {
        var element = $(e);
        if(element) {
            element.focus();
            if(element.select) {
                element.select();
            }
        }
    });
}
function delegateReturn(btn, publisher) {
    $($pick(publisher, window)).addEvent("keypress", function(event) {
        if(event.key == "enter") {
            event.stop();
            $(btn).click();
        }
    });
}
function alternateRows(selector) {
        window.addEvent("domready", function() {
            $$(selector).each(function(row, index) {
                row.addClass(index % 2 != 0 ? "alternate" : "");
            });
        });
}
function doSearch() {
    var btn = $("gbl_btn_search");
    if(btn) {
        btn.click();
    }
}
function doFilter() {
    var btn = $("gbl_btn_filter");
    if(btn) {
        btn.click();
    }
}
function goto(url) {
	window.location.replace(url);
}
function doSiteSearch() {
	goto(ps_db_url + "/search?OpenForm&ssq=" + escape($('search_bar_query').get('value')));
}
function endImpersonation() {
	var domain = window.location.host.substring(window.location.host.indexOf('.')+1);
	Cookie.writeUnencoded('LtpaToken', Cookie.read('OrigLtpaToken'), {path: '/', domain: domain});
	Cookie.dispose('OrigLtpaToken', {path: '/', domain: domain});
	goto(ps_db_url + "/home?OpenForm");
}
