function mootools$$() {
    var D = [];
    for (var C = 0, B = arguments.length; C < B; C++) {
        var A = arguments[C];
        switch ($type(A)) {
        case "element":
            D.push(A);
        case "boolean":
            break;
        case false:
            break;
        case "string":
            A = document.getElementsBySelector(A, true);
        default:
            D.extend(A);
        }
    }
    return mootools$$.unique(D);
}
mootools$$.unique = function(G) {
    var D = [];
    for (var C = 0, A = G.length; C < A; C++) {
        if (G[C].$included) {
            continue;
        }
        var B = $(G[C]);
        if (B && !B.$included) {
            B.$included = true;
            D.push(B);
        }
    }
    for (var F = 0, E = D.length; F < E; F++) {
        D[F].$included = null;
    }
    return new Elements(D);
};
mootools$$.shared = {
    regexp: /^(\w*|\*)(?:#([\w-]+)|\.([\w-]+))?(?:\[(\w+)(?:([!*^$]?=)["']?([^"'\]]*)["']?)?])?$/,
    xpath: {
        getParam: function(B, D, E, C) {
            var A = [D.namespaceURI ? "xhtml:": "", E[1]];
            if (E[2]) {
                A.push('[@id="', E[2], '"]');
            }
            if (E[3]) {
                A.push('[contains(concat(" ", @class, " "), " ', E[3], ' ")]');
            }
            if (E[4]) {
                if (E[5] && E[6]) {
                    switch (E[5]) {
                    case "*=":
                        A.push("[contains(@", E[4], ', "', E[6], '")]');
                        break;
                    case "^=":
                        A.push("[starts-with(@", E[4], ', "', E[6], '")]');
                        break;
                    case "$=":
                        A.push("[substring(@", E[4], ", string-length(@", E[4], ") - ", E[6].length, ' + 1) = "', E[6], '"]');
                        break;
                    case "=":
                        A.push("[@", E[4], '="', E[6], '"]');
                        break;
                    case "!=":
                        A.push("[@", E[4], '!="', E[6], '"]');
                    }
                } else {
                    A.push("[@", E[4], "]");
                }
            }
            B.push(A.join(""));
            return B;
        },
        getItems: function(B, E, G) {
            var F = [];
            var A = document.evaluate(".//" + B.join("//"), E, mootools$$.shared.resolver, XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null);
            for (var D = 0, C = A.snapshotLength;
            D < C; D++) {
                F.push(A.snapshotItem(D));
            }
            return (G) ? F: new Elements(F.map($));
        }
    },
    normal: {
        getParam: function(A, C, E, B) {
            if (B == 0) {
                if (E[2]) {
                    var D = C.getElementById(E[2]);
                    if (!D || ((E[1] != "*") && (Element.getTag(D) != E[1]))) {
                        return false;
                    }
                    A = [D];
                } else {
                    A = $A(C.getElementsByTagName(E[1]));
                }
            } else {
                A = mootools$$.shared.getElementsByTagName(A, E[1]);
                if (E[2]) {
                    A = Elements.filterById(A, E[2], true);
                }
            }
            if (E[3]) {
                A = Elements.filterByClass(A, E[3], true);
            }
            if (E[4]) {
                A = Elements.filterByAttribute(A, E[4], E[5], E[6], true);
            }
            return A;
        },
        getItems: function(A, B, C) {
            return (C) ? A: mootools$$.unique(A);
        }
    },
    resolver: function(A) {
        return (A == "xhtml") ? "http://www.w3.org/1999/xhtml": false;
    },
    getElementsByTagName: function(D, C) {
        var E = [];
        for (var B = 0, A = D.length; B < A; B++) {
            E.extend(D[B].getElementsByTagName(C));
        }
        return E;
    }
};
mootools$$.shared.method = (window.xpath) ? "xpath": "normal";

window.addEvent('domready', function(){

	// Make navigation toggle-able
	mootools$$('#navigation li.toggleable').each(function(element) {
	
		// Hide list
		element.getLast().setStyle('display', 'none');

		// Add event to link
		element.getFirst().addEvent('click', function(e) {
			var evt = new Event(e);
			
			// Make sure we're clicking on a link
			target = evt.target;
			while( target.href == undefined ) {
				target = target.parentNode;
			}

			var el = new Element(target);		

			if( el.getNext().getStyle('display') == 'none' ) {
				el.getNext().setStyle('display', '');
				el.getParent().addClass( 'toggle-open' );
			} else {
				el.getNext().setStyle('display', 'none');
				el.getParent().removeClass( 'toggle-open' );
			}
			
			
			evt.stop();
		});
	});
	
	// Open selected toggle-able nav items
	mootools$$('#navigation li.selected').each(function(element) {
		if( element.hasClass('toggleable') ) {
			element.setStyle('display', '');
			element.getParent().removeClass( 'toggle-open' );
		}
		// Run upwards through parents
		while( (element = element.getParent()) 
			&& element.getTag() != 'div' ) {
			if( element.hasClass && element.hasClass('toggleable') ) {
				element.getLast().setStyle( 'display', '');
				element.addClass( 'toggle-open' );
			}
		}
	});
	
	mootools$$(".offensive_link").each(function(el){
		el.onclick = function(){
			var form = $E("#offensive_reason_form_" + el.id.replace(/offensive_link_/, ""));
			form.setStyle("display", form.getStyle("display") == "block" ? "none" : "block");
			return false;
		}
	});
	
	mootools$$(".offensive_reason").each(function(el){
		el.onfocus = function(){
			if(this.value == 'Reason you found this offensive'){
				this.value ='';
				el.setStyle("color", "#111111");
			}
		}
	});
	mootools$$(".offensive_reason_form").each(function(el){
		
		el.onsubmit = function(){
			formfield = this.getElement('.offensive_reason');
			if( formfield && (formfield.value == 'Reason you found this offensive' || formfield.value == '') ) {
				alert('You must enter your reason for reporting this comment as offensive');
				return false;
			}
			return true;
		}
	});
	if($E("#send-to-friend") && $E("#send-to-friend-link")){
		var mySlider = new Fx.Slide($E("#send-to-friend"), {duration: 500});
		mySlider.hide();
		//Send to a friend
		$E("#send-to-friend-link").onclick = function(){
		    mySlider.toggle()
			return false;
		}
	}
	
	try{
		var extras = mootools$$("#extras");
		var content = mootools$$("#content");
		if(extras.length && content.length){
			extras = extras[0];
			content = content[0];
			//console.log(extras.getStyle("height").toInt());
			//console.log(content.getStyle("height").toInt());			
			if( extras.getStyle("height").toInt() > content.getStyle("height").toInt() ){
				if( navigator.userAgent.indexOf("MSIE 6") > 0 ){
					content.setStyle("height", extras.getStyle("height").toInt() + 30);
				}else{
					content.setStyle("min-height", extras.getStyle("height").toInt() + 30);				
				}
			}
		}		
	}catch(e){}
});