(function(a){a.jgrid.extend({getColProp:function(b){var f={},c=this[0];if(!c.grid){return false}var e=c.p.colModel;for(var d=0;d<e.length;d++){if(e[d].name==b){f=e[d];break}}return f},setColProp:function(b,c){return this.each(function(){if(this.grid){if(c){var e=this.p.colModel;for(var d=0;d<e.length;d++){if(e[d].name==b){a.extend(this.p.colModel[d],c);break}}}}})},sortGrid:function(b,c,d){return this.each(function(){var f=this,h=-1;if(!f.grid){return}if(!b){b=f.p.sortname}for(var g=0;g<f.p.colModel.length;g++){if(f.p.colModel[g].index==b||f.p.colModel[g].name==b){h=g;break}}if(h!=-1){var e=f.p.colModel[h].sortable;if(typeof e!=="boolean"){e=true}if(typeof c!=="boolean"){c=false}if(e){f.sortData("jqgh_"+f.p.id+"_"+b,h,c,d)}}})},GridDestroy:function(){return this.each(function(){if(this.grid){if(this.p.pager){a(this.p.pager).remove()}var b=this.id;try{a("#gbox_"+b).remove()}catch(c){}}})},GridUnload:function(){return this.each(function(){if(!this.grid){return}var c={id:a(this).attr("id"),cl:a(this).attr("class")};if(this.p.pager){a(this.p.pager).empty().removeClass("ui-state-default ui-jqgrid-pager corner-bottom")}var d=document.createElement("table");a(d).attr({id:c.id});d.className=c.cl;var b=this.id;a(d).removeClass("ui-jqgrid-btable");if(a(this.p.pager).parents("#gbox_"+b).length===1){a(d).insertBefore("#gbox_"+b).show();a(this.p.pager).insertBefore("#gbox_"+b)}else{a(d).insertBefore("#gbox_"+b).show()}a("#gbox_"+b).remove()})},setGridState:function(b){return this.each(function(){if(!this.grid){return}var c=this;if(b=="hidden"){a(".ui-jqgrid-bdiv, .ui-jqgrid-hdiv","#gview_"+c.p.id).slideUp("fast");if(c.p.pager){a(c.p.pager).slideUp("fast")}if(c.p.toppager){a(c.p.toppager).slideUp("fast")}if(c.p.toolbar[0]===true){if(c.p.toolbar[1]=="both"){a(c.grid.ubDiv).slideUp("fast")}a(c.grid.uDiv).slideUp("fast")}if(c.p.footerrow){a(".ui-jqgrid-sdiv","#gbox_"+c.p.id).slideUp("fast")}a(".ui-jqgrid-titlebar-close span",c.grid.cDiv).removeClass("ui-icon-circle-triangle-n").addClass("ui-icon-circle-triangle-s");c.p.gridstate="hidden"}else{if(b=="visible"){a(".ui-jqgrid-hdiv, .ui-jqgrid-bdiv","#gview_"+c.p.id).slideDown("fast");if(c.p.pager){a(c.p.pager).slideDown("fast")}if(c.p.toppager){a(c.p.toppager).slideDown("fast")}if(c.p.toolbar[0]===true){if(c.p.toolbar[1]=="both"){a(c.grid.ubDiv).slideDown("fast")}a(c.grid.uDiv).slideDown("fast")}if(c.p.footerrow){a(".ui-jqgrid-sdiv","#gbox_"+c.p.id).slideDown("fast")}a(".ui-jqgrid-titlebar-close span",c.grid.cDiv).removeClass("ui-icon-circle-triangle-s").addClass("ui-icon-circle-triangle-n");c.p.gridstate="visible"}}})},filterToolbar:function(b){b=a.extend({autosearch:true,searchOnEnter:true,beforeSearch:null,afterSearch:null,beforeClear:null,afterClear:null,searchurl:"",stringResult:false,groupOp:"AND",defaultSearch:"bw"},b||{});return this.each(function(){var e=this;if(this.ftoolbar){return}var h=function(){var m={},l=0,u,r,k={},t;a.each(e.p.colModel,function(w,j){r=this.index||this.name;switch(this.stype){case"select":t=(this.searchoptions&&this.searchoptions.sopt)?this.searchoptions.sopt[0]:"eq";u=a("#gs_"+a.jgrid.jqID(this.name),e.grid.hDiv).val();if(u){m[r]=u;k[r]=t;l++}else{try{delete e.p.postData[r]}catch(x){}}break;case"text":t=(this.searchoptions&&this.searchoptions.sopt)?this.searchoptions.sopt[0]:b.defaultSearch;u=a("#gs_"+a.jgrid.jqID(this.name),e.grid.hDiv).val();if(u){m[r]=u;k[r]=t;l++}else{try{delete e.p.postData[r]}catch(v){}}break}});var s=l>0?true:false;if(b.stringResult===true||e.p.datatype=="local"){var p='{"groupOp":"'+b.groupOp+'","rules":[';var q=0;a.each(m,function(v,j){if(q>0){p+=","}p+='{"field":"'+v+'",';p+='"op":"'+k[v]+'",';j+="";p+='"data":"'+j.replace(/\\/g,"\\\\").replace(/\"/g,'\\"')+'"}';q++});p+="]}";a.extend(e.p.postData,{filters:p});a.each(["searchField","searchString","searchOper"],function(v,j){if(e.p.postData.hasOwnProperty(j)){delete e.p.postData[j]}})}else{a.extend(e.p.postData,m)}var n;if(e.p.searchurl){n=e.p.url;a(e).jqGrid("setGridParam",{url:e.p.searchurl})}var o=false;if(a.isFunction(b.beforeSearch)){o=b.beforeSearch.call(e)}if(!o){a(e).jqGrid("setGridParam",{search:s}).trigger("reloadGrid",[{page:1}])}if(n){a(e).jqGrid("setGridParam",{url:n})}if(a.isFunction(b.afterSearch)){b.afterSearch()}};var g=function(l){var m={},s,r=0,q;l=(typeof l!="boolean")?true:l;a.each(e.p.colModel,function(w,j){s=(this.searchoptions&&this.searchoptions.defaultValue)?this.searchoptions.defaultValue:"";q=this.index||this.name;switch(this.stype){case"select":var v;a("#gs_"+a.jgrid.jqID(q)+" option",e.grid.hDiv).each(function(y){if(y===0){this.selected=true}if(a(this).text()==s){this.selected=true;v=a(this).val();return false}});if(v){m[q]=v;r++}else{try{delete e.p.postData[q]}catch(x){}}break;case"text":a("#gs_"+a.jgrid.jqID(q),e.grid.hDiv).val(s);if(s){m[q]=s;r++}else{try{delete e.p.postData[q]}catch(u){}}break}});var k=r>0?true:false;if(b.stringResult===true||e.p.datatype=="local"){var o='{"groupOp":"'+b.groupOp+'","rules":[';var p=0;a.each(m,function(u,j){if(p>0){o+=","}o+='{"field":"'+u+'",';o+='"op":"eq",';j+="";o+='"data":"'+j.replace(/\\/g,"\\\\").replace(/\"/g,'\\"')+'"}';p++});o+="]}";a.extend(e.p.postData,{filters:o});a.each(["searchField","searchString","searchOper"],function(u,j){if(e.p.postData.hasOwnProperty(j)){delete e.p.postData[j]}})}else{a.extend(e.p.postData,m)}var n;if(e.p.searchurl){n=e.p.url;a(e).jqGrid("setGridParam",{url:e.p.searchurl})}var t=false;if(a.isFunction(b.beforeClear)){t=b.beforeClear.call(e)}if(!t){if(l){a(e).jqGrid("setGridParam",{search:k}).trigger("reloadGrid",[{page:1}])}}if(n){a(e).jqGrid("setGridParam",{url:n})}if(a.isFunction(b.afterClear)){b.afterClear()}};var f=function(){var j=a("tr.ui-search-toolbar",e.grid.hDiv);if(j.css("display")=="none"){j.show()}else{j.hide()}};function c(k,j){var l=a(k);if(l[0]){jQuery.each(j,function(){if(this.data!==undefined){l.bind(this.type,this.data,this.fn)}else{l.bind(this.type,this.fn)}})}}var d=a("<tr class='ui-search-toolbar' role='rowheader'></tr>");var i;a.each(e.p.colModel,function(j,q){var w=this,m,o,t,l,z;o=a("<th role='columnheader' class='ui-state-default ui-th-column ui-th-"+e.p.direction+"'></th>");m=a("<div style='width:100%;position:relative;height:100%;padding-right:0.3em;'></div>");if(this.hidden===true){a(o).css("display","none")}this.search=this.search===false?false:true;if(typeof this.stype=="undefined"){this.stype="text"}t=a.extend({},this.searchoptions||{});if(this.search){switch(this.stype){case"select":l=this.surl||t.dataUrl;if(l){z=m;a.ajax(a.extend({url:l,dataType:"html",complete:function(n,k){if(t.buildSelect!==undefined){var B=t.buildSelect(n);if(B){a(z).append(B)}}else{a(z).append(n.responseText)}if(t.defaultValue){a("select",z).val(t.defaultValue)}a("select",z).attr({name:w.index||w.name,id:"gs_"+w.name});if(t.attr){a("select",z).attr(t.attr)}a("select",z).css({width:"100%"});if(t.dataInit!==undefined){t.dataInit(a("select",z)[0])}if(t.dataEvents!==undefined){c(a("select",z)[0],t.dataEvents)}if(b.autosearch===true){a("select",z).change(function(C){h();return false})}n=null}},a.jgrid.ajaxOptions,e.p.ajaxSelectOptions||{}))}else{var v;if(w.searchoptions&&w.searchoptions.value){v=w.searchoptions.value}else{if(w.editoptions&&w.editoptions.value){v=w.editoptions.value}}if(v){var y=document.createElement("select");y.style.width="100%";a(y).attr({name:w.index||w.name,id:"gs_"+w.name});var r,A,s;if(typeof v==="string"){r=v.split(";");for(var x=0;x<r.length;x++){A=r[x].split(":");s=document.createElement("option");s.value=A[0];s.innerHTML=A[1];y.appendChild(s)}}else{if(typeof v==="object"){for(var p in v){if(v.hasOwnProperty(p)){s=document.createElement("option");s.value=p;s.innerHTML=v[p];y.appendChild(s)}}}}if(t.defaultValue){a(y).val(t.defaultValue)}if(t.attr){a(y).attr(t.attr)}if(t.dataInit!==undefined){t.dataInit(y)}if(t.dataEvents!==undefined){c(y,t.dataEvents)}a(m).append(y);if(b.autosearch===true){a(y).change(function(k){h();return false})}}}break;case"text":var u=t.defaultValue?t.defaultValue:"";a(m).append("<input type='text' style='width:95%;padding:0px;' name='"+(w.index||w.name)+"' id='gs_"+w.name+"' value='"+u+"'/>");if(t.attr){a("input",m).attr(t.attr)}if(t.dataInit!==undefined){t.dataInit(a("input",m)[0])}if(t.dataEvents!==undefined){c(a("input",m)[0],t.dataEvents)}if(b.autosearch===true){if(b.searchOnEnter){a("input",m).keypress(function(n){var k=n.charCode?n.charCode:n.keyCode?n.keyCode:0;if(k==13){h();return false}return this})}else{a("input",m).keydown(function(n){var k=n.which;switch(k){case 13:return false;case 9:case 16:case 37:case 38:case 39:case 40:case 27:break;default:if(i){clearTimeout(i)}i=setTimeout(function(){h()},500)}})}}break}}a(o).append(m);a(d).append(o)});a("table thead",e.grid.hDiv).append(d);this.ftoolbar=true;this.triggerToolbar=h;this.clearToolbar=g;this.toggleToolbar=f})}})})(jQuery);
