$(document).ready(function(){jQuery().validate&&$("form").validate();$("form.ajax input[type=submit], form.ajax .submit").live("click",function(){if("readonly"!=$(this).attr("readonly")){var a=$(this).parents("form").get();$(".ajax-form-error, .ajax-form-message, label.error",a).fadeOut("normal",function(){$(this).remove()});if("undefined"==typeof $(a).valid||!0==$(a).valid()){$("button, input, textarea",a).attr("readonly","readonly");document.body.style.cursor="wait";var c=""==$(a).attr("method")?
"GET":$(a).attr("method"),b=$(a).attr("action");""==b?(injectMessage(a,"Form element lacks action attribute","error"),$("button, input, textarea",a).removeAttr("readonly"),document.body.style.cursor="default"):$.ajax({type:c,url:b,data:$(a).serialize(),dataType:"json",success:function(b){"success"!=b.status&&"undefined"!=typeof b.message?injectMessage(a,b.message,"error"):"success"==b.status&&($("input[type=text]",a).val(""),$("select",a).val(""),$("textarea",a).val(""),"undefined"!=typeof b.message&&
injectMessage(a,b.message,"message"),"undefined"!=typeof b.url&&(parent.location.href=b.url));if("undefined"!=typeof b.callback)window[b.callback](b);$("button, input, textarea",a).removeAttr("readonly");document.body.style.cursor="default"},error:function(b,c,f){injectMessage(a,f,"error");$("button, input, textarea",a).removeAttr("readonly");document.body.style.cursor="default"}})}else return!1}});$("form.ajax").submit(function(){return!1});$("table tr:even td").addClass("even");$("table tr:odd td").addClass("odd")});
function injectMessage(a,c,b,e){"undefined"==typeof b&&(b="error");switch(b){case "error":var d="#800";break;case "message":d="#080";break;default:d="#000"}b="ajax-form-"+b;d="display:none;color:"+d;$("."+b,a).remove();$(a).prepend('<div class="'+b+'" style="'+d+'" generated="true">'+c+"</div>");$("."+b,a).fadeIn();"undefined"!=typeof e&&$("."+b,a).delay(e).fadeOut();return $("."+b,a)}function autoTab(a){$(a).val().length>=$(a).attr("maxlength")&&$(a).next().focus()}
function disableEnterKey(a){return 13!=(window.event?window.event.keyCode:a.which)}function truncate(a,c,b){a.length>c&&(a=!0==b?'<span title="'+a+'" style="cursor:help">'+a.substring(0,c)+"...</span>":a.substring(0,c)+"...");return a};

