// apply inline-box only for mozilla
if( jQuery.browser.mozilla && (typeof jQuery.fn.ajaxForm == 'function' && jQuery.fn.ajaxForm.constructor == Function)) {
	// do when DOM is ready
	$( function() {
		// search form, hide it, search labels to modify, filter classes nocmx and error
		$('form.cmxform').hide().find( 'p>label:not(.nocmx):not(.error)' ).each( function() {
			var $this = $(this);
			var labelContent = $this.html();
			var labelWidth = document.defaultView.getComputedStyle( this, '' ).getPropertyValue( 'width' );
			// create block element with width of label
			var labelSpan = $("<span>")
				.css("display", "block")
				.width(labelWidth)
				.html(labelContent);
			// change display to mozilla specific inline-box
			$this.css("display", "-moz-inline-box")
				// remove children
				.empty()
				// add span element
				.append(labelSpan);
		// show form again
		}).end().show();
	});
	
	$(function() {
        $('form input[@type=checkbox],input[@type=radio]').css("border",0);
    });
};

var _sortable = function() {
	$("td.sortable")
    .unbind("click")
	.click(function(){
		var defaultClass = "sortup";
		var isSortUp     = jQuery.className.has( this, "sortup" );
		var isSortDown   = jQuery.className.has( this, "sortdown" );

		$("td.sortable").each(function(offset){ $(this).removeClass("sortup").removeClass("sortdown"); });

		if ( !(isSortUp || isSortDown) ) { $(this).addClass(defaultClass); }
		else  { $(this).addClass( isSortUp ? "sortdown" : "sortup" ); }

		var criteria = $("dfn", this).text()+ "_" + (jQuery.className.has( this, "sortup" ) ? "ASC" : "DESC" );
        if($(this).parents("form").get(0)) {
            var _name = $(this).parents("form").get(0).id.replace("_form","")
            if(!$("#"+_name+"_form").length) return;
            var action = $("#"+_name+"_form").attr("action");
            var _tbody = $(this).parent().parent().next();
            if(_tbody.length > 0) {
                var _val = $("#"+_name+"_toolsbar").find("input[@type=text]").val();
                app.ajax.update(_tbody, action,$.extend(formToArray($("#"+_name+"_form").get(0)),{_k:_val?_val:"",_sort:criteria}));
            }
        }
        
        function formToArray(form) {
            var inputs = $(":input");//form.getElementsByTagName("input")
            var a = {};
            for(var i=0, max=inputs.length; i < max; i++) {
                if(inputs[i].name) a[inputs[i].name] = inputs[i].value;
                else if(inputs[i].id) a[inputs[i].id] = inputs[i].value;
            }
            return a;
        };
	});
	
}

/*
$(document).ready(function() { if($(".corner").size()>0 && $.corner) $(".corner").corner();});
*/
