First Commit

This commit is contained in:
Kevin Adametz 2018-10-29 09:39:31 +01:00
commit 610aa1e202
4204 changed files with 636764 additions and 0 deletions

View file

@ -0,0 +1,339 @@
/*
The below work is licensed under Creative Commons GNU LGPL License.
Original work:
License: http://creativecommons.org/licenses/LGPL/2.1/
Author: Stefan Goessner/2006
Web: http://goessner.net/
Modifications made:
Version: 0.9-p5
Description: Restructured code, JSLint validated (no strict whitespaces),
added handling of empty arrays, empty strings, and int/floats values.
Author: Michael Schøler/2008-01-29
Web: http://michael.hinnerup.net/blog/2008/01/26/converting-json-to-xml-and-xml-to-json/
Description: json2xml added support to convert functions as CDATA
so it will be easy to write characters that cause some problems when convert
Author: Tony Tomov
*/
/*global alert */
var xmlJsonClass = {
// Param "xml": Element or document DOM node.
// Param "tab": Tab or indent string for pretty output formatting omit or use empty string "" to supress.
// Returns: JSON string
xml2json: function(xml, tab) {
if (xml.nodeType === 9) {
// document node
xml = xml.documentElement;
}
var nws = this.removeWhite(xml);
var obj = this.toObj(nws);
var json = this.toJson(obj, xml.nodeName, "\t");
return "{\n" + tab + (tab ? json.replace(/\t/g, tab) : json.replace(/\t|\n/g, "")) + "\n}";
},
// Param "o": JavaScript object
// Param "tab": tab or indent string for pretty output formatting omit or use empty string "" to supress.
// Returns: XML string
json2xml: function(o, tab) {
var toXml = function(v, name, ind) {
var xml = "";
var i, n;
if (v instanceof Array) {
if (v.length === 0) {
xml += ind + "<"+name+">__EMPTY_ARRAY_</"+name+">\n";
}
else {
for (i = 0, n = v.length; i < n; i += 1) {
var sXml = ind + toXml(v[i], name, ind+"\t") + "\n";
xml += sXml;
}
}
}
else if (typeof(v) === "object") {
var hasChild = false;
xml += ind + "<" + name;
var m;
for (m in v) if (v.hasOwnProperty(m)) {
if (m.charAt(0) === "@") {
xml += " " + m.substr(1) + "=\"" + v[m].toString() + "\"";
}
else {
hasChild = true;
}
}
xml += hasChild ? ">" : "/>";
if (hasChild) {
for (m in v) if (v.hasOwnProperty(m)) {
if (m === "#text") {
xml += v[m];
}
else if (m === "#cdata") {
xml += "<![CDATA[" + v[m] + "]]>";
}
else if (m.charAt(0) !== "@") {
xml += toXml(v[m], m, ind+"\t");
}
}
xml += (xml.charAt(xml.length - 1) === "\n" ? ind : "") + "</" + name + ">";
}
}
else if (typeof(v) === "function") {
xml += ind + "<" + name + ">" + "<![CDATA[" + v + "]]>" + "</" + name + ">";
}
else {
if (v === undefined ) { v = ""; }
if (v.toString() === "\"\"" || v.toString().length === 0) {
xml += ind + "<" + name + ">__EMPTY_STRING_</" + name + ">";
}
else {
xml += ind + "<" + name + ">" + v.toString() + "</" + name + ">";
}
}
return xml;
};
var xml = "";
var m;
for (m in o) if (o.hasOwnProperty(m)) {
xml += toXml(o[m], m, "");
}
return tab ? xml.replace(/\t/g, tab) : xml.replace(/\t|\n/g, "");
},
// Internal methods
toObj: function(xml) {
var o = {};
var FuncTest = /function/i;
if (xml.nodeType === 1) {
// element node ..
if (xml.attributes.length) {
// element with attributes ..
var i;
for (i = 0; i < xml.attributes.length; i += 1) {
o["@" + xml.attributes[i].nodeName] = (xml.attributes[i].nodeValue || "").toString();
}
}
if (xml.firstChild) {
// element has child nodes ..
var textChild = 0, cdataChild = 0, hasElementChild = false;
var n;
for (n = xml.firstChild; n; n = n.nextSibling) {
if (n.nodeType === 1) {
hasElementChild = true;
}
else if (n.nodeType === 3 && n.nodeValue.match(/[^ \f\n\r\t\v]/)) {
// non-whitespace text
textChild += 1;
}
else if (n.nodeType === 4) {
// cdata section node
cdataChild += 1;
}
}
if (hasElementChild) {
if (textChild < 2 && cdataChild < 2) {
// structured element with evtl. a single text or/and cdata node ..
this.removeWhite(xml);
for (n = xml.firstChild; n; n = n.nextSibling) {
if (n.nodeType === 3) {
// text node
o["#text"] = this.escape(n.nodeValue);
}
else if (n.nodeType === 4) {
// cdata node
if (FuncTest.test(n.nodeValue)) {
o[n.nodeName] = [o[n.nodeName], n.nodeValue];
} else {
o["#cdata"] = this.escape(n.nodeValue);
}
}
else if (o[n.nodeName]) {
// multiple occurence of element ..
if (o[n.nodeName] instanceof Array) {
o[n.nodeName][o[n.nodeName].length] = this.toObj(n);
}
else {
o[n.nodeName] = [o[n.nodeName], this.toObj(n)];
}
}
else {
// first occurence of element ..
o[n.nodeName] = this.toObj(n);
}
}
}
else {
// mixed content
if (!xml.attributes.length) {
o = this.escape(this.innerXml(xml));
}
else {
o["#text"] = this.escape(this.innerXml(xml));
}
}
}
else if (textChild) {
// pure text
if (!xml.attributes.length) {
o = this.escape(this.innerXml(xml));
if (o === "__EMPTY_ARRAY_") {
o = "[]";
} else if (o === "__EMPTY_STRING_") {
o = "";
}
}
else {
o["#text"] = this.escape(this.innerXml(xml));
}
}
else if (cdataChild) {
// cdata
if (cdataChild > 1) {
o = this.escape(this.innerXml(xml));
}
else {
for (n = xml.firstChild; n; n = n.nextSibling) {
if(FuncTest.test(xml.firstChild.nodeValue)) {
o = xml.firstChild.nodeValue;
break;
} else {
o["#cdata"] = this.escape(n.nodeValue);
}
}
}
}
}
if (!xml.attributes.length && !xml.firstChild) {
o = null;
}
}
else if (xml.nodeType === 9) {
// document.node
o = this.toObj(xml.documentElement);
}
else {
alert("unhandled node type: " + xml.nodeType);
}
return o;
},
toJson: function(o, name, ind, wellform) {
if(wellform === undefined) wellform = true;
var json = name ? ("\"" + name + "\"") : "", tab = "\t", newline = "\n";
if(!wellform) {
tab= ""; newline= "";
}
if (o === "[]") {
json += (name ? ":[]" : "[]");
}
else if (o instanceof Array) {
var n, i, ar=[];
for (i = 0, n = o.length; i < n; i += 1) {
ar[i] = this.toJson(o[i], "", ind + tab, wellform);
}
json += (name ? ":[" : "[") + (ar.length > 1 ? (newline + ind + tab + ar.join(","+newline + ind + tab) + newline + ind) : ar.join("")) + "]";
}
else if (o === null) {
json += (name && ":") + "null";
}
else if (typeof(o) === "object") {
var arr = [], m;
for (m in o) {
if (o.hasOwnProperty(m)) {
arr[arr.length] = this.toJson(o[m], m, ind + tab, wellform);
}
}
json += (name ? ":{" : "{") + (arr.length > 1 ? (newline + ind + tab + arr.join(","+newline + ind + tab) + newline + ind) : arr.join("")) + "}";
}
else if (typeof(o) === "string") {
/*
var objRegExp = /(^-?\d+\.?\d*$)/;
var FuncTest = /function/i;
var os = o.toString();
if (objRegExp.test(os) || FuncTest.test(os) || os==="false" || os==="true") {
// int or float
json += (name && ":") + "\"" +os + "\"";
}
else {
*/
json += (name && ":") + "\"" + o.replace(/\\/g,'\\\\').replace(/\"/g,'\\"') + "\"";
//}
}
else {
json += (name && ":") + o.toString();
}
return json;
},
innerXml: function(node) {
var s = "";
if ("innerHTML" in node) {
s = node.innerHTML;
}
else {
var asXml = function(n) {
var s = "", i;
if (n.nodeType === 1) {
s += "<" + n.nodeName;
for (i = 0; i < n.attributes.length; i += 1) {
s += " " + n.attributes[i].nodeName + "=\"" + (n.attributes[i].nodeValue || "").toString() + "\"";
}
if (n.firstChild) {
s += ">";
for (var c = n.firstChild; c; c = c.nextSibling) {
s += asXml(c);
}
s += "</" + n.nodeName + ">";
}
else {
s += "/>";
}
}
else if (n.nodeType === 3) {
s += n.nodeValue;
}
else if (n.nodeType === 4) {
s += "<![CDATA[" + n.nodeValue + "]]>";
}
return s;
};
for (var c = node.firstChild; c; c = c.nextSibling) {
s += asXml(c);
}
}
return s;
},
escape: function(txt) {
return txt.replace(/[\\]/g, "\\\\").replace(/[\"]/g, '\\"').replace(/[\n]/g, '\\n').replace(/[\r]/g, '\\r');
},
removeWhite: function(e) {
e.normalize();
var n;
for (n = e.firstChild; n; ) {
if (n.nodeType === 3) {
// text node
if (!n.nodeValue.match(/[^ \f\n\r\t\v]/)) {
// pure whitespace text node
var nxt = n.nextSibling;
e.removeChild(n);
n = nxt;
}
else {
n = n.nextSibling;
}
}
else if (n.nodeType === 1) {
// element node
this.removeWhite(n);
n = n.nextSibling;
}
else {
// any other node
n = n.nextSibling;
}
}
return e;
}
};

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,496 @@
/*jshint eqeqeq:false */
/*global jQuery */
(function($){
/*
**
* jqGrid extension for cellediting Grid Data
* Tony Tomov tony@trirand.com
* http://trirand.com/blog/
* Dual licensed under the MIT and GPL licenses:
* http://www.opensource.org/licenses/mit-license.php
* http://www.gnu.org/licenses/gpl-2.0.html
**/
/**
* all events and options here are aded anonynous and not in the base grid
* since the array is to big. Here is the order of execution.
* From this point we use jQuery isFunction
* formatCell
* beforeEditCell,
* onSelectCell (used only for noneditable cels)
* afterEditCell,
* beforeSaveCell, (called before validation of values if any)
* beforeSubmitCell (if cellsubmit remote (ajax))
* afterSubmitCell(if cellsubmit remote (ajax)),
* afterSaveCell,
* errorCell,
* serializeCellData - new
* Options
* cellsubmit (remote,clientArray) (added in grid options)
* cellurl
* ajaxCellOptions
* */
"use strict";
$.jgrid.extend({
editCell : function (iRow,iCol, ed){
return this.each(function (){
var $t = this, nm, tmp,cc, cm;
if (!$t.grid || $t.p.cellEdit !== true) {return;}
iCol = parseInt(iCol,10);
// select the row that can be used for other methods
$t.p.selrow = $t.rows[iRow].id;
if (!$t.p.knv) {$($t).jqGrid("GridNav");}
// check to see if we have already edited cell
if ($t.p.savedRow.length>0) {
// prevent second click on that field and enable selects
if (ed===true ) {
if(iRow == $t.p.iRow && iCol == $t.p.iCol){
return;
}
}
// save the cell
$($t).jqGrid("saveCell",$t.p.savedRow[0].id,$t.p.savedRow[0].ic);
} else {
window.setTimeout(function () { $("#"+$.jgrid.jqID($t.p.knv)).attr("tabindex","-1").focus();},1);
}
cm = $t.p.colModel[iCol];
nm = cm.name;
if (nm==='subgrid' || nm==='cb' || nm==='rn') {return;}
cc = $("td:eq("+iCol+")",$t.rows[iRow]);
if (cm.editable===true && ed===true && !cc.hasClass("not-editable-cell")) {
if(parseInt($t.p.iCol,10)>=0 && parseInt($t.p.iRow,10)>=0) {
$("td:eq("+$t.p.iCol+")",$t.rows[$t.p.iRow]).removeClass("edit-cell ui-state-highlight");
$($t.rows[$t.p.iRow]).removeClass("selected-row ui-state-hover");
}
$(cc).addClass("edit-cell ui-state-highlight");
$($t.rows[iRow]).addClass("selected-row ui-state-hover");
try {
tmp = $.unformat.call($t,cc,{rowId: $t.rows[iRow].id, colModel:cm},iCol);
} catch (_) {
tmp = ( cm.edittype && cm.edittype === 'textarea' ) ? $(cc).text() : $(cc).html();
}
if($t.p.autoencode) { tmp = $.jgrid.htmlDecode(tmp); }
if (!cm.edittype) {cm.edittype = "text";}
$t.p.savedRow.push({id:iRow,ic:iCol,name:nm,v:tmp});
if(tmp === "&nbsp;" || tmp === "&#160;" || (tmp.length===1 && tmp.charCodeAt(0)===160) ) {tmp='';}
if($.isFunction($t.p.formatCell)) {
var tmp2 = $t.p.formatCell.call($t, $t.rows[iRow].id,nm,tmp,iRow,iCol);
if(tmp2 !== undefined ) {tmp = tmp2;}
}
$($t).triggerHandler("jqGridBeforeEditCell", [$t.rows[iRow].id, nm, tmp, iRow, iCol]);
if ($.isFunction($t.p.beforeEditCell)) {
$t.p.beforeEditCell.call($t, $t.rows[iRow].id,nm,tmp,iRow,iCol);
}
var opt = $.extend({}, cm.editoptions || {} ,{id:iRow+"_"+nm,name:nm,rowId: $t.rows[iRow].id});
var elc = $.jgrid.createEl.call($t,cm.edittype,opt,tmp,true,$.extend({},$.jgrid.ajaxOptions,$t.p.ajaxSelectOptions || {}));
$(cc).html("").append(elc).attr("tabindex","0");
$.jgrid.bindEv.call($t, elc, opt);
window.setTimeout(function () { $(elc).focus();},1);
$("input, select, textarea",cc).bind("keydown",function(e) {
if (e.keyCode === 27) {
if($("input.hasDatepicker",cc).length >0) {
if( $(".ui-datepicker").is(":hidden") ) { $($t).jqGrid("restoreCell",iRow,iCol); }
else { $("input.hasDatepicker",cc).datepicker('hide'); }
} else {
$($t).jqGrid("restoreCell",iRow,iCol);
}
} //ESC
if (e.keyCode === 13 && !e.shiftKey) {
$($t).jqGrid("saveCell",iRow,iCol);
// Prevent default action
return false;
} //Enter
if (e.keyCode === 9) {
if(!$t.grid.hDiv.loading ) {
if (e.shiftKey) {$($t).jqGrid("prevCell",iRow,iCol);} //Shift TAb
else {$($t).jqGrid("nextCell",iRow,iCol);} //Tab
} else {
return false;
}
}
e.stopPropagation();
});
$($t).triggerHandler("jqGridAfterEditCell", [$t.rows[iRow].id, nm, tmp, iRow, iCol]);
if ($.isFunction($t.p.afterEditCell)) {
$t.p.afterEditCell.call($t, $t.rows[iRow].id,nm,tmp,iRow,iCol);
}
} else {
if (parseInt($t.p.iCol,10)>=0 && parseInt($t.p.iRow,10)>=0) {
$("td:eq("+$t.p.iCol+")",$t.rows[$t.p.iRow]).removeClass("edit-cell ui-state-highlight");
$($t.rows[$t.p.iRow]).removeClass("selected-row ui-state-hover");
}
cc.addClass("edit-cell ui-state-highlight");
$($t.rows[iRow]).addClass("selected-row ui-state-hover");
tmp = cc.html().replace(/\&#160\;/ig,'');
$($t).triggerHandler("jqGridSelectCell", [$t.rows[iRow].id, nm, tmp, iRow, iCol]);
if ($.isFunction($t.p.onSelectCell)) {
$t.p.onSelectCell.call($t, $t.rows[iRow].id,nm,tmp,iRow,iCol);
}
}
$t.p.iCol = iCol; $t.p.iRow = iRow;
});
},
saveCell : function (iRow, iCol){
return this.each(function(){
var $t= this, fr;
if (!$t.grid || $t.p.cellEdit !== true) {return;}
if ( $t.p.savedRow.length >= 1) {fr = 0;} else {fr=null;}
if(fr !== null) {
var cc = $("td:eq("+iCol+")",$t.rows[iRow]),v,v2,
cm = $t.p.colModel[iCol], nm = cm.name, nmjq = $.jgrid.jqID(nm) ;
switch (cm.edittype) {
case "select":
if(!cm.editoptions.multiple) {
v = $("#"+iRow+"_"+nmjq+" option:selected",$t.rows[iRow]).val();
v2 = $("#"+iRow+"_"+nmjq+" option:selected",$t.rows[iRow]).text();
} else {
var sel = $("#"+iRow+"_"+nmjq,$t.rows[iRow]), selectedText = [];
v = $(sel).val();
if(v) { v.join(",");} else { v=""; }
$("option:selected",sel).each(
function(i,selected){
selectedText[i] = $(selected).text();
}
);
v2 = selectedText.join(",");
}
if(cm.formatter) { v2 = v; }
break;
case "checkbox":
var cbv = ["Yes","No"];
if(cm.editoptions){
cbv = cm.editoptions.value.split(":");
}
v = $("#"+iRow+"_"+nmjq,$t.rows[iRow]).is(":checked") ? cbv[0] : cbv[1];
v2=v;
break;
case "password":
case "text":
case "textarea":
case "button" :
v = $("#"+iRow+"_"+nmjq,$t.rows[iRow]).val();
v2=v;
break;
case 'custom' :
try {
if(cm.editoptions && $.isFunction(cm.editoptions.custom_value)) {
v = cm.editoptions.custom_value.call($t, $(".customelement",cc),'get');
if (v===undefined) { throw "e2";} else { v2=v; }
} else { throw "e1"; }
} catch (e) {
if (e==="e1") { $.jgrid.info_dialog($.jgrid.errors.errcap,"function 'custom_value' "+$.jgrid.edit.msg.nodefined,$.jgrid.edit.bClose); }
if (e==="e2") { $.jgrid.info_dialog($.jgrid.errors.errcap,"function 'custom_value' "+$.jgrid.edit.msg.novalue,$.jgrid.edit.bClose); }
else {$.jgrid.info_dialog($.jgrid.errors.errcap,e.message,$.jgrid.edit.bClose); }
}
break;
}
// The common approach is if nothing changed do not do anything
if (v2 !== $t.p.savedRow[fr].v){
var vvv = $($t).triggerHandler("jqGridBeforeSaveCell", [$t.rows[iRow].id, nm, v, iRow, iCol]);
if (vvv) {v = vvv; v2=vvv;}
if ($.isFunction($t.p.beforeSaveCell)) {
var vv = $t.p.beforeSaveCell.call($t, $t.rows[iRow].id,nm, v, iRow,iCol);
if (vv) {v = vv; v2=vv;}
}
var cv = $.jgrid.checkValues.call($t,v,iCol);
if(cv[0] === true) {
var addpost = $($t).triggerHandler("jqGridBeforeSubmitCell", [$t.rows[iRow].id, nm, v, iRow, iCol]) || {};
if ($.isFunction($t.p.beforeSubmitCell)) {
addpost = $t.p.beforeSubmitCell.call($t, $t.rows[iRow].id,nm, v, iRow,iCol);
if (!addpost) {addpost={};}
}
if( $("input.hasDatepicker",cc).length >0) { $("input.hasDatepicker",cc).datepicker('hide'); }
if ($t.p.cellsubmit === 'remote') {
if ($t.p.cellurl) {
var postdata = {};
if($t.p.autoencode) { v = $.jgrid.htmlEncode(v); }
postdata[nm] = v;
var idname,oper, opers;
opers = $t.p.prmNames;
idname = opers.id;
oper = opers.oper;
postdata[idname] = $.jgrid.stripPref($t.p.idPrefix, $t.rows[iRow].id);
postdata[oper] = opers.editoper;
postdata = $.extend(addpost,postdata);
$($t).jqGrid("progressBar", {method:"show", loadtype : $t.p.loadui, htmlcontent: $.jgrid.defaults.savetext || "Saving..." });
$t.grid.hDiv.loading = true;
$.ajax( $.extend( {
url: $t.p.cellurl,
data :$.isFunction($t.p.serializeCellData) ? $t.p.serializeCellData.call($t, postdata) : postdata,
type: "POST",
complete: function (result, stat) {
$($t).jqGrid("progressBar", {method:"hide", loadtype : $t.p.loadui });
$t.grid.hDiv.loading = false;
if (stat === 'success') {
var ret = $($t).triggerHandler("jqGridAfterSubmitCell", [$t, result, postdata.id, nm, v, iRow, iCol]) || [true, ''];
if (ret[0] === true && $.isFunction($t.p.afterSubmitCell)) {
ret = $t.p.afterSubmitCell.call($t, result,postdata.id,nm,v,iRow,iCol);
}
if(ret[0] === true){
$(cc).empty();
$($t).jqGrid("setCell",$t.rows[iRow].id, iCol, v2, false, false, true);
$(cc).addClass("dirty-cell");
$($t.rows[iRow]).addClass("edited");
$($t).triggerHandler("jqGridAfterSaveCell", [$t.rows[iRow].id, nm, v, iRow, iCol]);
if ($.isFunction($t.p.afterSaveCell)) {
$t.p.afterSaveCell.call($t, $t.rows[iRow].id,nm, v, iRow,iCol);
}
$t.p.savedRow.splice(0,1);
} else {
$.jgrid.info_dialog($.jgrid.errors.errcap,ret[1],$.jgrid.edit.bClose);
$($t).jqGrid("restoreCell",iRow,iCol);
}
}
},
error:function(res,stat,err) {
$("#lui_"+$.jgrid.jqID($t.p.id)).hide();
$t.grid.hDiv.loading = false;
$($t).triggerHandler("jqGridErrorCell", [res, stat, err]);
if ($.isFunction($t.p.errorCell)) {
$t.p.errorCell.call($t, res,stat,err);
$($t).jqGrid("restoreCell",iRow,iCol);
} else {
$.jgrid.info_dialog($.jgrid.errors.errcap,res.status+" : "+res.statusText+"<br/>"+stat,$.jgrid.edit.bClose);
$($t).jqGrid("restoreCell",iRow,iCol);
}
}
}, $.jgrid.ajaxOptions, $t.p.ajaxCellOptions || {}));
} else {
try {
$.jgrid.info_dialog($.jgrid.errors.errcap,$.jgrid.errors.nourl,$.jgrid.edit.bClose);
$($t).jqGrid("restoreCell",iRow,iCol);
} catch (e) {}
}
}
if ($t.p.cellsubmit === 'clientArray') {
$(cc).empty();
$($t).jqGrid("setCell",$t.rows[iRow].id,iCol, v2, false, false, true);
$(cc).addClass("dirty-cell");
$($t.rows[iRow]).addClass("edited");
$($t).triggerHandler("jqGridAfterSaveCell", [$t.rows[iRow].id, nm, v, iRow, iCol]);
if ($.isFunction($t.p.afterSaveCell)) {
$t.p.afterSaveCell.call($t, $t.rows[iRow].id,nm, v, iRow,iCol);
}
$t.p.savedRow.splice(0,1);
}
} else {
try {
window.setTimeout(function(){$.jgrid.info_dialog($.jgrid.errors.errcap,v+" "+cv[1],$.jgrid.edit.bClose);},100);
$($t).jqGrid("restoreCell",iRow,iCol);
} catch (e) {}
}
} else {
$($t).jqGrid("restoreCell",iRow,iCol);
}
}
window.setTimeout(function () { $("#"+$.jgrid.jqID($t.p.knv)).attr("tabindex","-1").focus();},0);
});
},
restoreCell : function(iRow, iCol) {
return this.each(function(){
var $t= this, fr;
if (!$t.grid || $t.p.cellEdit !== true ) {return;}
if ( $t.p.savedRow.length >= 1) {fr = 0;} else {fr=null;}
if(fr !== null) {
var cc = $("td:eq("+iCol+")",$t.rows[iRow]);
// datepicker fix
if($.isFunction($.fn.datepicker)) {
try {
$("input.hasDatepicker",cc).datepicker('hide');
} catch (e) {}
}
$(cc).empty().attr("tabindex","-1");
$($t).jqGrid("setCell",$t.rows[iRow].id, iCol, $t.p.savedRow[fr].v, false, false, true);
$($t).triggerHandler("jqGridAfterRestoreCell", [$t.rows[iRow].id, $t.p.savedRow[fr].v, iRow, iCol]);
if ($.isFunction($t.p.afterRestoreCell)) {
$t.p.afterRestoreCell.call($t, $t.rows[iRow].id, $t.p.savedRow[fr].v, iRow, iCol);
}
$t.p.savedRow.splice(0,1);
}
window.setTimeout(function () { $("#"+$t.p.knv).attr("tabindex","-1").focus();},0);
});
},
nextCell : function (iRow,iCol) {
return this.each(function (){
var $t = this, nCol=false, i;
if (!$t.grid || $t.p.cellEdit !== true) {return;}
// try to find next editable cell
for (i=iCol+1; i<$t.p.colModel.length; i++) {
if ( $t.p.colModel[i].editable ===true) {
nCol = i; break;
}
}
if(nCol !== false) {
$($t).jqGrid("editCell",iRow,nCol,true);
} else {
if ($t.p.savedRow.length >0) {
$($t).jqGrid("saveCell",iRow,iCol);
}
}
});
},
prevCell : function (iRow,iCol) {
return this.each(function (){
var $t = this, nCol=false, i;
if (!$t.grid || $t.p.cellEdit !== true) {return;}
// try to find next editable cell
for (i=iCol-1; i>=0; i--) {
if ( $t.p.colModel[i].editable ===true) {
nCol = i; break;
}
}
if(nCol !== false) {
$($t).jqGrid("editCell",iRow,nCol,true);
} else {
if ($t.p.savedRow.length >0) {
$($t).jqGrid("saveCell",iRow,iCol);
}
}
});
},
GridNav : function() {
return this.each(function () {
var $t = this;
if (!$t.grid || $t.p.cellEdit !== true ) {return;}
// trick to process keydown on non input elements
$t.p.knv = $t.p.id + "_kn";
var selection = $("<div style='position:fixed;top:0px;width:1px;height:1px;' tabindex='0'><div tabindex='-1' style='width:1px;height:1px;' id='"+$t.p.knv+"'></div></div>"),
i, kdir;
function scrollGrid(iR, iC, tp){
if (tp.substr(0,1)==='v') {
var ch = $($t.grid.bDiv)[0].clientHeight,
st = $($t.grid.bDiv)[0].scrollTop,
nROT = $t.rows[iR].offsetTop+$t.rows[iR].clientHeight,
pROT = $t.rows[iR].offsetTop;
if(tp === 'vd') {
if(nROT >= ch) {
$($t.grid.bDiv)[0].scrollTop = $($t.grid.bDiv)[0].scrollTop + $t.rows[iR].clientHeight;
}
}
if(tp === 'vu'){
if (pROT < st ) {
$($t.grid.bDiv)[0].scrollTop = $($t.grid.bDiv)[0].scrollTop - $t.rows[iR].clientHeight;
}
}
}
if(tp==='h') {
var cw = $($t.grid.bDiv)[0].clientWidth,
sl = $($t.grid.bDiv)[0].scrollLeft,
nCOL = $t.rows[iR].cells[iC].offsetLeft+$t.rows[iR].cells[iC].clientWidth,
pCOL = $t.rows[iR].cells[iC].offsetLeft;
if(nCOL >= cw+parseInt(sl,10)) {
$($t.grid.bDiv)[0].scrollLeft = $($t.grid.bDiv)[0].scrollLeft + $t.rows[iR].cells[iC].clientWidth;
} else if (pCOL < sl) {
$($t.grid.bDiv)[0].scrollLeft = $($t.grid.bDiv)[0].scrollLeft - $t.rows[iR].cells[iC].clientWidth;
}
}
}
function findNextVisible(iC,act){
var ind, i;
if(act === 'lft') {
ind = iC+1;
for (i=iC;i>=0;i--){
if ($t.p.colModel[i].hidden !== true) {
ind = i;
break;
}
}
}
if(act === 'rgt') {
ind = iC-1;
for (i=iC; i<$t.p.colModel.length;i++){
if ($t.p.colModel[i].hidden !== true) {
ind = i;
break;
}
}
}
return ind;
}
$(selection).insertBefore($t.grid.cDiv);
$("#"+$t.p.knv)
.focus()
.keydown(function (e){
kdir = e.keyCode;
if($t.p.direction === "rtl") {
if(kdir===37) { kdir = 39;}
else if (kdir===39) { kdir = 37; }
}
switch (kdir) {
case 38:
if ($t.p.iRow-1 >0 ) {
scrollGrid($t.p.iRow-1,$t.p.iCol,'vu');
$($t).jqGrid("editCell",$t.p.iRow-1,$t.p.iCol,false);
}
break;
case 40 :
if ($t.p.iRow+1 <= $t.rows.length-1) {
scrollGrid($t.p.iRow+1,$t.p.iCol,'vd');
$($t).jqGrid("editCell",$t.p.iRow+1,$t.p.iCol,false);
}
break;
case 37 :
if ($t.p.iCol -1 >= 0) {
i = findNextVisible($t.p.iCol-1,'lft');
scrollGrid($t.p.iRow, i,'h');
$($t).jqGrid("editCell",$t.p.iRow, i,false);
}
break;
case 39 :
if ($t.p.iCol +1 <= $t.p.colModel.length-1) {
i = findNextVisible($t.p.iCol+1,'rgt');
scrollGrid($t.p.iRow,i,'h');
$($t).jqGrid("editCell",$t.p.iRow,i,false);
}
break;
case 13:
if (parseInt($t.p.iCol,10)>=0 && parseInt($t.p.iRow,10)>=0) {
$($t).jqGrid("editCell",$t.p.iRow,$t.p.iCol,true);
}
break;
default :
return true;
}
return false;
});
});
},
getChangedCells : function (mthd) {
var ret=[];
if (!mthd) {mthd='all';}
this.each(function(){
var $t= this,nm;
if (!$t.grid || $t.p.cellEdit !== true ) {return;}
$($t.rows).each(function(j){
var res = {};
if ($(this).hasClass("edited")) {
$('td',this).each( function(i) {
nm = $t.p.colModel[i].name;
if ( nm !== 'cb' && nm !== 'subgrid') {
if (mthd==='dirty') {
if ($(this).hasClass('dirty-cell')) {
try {
res[nm] = $.unformat.call($t,this,{rowId:$t.rows[j].id, colModel:$t.p.colModel[i]},i);
} catch (e){
res[nm] = $.jgrid.htmlDecode($(this).html());
}
}
} else {
try {
res[nm] = $.unformat.call($t,this,{rowId:$t.rows[j].id,colModel:$t.p.colModel[i]},i);
} catch (e) {
res[nm] = $.jgrid.htmlDecode($(this).html());
}
}
}
});
res.id = this.id;
ret.push(res);
}
});
});
return ret;
}
/// end cell editing
});
})(jQuery);

View file

@ -0,0 +1,663 @@
/*jshint eqeqeq:false */
/*global jQuery */
(function($){
/*
* jqGrid common function
* Tony Tomov tony@trirand.com
* http://trirand.com/blog/
* Dual licensed under the MIT and GPL licenses:
* http://www.opensource.org/licenses/mit-license.php
* http://www.gnu.org/licenses/gpl-2.0.html
*/
"use strict";
$.extend($.jgrid,{
// Modal functions
showModal : function(h) {
h.w.show();
},
closeModal : function(h) {
h.w.hide().attr("aria-hidden","true");
if(h.o) {h.o.remove();}
},
hideModal : function (selector,o) {
o = $.extend({jqm : true, gb :''}, o || {});
if(o.onClose) {
var oncret = o.gb && typeof o.gb === "string" && o.gb.substr(0,6) === "#gbox_" ? o.onClose.call($("#" + o.gb.substr(6))[0], selector) : o.onClose(selector);
if (typeof oncret === 'boolean' && !oncret ) { return; }
}
if ($.fn.jqm && o.jqm === true) {
$(selector).attr("aria-hidden","true").jqmHide();
} else {
if(o.gb !== '') {
try {$(".jqgrid-overlay:first",o.gb).hide();} catch (e){}
}
$(selector).hide().attr("aria-hidden","true");
}
},
//Helper functions
findPos : function(obj) {
var curleft = 0, curtop = 0;
if (obj.offsetParent) {
do {
curleft += obj.offsetLeft;
curtop += obj.offsetTop;
} while (obj = obj.offsetParent);
//do not change obj == obj.offsetParent
}
return [curleft,curtop];
},
createModal : function(aIDs, content, p, insertSelector, posSelector, appendsel, css) {
p = $.extend(true, {}, $.jgrid.jqModal || {}, p);
var mw = document.createElement('div'), rtlsup, self = this;
css = $.extend({}, css || {});
rtlsup = $(p.gbox).attr("dir") === "rtl" ? true : false;
mw.className= "ui-widget ui-widget-content ui-corner-all ui-jqdialog";
mw.id = aIDs.themodal;
var mh = document.createElement('div');
mh.className = "ui-jqdialog-titlebar ui-widget-header ui-corner-all ui-helper-clearfix";
mh.id = aIDs.modalhead;
$(mh).append("<span class='ui-jqdialog-title'>"+p.caption+"</span>");
var ahr= $("<a class='ui-jqdialog-titlebar-close ui-corner-all'></a>")
.hover(function(){ahr.addClass('ui-state-hover');},
function(){ahr.removeClass('ui-state-hover');})
.append("<span class='ui-icon ui-icon-closethick'></span>");
$(mh).append(ahr);
if(rtlsup) {
mw.dir = "rtl";
$(".ui-jqdialog-title",mh).css("float","right");
$(".ui-jqdialog-titlebar-close",mh).css("left",0.3+"em");
} else {
mw.dir = "ltr";
$(".ui-jqdialog-title",mh).css("float","left");
$(".ui-jqdialog-titlebar-close",mh).css("right",0.3+"em");
}
var mc = document.createElement('div');
$(mc).addClass("ui-jqdialog-content ui-widget-content").attr("id",aIDs.modalcontent);
$(mc).append(content);
mw.appendChild(mc);
$(mw).prepend(mh);
if(appendsel===true) { $('body').append(mw); } //append as first child in body -for alert dialog
else if (typeof appendsel === "string") {
$(appendsel).append(mw);
} else {$(mw).insertBefore(insertSelector);}
$(mw).css(css);
if(p.jqModal === undefined) {p.jqModal = true;} // internal use
var coord = {};
if ( $.fn.jqm && p.jqModal === true) {
if(p.left ===0 && p.top===0 && p.overlay) {
var pos = [];
pos = $.jgrid.findPos(posSelector);
p.left = pos[0] + 4;
p.top = pos[1] + 4;
}
coord.top = p.top+"px";
coord.left = p.left;
} else if(p.left !==0 || p.top!==0) {
coord.left = p.left;
coord.top = p.top+"px";
}
$("a.ui-jqdialog-titlebar-close",mh).click(function(){
var oncm = $("#"+$.jgrid.jqID(aIDs.themodal)).data("onClose") || p.onClose;
var gboxclose = $("#"+$.jgrid.jqID(aIDs.themodal)).data("gbox") || p.gbox;
self.hideModal("#"+$.jgrid.jqID(aIDs.themodal),{gb:gboxclose,jqm:p.jqModal,onClose:oncm});
return false;
});
if (p.width === 0 || !p.width) {p.width = 300;}
if(p.height === 0 || !p.height) {p.height =200;}
if(!p.zIndex) {
var parentZ = $(insertSelector).parents("*[role=dialog]").filter(':first').css("z-index");
if(parentZ) {
p.zIndex = parseInt(parentZ,10)+2;
} else {
p.zIndex = 950;
}
}
var rtlt = 0;
if( rtlsup && coord.left && !appendsel) {
rtlt = $(p.gbox).width()- (!isNaN(p.width) ? parseInt(p.width,10) :0) - 8; // to do
// just in case
coord.left = parseInt(coord.left,10) + parseInt(rtlt,10);
}
if(coord.left) { coord.left += "px"; }
$(mw).css($.extend({
width: isNaN(p.width) ? "auto": p.width+"px",
height:isNaN(p.height) ? "auto" : p.height + "px",
zIndex:p.zIndex,
overflow: 'hidden'
},coord))
.attr({tabIndex: "-1","role":"dialog","aria-labelledby":aIDs.modalhead,"aria-hidden":"true"});
if(p.drag === undefined) { p.drag=true;}
if(p.resize === undefined) {p.resize=true;}
if (p.drag) {
$(mh).css('cursor','move');
if($.fn.jqDrag) {
$(mw).jqDrag(mh);
} else {
try {
$(mw).draggable({handle: $("#"+$.jgrid.jqID(mh.id))});
} catch (e) {}
}
}
if(p.resize) {
if($.fn.jqResize) {
$(mw).append("<div class='jqResize ui-resizable-handle ui-resizable-se ui-icon ui-icon-gripsmall-diagonal-se'></div>");
$("#"+$.jgrid.jqID(aIDs.themodal)).jqResize(".jqResize",aIDs.scrollelm ? "#"+$.jgrid.jqID(aIDs.scrollelm) : false);
} else {
try {
$(mw).resizable({handles: 'se, sw',alsoResize: aIDs.scrollelm ? "#"+$.jgrid.jqID(aIDs.scrollelm) : false});
} catch (r) {}
}
}
if(p.closeOnEscape === true){
$(mw).keydown( function( e ) {
if( e.which == 27 ) {
var cone = $("#"+$.jgrid.jqID(aIDs.themodal)).data("onClose") || p.onClose;
self.hideModal("#"+$.jgrid.jqID(aIDs.themodal),{gb:p.gbox,jqm:p.jqModal,onClose: cone});
}
});
}
},
viewModal : function (selector,o){
o = $.extend({
toTop: true,
overlay: 10,
modal: false,
overlayClass : 'ui-widget-overlay',
onShow: $.jgrid.showModal,
onHide: $.jgrid.closeModal,
gbox: '',
jqm : true,
jqM : true
}, o || {});
if ($.fn.jqm && o.jqm === true) {
if(o.jqM) { $(selector).attr("aria-hidden","false").jqm(o).jqmShow(); }
else {$(selector).attr("aria-hidden","false").jqmShow();}
} else {
if(o.gbox !== '') {
$(".jqgrid-overlay:first",o.gbox).show();
$(selector).data("gbox",o.gbox);
}
$(selector).show().attr("aria-hidden","false");
try{$(':input:visible',selector)[0].focus();}catch(_){}
}
},
info_dialog : function(caption, content,c_b, modalopt) {
var mopt = {
width:290,
height:'auto',
dataheight: 'auto',
drag: true,
resize: false,
left:250,
top:170,
zIndex : 1000,
jqModal : true,
modal : false,
closeOnEscape : true,
align: 'center',
buttonalign : 'center',
buttons : []
// {text:'textbutt', id:"buttid", onClick : function(){...}}
// if the id is not provided we set it like info_button_+ the index in the array - i.e info_button_0,info_button_1...
};
$.extend(true, mopt, $.jgrid.jqModal || {}, {caption:"<b>"+caption+"</b>"}, modalopt || {});
var jm = mopt.jqModal, self = this;
if($.fn.jqm && !jm) { jm = false; }
// in case there is no jqModal
var buttstr ="", i;
if(mopt.buttons.length > 0) {
for(i=0;i<mopt.buttons.length;i++) {
if(mopt.buttons[i].id === undefined) { mopt.buttons[i].id = "info_button_"+i; }
buttstr += "<a id='"+mopt.buttons[i].id+"' class='fm-button ui-state-default ui-corner-all'>"+mopt.buttons[i].text+"</a>";
}
}
var dh = isNaN(mopt.dataheight) ? mopt.dataheight : mopt.dataheight+"px",
cn = "text-align:"+mopt.align+";";
var cnt = "<div id='info_id'>";
cnt += "<div id='infocnt' style='margin:0px;padding-bottom:1em;width:100%;overflow:auto;position:relative;height:"+dh+";"+cn+"'>"+content+"</div>";
cnt += c_b ? "<div class='ui-widget-content ui-helper-clearfix' style='text-align:"+mopt.buttonalign+";padding-bottom:0.8em;padding-top:0.5em;background-image: none;border-width: 1px 0 0 0;'><a id='closedialog' class='fm-button ui-state-default ui-corner-all'>"+c_b+"</a>"+buttstr+"</div>" :
buttstr !== "" ? "<div class='ui-widget-content ui-helper-clearfix' style='text-align:"+mopt.buttonalign+";padding-bottom:0.8em;padding-top:0.5em;background-image: none;border-width: 1px 0 0 0;'>"+buttstr+"</div>" : "";
cnt += "</div>";
try {
if($("#info_dialog").attr("aria-hidden") === "false") {
$.jgrid.hideModal("#info_dialog",{jqm:jm});
}
$("#info_dialog").remove();
} catch (e){}
$.jgrid.createModal({
themodal:'info_dialog',
modalhead:'info_head',
modalcontent:'info_content',
scrollelm: 'infocnt'},
cnt,
mopt,
'','',true
);
// attach onclick after inserting into the dom
if(buttstr) {
$.each(mopt.buttons,function(i){
$("#"+$.jgrid.jqID(this.id),"#info_id").bind('click',function(){mopt.buttons[i].onClick.call($("#info_dialog")); return false;});
});
}
$("#closedialog", "#info_id").click(function(){
self.hideModal("#info_dialog",{
jqm:jm,
onClose: $("#info_dialog").data("onClose") || mopt.onClose,
gb: $("#info_dialog").data("gbox") || mopt.gbox
});
return false;
});
$(".fm-button","#info_dialog").hover(
function(){$(this).addClass('ui-state-hover');},
function(){$(this).removeClass('ui-state-hover');}
);
if($.isFunction(mopt.beforeOpen) ) { mopt.beforeOpen(); }
$.jgrid.viewModal("#info_dialog",{
onHide: function(h) {
h.w.hide().remove();
if(h.o) { h.o.remove(); }
},
modal :mopt.modal,
jqm:jm
});
if($.isFunction(mopt.afterOpen) ) { mopt.afterOpen(); }
try{ $("#info_dialog").focus();} catch (m){}
},
bindEv: function (el, opt) {
var $t = this;
if($.isFunction(opt.dataInit)) {
opt.dataInit.call($t,el,opt);
}
if(opt.dataEvents) {
$.each(opt.dataEvents, function() {
if (this.data !== undefined) {
$(el).bind(this.type, this.data, this.fn);
} else {
$(el).bind(this.type, this.fn);
}
});
}
},
// Form Functions
createEl : function(eltype,options,vl,autowidth, ajaxso) {
var elem = "", $t = this;
function setAttributes(elm, atr, exl ) {
var exclude = ['dataInit','dataEvents','dataUrl', 'buildSelect','sopt', 'searchhidden', 'defaultValue', 'attr', 'custom_element', 'custom_value'];
if(exl !== undefined && $.isArray(exl)) {
$.merge(exclude, exl);
}
$.each(atr, function(key, value){
if($.inArray(key, exclude) === -1) {
$(elm).attr(key,value);
}
});
if(!atr.hasOwnProperty('id')) {
$(elm).attr('id', $.jgrid.randId());
}
}
switch (eltype)
{
case "textarea" :
elem = document.createElement("textarea");
if(autowidth) {
if(!options.cols) { $(elem).css({width:"98%"});}
} else if (!options.cols) { options.cols = 20; }
if(!options.rows) { options.rows = 2; }
if(vl==='&nbsp;' || vl==='&#160;' || (vl.length===1 && vl.charCodeAt(0)===160)) {vl="";}
elem.value = vl;
setAttributes(elem, options);
$(elem).attr({"role":"textbox","multiline":"true"});
break;
case "checkbox" : //what code for simple checkbox
elem = document.createElement("input");
elem.type = "checkbox";
if( !options.value ) {
var vl1 = (vl+"").toLowerCase();
if(vl1.search(/(false|f|0|no|n|off|undefined)/i)<0 && vl1!=="") {
elem.checked=true;
elem.defaultChecked=true;
elem.value = vl;
} else {
elem.value = "on";
}
$(elem).attr("offval","off");
} else {
var cbval = options.value.split(":");
if(vl === cbval[0]) {
elem.checked=true;
elem.defaultChecked=true;
}
elem.value = cbval[0];
$(elem).attr("offval",cbval[1]);
}
setAttributes(elem, options, ['value']);
$(elem).attr("role","checkbox");
break;
case "select" :
elem = document.createElement("select");
elem.setAttribute("role","select");
var msl, ovm = [];
if(options.multiple===true) {
msl = true;
elem.multiple="multiple";
$(elem).attr("aria-multiselectable","true");
} else { msl = false; }
if(options.dataUrl !== undefined) {
var rowid = null, postData = options.postData || ajaxso.postData;
try {
rowid = options.rowId;
} catch(e) {}
if ($t.p && $t.p.idPrefix) {
rowid = $.jgrid.stripPref($t.p.idPrefix, rowid);
}
$.ajax($.extend({
url: $.isFunction(options.dataUrl) ? options.dataUrl.call($t, rowid, vl, String(options.name)) : options.dataUrl,
type : "GET",
dataType: "html",
data: $.isFunction(postData) ? postData.call($t, rowid, vl, String(options.name)) : postData,
context: {elem:elem, options:options, vl:vl},
success: function(data){
var ovm = [], elem = this.elem, vl = this.vl,
options = $.extend({},this.options),
msl = options.multiple===true,
a = $.isFunction(options.buildSelect) ? options.buildSelect.call($t,data) : data;
if(typeof a === 'string') {
a = $( $.trim( a ) ).html();
}
if(a) {
$(elem).append(a);
setAttributes(elem, options, postData ? ['postData'] : undefined );
if(options.size === undefined) { options.size = msl ? 3 : 1;}
if(msl) {
ovm = vl.split(",");
ovm = $.map(ovm,function(n){return $.trim(n);});
} else {
ovm[0] = $.trim(vl);
}
//$(elem).attr(options);
setTimeout(function(){
$("option",elem).each(function(i){
//if(i===0) { this.selected = ""; }
// fix IE8/IE7 problem with selecting of the first item on multiple=true
if (i === 0 && elem.multiple) { this.selected = false; }
$(this).attr("role","option");
if($.inArray($.trim($(this).text()),ovm) > -1 || $.inArray($.trim($(this).val()),ovm) > -1 ) {
this.selected= "selected";
}
});
},0);
}
}
},ajaxso || {}));
} else if(options.value) {
var i;
if(options.size === undefined) {
options.size = msl ? 3 : 1;
}
if(msl) {
ovm = vl.split(",");
ovm = $.map(ovm,function(n){return $.trim(n);});
}
if(typeof options.value === 'function') { options.value = options.value(); }
var so,sv, ov,
sep = options.separator === undefined ? ":" : options.separator,
delim = options.delimiter === undefined ? ";" : options.delimiter;
if(typeof options.value === 'string') {
so = options.value.split(delim);
for(i=0; i<so.length;i++){
sv = so[i].split(sep);
if(sv.length > 2 ) {
sv[1] = $.map(sv,function(n,ii){if(ii>0) { return n;} }).join(sep);
}
ov = document.createElement("option");
ov.setAttribute("role","option");
ov.value = sv[0]; ov.innerHTML = sv[1];
elem.appendChild(ov);
if (!msl && ($.trim(sv[0]) === $.trim(vl) || $.trim(sv[1]) === $.trim(vl))) { ov.selected ="selected"; }
if (msl && ($.inArray($.trim(sv[1]), ovm)>-1 || $.inArray($.trim(sv[0]), ovm)>-1)) {ov.selected ="selected";}
}
} else if (typeof options.value === 'object') {
var oSv = options.value, key;
for (key in oSv) {
if (oSv.hasOwnProperty(key ) ){
ov = document.createElement("option");
ov.setAttribute("role","option");
ov.value = key; ov.innerHTML = oSv[key];
elem.appendChild(ov);
if (!msl && ( $.trim(key) === $.trim(vl) || $.trim(oSv[key]) === $.trim(vl)) ) { ov.selected ="selected"; }
if (msl && ($.inArray($.trim(oSv[key]),ovm)>-1 || $.inArray($.trim(key),ovm)>-1)) { ov.selected ="selected"; }
}
}
}
setAttributes(elem, options, ['value']);
}
break;
case "text" :
case "password" :
case "button" :
var role;
if(eltype==="button") { role = "button"; }
else { role = "textbox"; }
elem = document.createElement("input");
elem.type = eltype;
elem.value = vl;
setAttributes(elem, options);
if(eltype !== "button"){
if(autowidth) {
if(!options.size) { $(elem).css({width:"98%"}); }
} else if (!options.size) { options.size = 20; }
}
$(elem).attr("role",role);
break;
case "image" :
case "file" :
elem = document.createElement("input");
elem.type = eltype;
setAttributes(elem, options);
break;
case "custom" :
elem = document.createElement("span");
try {
if($.isFunction(options.custom_element)) {
var celm = options.custom_element.call($t,vl,options);
if(celm) {
celm = $(celm).addClass("customelement").attr({id:options.id,name:options.name});
$(elem).empty().append(celm);
} else {
throw "e2";
}
} else {
throw "e1";
}
} catch (e) {
if (e==="e1") { $.jgrid.info_dialog($.jgrid.errors.errcap,"function 'custom_element' "+$.jgrid.edit.msg.nodefined, $.jgrid.edit.bClose);}
if (e==="e2") { $.jgrid.info_dialog($.jgrid.errors.errcap,"function 'custom_element' "+$.jgrid.edit.msg.novalue,$.jgrid.edit.bClose);}
else { $.jgrid.info_dialog($.jgrid.errors.errcap,typeof e==="string"?e:e.message,$.jgrid.edit.bClose); }
}
break;
}
return elem;
},
// Date Validation Javascript
checkDate : function (format, date) {
var daysInFebruary = function(year){
// February has 29 days in any year evenly divisible by four,
// EXCEPT for centurial years which are not also divisible by 400.
return (((year % 4 === 0) && ( year % 100 !== 0 || (year % 400 === 0))) ? 29 : 28 );
},
tsp = {}, sep;
format = format.toLowerCase();
//we search for /,-,. for the date separator
if(format.indexOf("/") !== -1) {
sep = "/";
} else if(format.indexOf("-") !== -1) {
sep = "-";
} else if(format.indexOf(".") !== -1) {
sep = ".";
} else {
sep = "/";
}
format = format.split(sep);
date = date.split(sep);
if (date.length !== 3) { return false; }
var j=-1,yln, dln=-1, mln=-1, i;
for(i=0;i<format.length;i++){
var dv = isNaN(date[i]) ? 0 : parseInt(date[i],10);
tsp[format[i]] = dv;
yln = format[i];
if(yln.indexOf("y") !== -1) { j=i; }
if(yln.indexOf("m") !== -1) { mln=i; }
if(yln.indexOf("d") !== -1) { dln=i; }
}
if (format[j] === "y" || format[j] === "yyyy") {
yln=4;
} else if(format[j] ==="yy"){
yln = 2;
} else {
yln = -1;
}
var daysInMonth = [0,31,29,31,30,31,30,31,31,30,31,30,31],
strDate;
if (j === -1) {
return false;
}
strDate = tsp[format[j]].toString();
if(yln === 2 && strDate.length === 1) {yln = 1;}
if (strDate.length !== yln || (tsp[format[j]]===0 && date[j]!=="00")){
return false;
}
if(mln === -1) {
return false;
}
strDate = tsp[format[mln]].toString();
if (strDate.length<1 || tsp[format[mln]]<1 || tsp[format[mln]]>12){
return false;
}
if(dln === -1) {
return false;
}
strDate = tsp[format[dln]].toString();
if (strDate.length<1 || tsp[format[dln]]<1 || tsp[format[dln]]>31 || (tsp[format[mln]]===2 && tsp[format[dln]]>daysInFebruary(tsp[format[j]])) || tsp[format[dln]] > daysInMonth[tsp[format[mln]]]){
return false;
}
return true;
},
isEmpty : function(val)
{
if (val.match(/^\s+$/) || val === "") {
return true;
}
return false;
},
checkTime : function(time){
// checks only hh:ss (and optional am/pm)
var re = /^(\d{1,2}):(\d{2})([apAP][Mm])?$/,regs;
if(!$.jgrid.isEmpty(time))
{
regs = time.match(re);
if(regs) {
if(regs[3]) {
if(regs[1] < 1 || regs[1] > 12) { return false; }
} else {
if(regs[1] > 23) { return false; }
}
if(regs[2] > 59) {
return false;
}
} else {
return false;
}
}
return true;
},
checkValues : function(val, valref, customobject, nam) {
var edtrul,i, nm, dft, len, g = this, cm = g.p.colModel;
if(customobject === undefined) {
if(typeof valref==='string'){
for( i =0, len=cm.length;i<len; i++){
if(cm[i].name===valref) {
edtrul = cm[i].editrules;
valref = i;
if(cm[i].formoptions != null) { nm = cm[i].formoptions.label; }
break;
}
}
} else if(valref >=0) {
edtrul = cm[valref].editrules;
}
} else {
edtrul = customobject;
nm = nam===undefined ? "_" : nam;
}
if(edtrul) {
if(!nm) { nm = g.p.colNames != null ? g.p.colNames[valref] : cm[valref].label; }
if(edtrul.required === true) {
if( $.jgrid.isEmpty(val) ) { return [false,nm+": "+$.jgrid.edit.msg.required,""]; }
}
// force required
var rqfield = edtrul.required === false ? false : true;
if(edtrul.number === true) {
if( !(rqfield === false && $.jgrid.isEmpty(val)) ) {
if(isNaN(val)) { return [false,nm+": "+$.jgrid.edit.msg.number,""]; }
}
}
if(edtrul.minValue !== undefined && !isNaN(edtrul.minValue)) {
if (parseFloat(val) < parseFloat(edtrul.minValue) ) { return [false,nm+": "+$.jgrid.edit.msg.minValue+" "+edtrul.minValue,""];}
}
if(edtrul.maxValue !== undefined && !isNaN(edtrul.maxValue)) {
if (parseFloat(val) > parseFloat(edtrul.maxValue) ) { return [false,nm+": "+$.jgrid.edit.msg.maxValue+" "+edtrul.maxValue,""];}
}
var filter;
if(edtrul.email === true) {
if( !(rqfield === false && $.jgrid.isEmpty(val)) ) {
// taken from $ Validate plugin
filter = /^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?$/i;
if(!filter.test(val)) {return [false,nm+": "+$.jgrid.edit.msg.email,""];}
}
}
if(edtrul.integer === true) {
if( !(rqfield === false && $.jgrid.isEmpty(val)) ) {
if(isNaN(val)) { return [false,nm+": "+$.jgrid.edit.msg.integer,""]; }
if ((val % 1 !== 0) || (val.indexOf('.') !== -1)) { return [false,nm+": "+$.jgrid.edit.msg.integer,""];}
}
}
if(edtrul.date === true) {
if( !(rqfield === false && $.jgrid.isEmpty(val)) ) {
if(cm[valref].formatoptions && cm[valref].formatoptions.newformat) {
dft = cm[valref].formatoptions.newformat;
if( $.jgrid.formatter.date.masks.hasOwnProperty(dft) ) {
dft = $.jgrid.formatter.date.masks[dft];
}
} else {
dft = cm[valref].datefmt || "Y-m-d";
}
if(!$.jgrid.checkDate (dft, val)) { return [false,nm+": "+$.jgrid.edit.msg.date+" - "+dft,""]; }
}
}
if(edtrul.time === true) {
if( !(rqfield === false && $.jgrid.isEmpty(val)) ) {
if(!$.jgrid.checkTime (val)) { return [false,nm+": "+$.jgrid.edit.msg.date+" - hh:mm (am/pm)",""]; }
}
}
if(edtrul.url === true) {
if( !(rqfield === false && $.jgrid.isEmpty(val)) ) {
filter = /^(((https?)|(ftp)):\/\/([\-\w]+\.)+\w{2,3}(\/[%\-\w]+(\.\w{2,})?)*(([\w\-\.\?\\\/+@&#;`~=%!]*)(\.\w{2,})?)*\/?)/i;
if(!filter.test(val)) {return [false,nm+": "+$.jgrid.edit.msg.url,""];}
}
}
if(edtrul.custom === true) {
if( !(rqfield === false && $.jgrid.isEmpty(val)) ) {
if($.isFunction(edtrul.custom_func)) {
var ret = edtrul.custom_func.call(g,val,nm,valref);
return $.isArray(ret) ? ret : [false,$.jgrid.edit.msg.customarray,""];
}
return [false,$.jgrid.edit.msg.customfcheck,""];
}
}
}
return [true,"",""];
}
});
})(jQuery);

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,712 @@
/*
* jqFilter jQuery jqGrid filter addon.
* Copyright (c) 2011, Tony Tomov, tony@trirand.com
* Dual licensed under the MIT and GPL licenses
* http://www.opensource.org/licenses/mit-license.php
* http://www.gnu.org/licenses/gpl-2.0.html
*
* The work is inspired from this Stefan Pirvu
* http://www.codeproject.com/KB/scripting/json-filtering.aspx
*
* The filter uses JSON entities to hold filter rules and groups. Here is an example of a filter:
{ "groupOp": "AND",
"groups" : [
{ "groupOp": "OR",
"rules": [
{ "field": "name", "op": "eq", "data": "England" },
{ "field": "id", "op": "le", "data": "5"}
]
}
],
"rules": [
{ "field": "name", "op": "eq", "data": "Romania" },
{ "field": "id", "op": "le", "data": "1"}
]
}
*/
/*jshint eqeqeq:false, eqnull:true, devel:true */
/*global jQuery */
(function ($) {
"use strict";
$.fn.jqFilter = function( arg ) {
if (typeof arg === 'string') {
var fn = $.fn.jqFilter[arg];
if (!fn) {
throw ("jqFilter - No such method: " + arg);
}
var args = $.makeArray(arguments).slice(1);
return fn.apply(this,args);
}
var p = $.extend(true,{
filter: null,
columns: [],
onChange : null,
afterRedraw : null,
checkValues : null,
error: false,
errmsg : "",
errorcheck : true,
showQuery : true,
sopt : null,
ops : [],
operands : null,
numopts : ['eq','ne', 'lt', 'le', 'gt', 'ge', 'nu', 'nn', 'in', 'ni'],
stropts : ['eq', 'ne', 'bw', 'bn', 'ew', 'en', 'cn', 'nc', 'nu', 'nn', 'in', 'ni'],
strarr : ['text', 'string', 'blob'],
groupOps : [{ op: "AND", text: "AND" }, { op: "OR", text: "OR" }],
groupButton : true,
ruleButtons : true,
direction : "ltr"
}, $.jgrid.filter, arg || {});
return this.each( function() {
if (this.filter) {return;}
this.p = p;
// setup filter in case if they is not defined
if (this.p.filter === null || this.p.filter === undefined) {
this.p.filter = {
groupOp: this.p.groupOps[0].op,
rules: [],
groups: []
};
}
var i, len = this.p.columns.length, cl,
isIE = /msie/i.test(navigator.userAgent) && !window.opera;
// translating the options
this.p.initFilter = $.extend(true,{},this.p.filter);
// set default values for the columns if they are not set
if( !len ) {return;}
for(i=0; i < len; i++) {
cl = this.p.columns[i];
if( cl.stype ) {
// grid compatibility
cl.inputtype = cl.stype;
} else if(!cl.inputtype) {
cl.inputtype = 'text';
}
if( cl.sorttype ) {
// grid compatibility
cl.searchtype = cl.sorttype;
} else if (!cl.searchtype) {
cl.searchtype = 'string';
}
if(cl.hidden === undefined) {
// jqGrid compatibility
cl.hidden = false;
}
if(!cl.label) {
cl.label = cl.name;
}
if(cl.index) {
cl.name = cl.index;
}
if(!cl.hasOwnProperty('searchoptions')) {
cl.searchoptions = {};
}
if(!cl.hasOwnProperty('searchrules')) {
cl.searchrules = {};
}
}
if(this.p.showQuery) {
$(this).append("<table class='queryresult ui-widget ui-widget-content' style='display:block;max-width:440px;border:0px none;' dir='"+this.p.direction+"'><tbody><tr><td class='query'></td></tr></tbody></table>");
}
var getGrid = function () {
return $("#" + $.jgrid.jqID(p.id))[0] || null;
};
/*
*Perform checking.
*
*/
var checkData = function(val, colModelItem) {
var ret = [true,""], $t = getGrid();
if($.isFunction(colModelItem.searchrules)) {
ret = colModelItem.searchrules.call($t, val, colModelItem);
} else if($.jgrid && $.jgrid.checkValues) {
try {
ret = $.jgrid.checkValues.call($t, val, -1, colModelItem.searchrules, colModelItem.label);
} catch (e) {}
}
if(ret && ret.length && ret[0] === false) {
p.error = !ret[0];
p.errmsg = ret[1];
}
};
/* moving to common
randId = function() {
return Math.floor(Math.random()*10000).toString();
};
*/
this.onchange = function ( ){
// clear any error
this.p.error = false;
this.p.errmsg="";
return $.isFunction(this.p.onChange) ? this.p.onChange.call( this, this.p ) : false;
};
/*
* Redraw the filter every time when new field is added/deleted
* and field is changed
*/
this.reDraw = function() {
$("table.group:first",this).remove();
var t = this.createTableForGroup(p.filter, null);
$(this).append(t);
if($.isFunction(this.p.afterRedraw) ) {
this.p.afterRedraw.call(this, this.p);
}
};
/*
* Creates a grouping data for the filter
* @param group - object
* @param parentgroup - object
*/
this.createTableForGroup = function(group, parentgroup) {
var that = this, i;
// this table will hold all the group (tables) and rules (rows)
var table = $("<table class='group ui-widget ui-widget-content' style='border:0px none;'><tbody></tbody></table>"),
// create error message row
align = "left";
if(this.p.direction === "rtl") {
align = "right";
table.attr("dir","rtl");
}
if(parentgroup === null) {
table.append("<tr class='error' style='display:none;'><th colspan='5' class='ui-state-error' align='"+align+"'></th></tr>");
}
var tr = $("<tr></tr>");
table.append(tr);
// this header will hold the group operator type and group action buttons for
// creating subgroup "+ {}", creating rule "+" or deleting the group "-"
var th = $("<th colspan='5' align='"+align+"'></th>");
tr.append(th);
if(this.p.ruleButtons === true) {
// dropdown for: choosing group operator type
var groupOpSelect = $("<select class='opsel'></select>");
th.append(groupOpSelect);
// populate dropdown with all posible group operators: or, and
var str= "", selected;
for (i = 0; i < p.groupOps.length; i++) {
selected = group.groupOp === that.p.groupOps[i].op ? " selected='selected'" :"";
str += "<option value='"+that.p.groupOps[i].op+"'" + selected+">"+that.p.groupOps[i].text+"</option>";
}
groupOpSelect
.append(str)
.bind('change',function() {
group.groupOp = $(groupOpSelect).val();
that.onchange(); // signals that the filter has changed
});
}
// button for adding a new subgroup
var inputAddSubgroup ="<span></span>";
if(this.p.groupButton) {
inputAddSubgroup = $("<input type='button' value='+ {}' title='Add subgroup' class='add-group'/>");
inputAddSubgroup.bind('click',function() {
if (group.groups === undefined ) {
group.groups = [];
}
group.groups.push({
groupOp: p.groupOps[0].op,
rules: [],
groups: []
}); // adding a new group
that.reDraw(); // the html has changed, force reDraw
that.onchange(); // signals that the filter has changed
return false;
});
}
th.append(inputAddSubgroup);
if(this.p.ruleButtons === true) {
// button for adding a new rule
var inputAddRule = $("<input type='button' value='+' title='Add rule' class='add-rule ui-add'/>"), cm;
inputAddRule.bind('click',function() {
//if(!group) { group = {};}
if (group.rules === undefined) {
group.rules = [];
}
for (i = 0; i < that.p.columns.length; i++) {
// but show only serchable and serchhidden = true fields
var searchable = (that.p.columns[i].search === undefined) ? true: that.p.columns[i].search,
hidden = (that.p.columns[i].hidden === true),
ignoreHiding = (that.p.columns[i].searchoptions.searchhidden === true);
if ((ignoreHiding && searchable) || (searchable && !hidden)) {
cm = that.p.columns[i];
break;
}
}
var opr;
if( cm.searchoptions.sopt ) {opr = cm.searchoptions.sopt;}
else if(that.p.sopt) { opr= that.p.sopt; }
else if ( $.inArray(cm.searchtype, that.p.strarr) !== -1 ) {opr = that.p.stropts;}
else {opr = that.p.numopts;}
group.rules.push({
field: cm.name,
op: opr[0],
data: ""
}); // adding a new rule
that.reDraw(); // the html has changed, force reDraw
// for the moment no change have been made to the rule, so
// this will not trigger onchange event
return false;
});
th.append(inputAddRule);
}
// button for delete the group
if (parentgroup !== null) { // ignore the first group
var inputDeleteGroup = $("<input type='button' value='-' title='Delete group' class='delete-group'/>");
th.append(inputDeleteGroup);
inputDeleteGroup.bind('click',function() {
// remove group from parent
for (i = 0; i < parentgroup.groups.length; i++) {
if (parentgroup.groups[i] === group) {
parentgroup.groups.splice(i, 1);
break;
}
}
that.reDraw(); // the html has changed, force reDraw
that.onchange(); // signals that the filter has changed
return false;
});
}
// append subgroup rows
if (group.groups !== undefined) {
for (i = 0; i < group.groups.length; i++) {
var trHolderForSubgroup = $("<tr></tr>");
table.append(trHolderForSubgroup);
var tdFirstHolderForSubgroup = $("<td class='first'></td>");
trHolderForSubgroup.append(tdFirstHolderForSubgroup);
var tdMainHolderForSubgroup = $("<td colspan='4'></td>");
tdMainHolderForSubgroup.append(this.createTableForGroup(group.groups[i], group));
trHolderForSubgroup.append(tdMainHolderForSubgroup);
}
}
if(group.groupOp === undefined) {
group.groupOp = that.p.groupOps[0].op;
}
// append rules rows
if (group.rules !== undefined) {
for (i = 0; i < group.rules.length; i++) {
table.append(
this.createTableRowForRule(group.rules[i], group)
);
}
}
return table;
};
/*
* Create the rule data for the filter
*/
this.createTableRowForRule = function(rule, group ) {
// save current entity in a variable so that it could
// be referenced in anonimous method calls
var that=this, $t = getGrid(), tr = $("<tr></tr>"),
//document.createElement("tr"),
// first column used for padding
//tdFirstHolderForRule = document.createElement("td"),
i, op, trpar, cm, str="", selected;
//tdFirstHolderForRule.setAttribute("class", "first");
tr.append("<td class='first'></td>");
// create field container
var ruleFieldTd = $("<td class='columns'></td>");
tr.append(ruleFieldTd);
// dropdown for: choosing field
var ruleFieldSelect = $("<select></select>"), ina, aoprs = [];
ruleFieldTd.append(ruleFieldSelect);
ruleFieldSelect.bind('change',function() {
rule.field = $(ruleFieldSelect).val();
trpar = $(this).parents("tr:first");
for (i=0;i<that.p.columns.length;i++) {
if(that.p.columns[i].name === rule.field) {
cm = that.p.columns[i];
break;
}
}
if(!cm) {return;}
cm.searchoptions.id = $.jgrid.randId();
if(isIE && cm.inputtype === "text") {
if(!cm.searchoptions.size) {
cm.searchoptions.size = 10;
}
}
var elm = $.jgrid.createEl.call($t, cm.inputtype,cm.searchoptions, "", true, that.p.ajaxSelectOptions || {}, true);
$(elm).addClass("input-elm");
//that.createElement(rule, "");
if( cm.searchoptions.sopt ) {op = cm.searchoptions.sopt;}
else if(that.p.sopt) { op= that.p.sopt; }
else if ($.inArray(cm.searchtype, that.p.strarr) !== -1) {op = that.p.stropts;}
else {op = that.p.numopts;}
// operators
var s ="", so = 0;
aoprs = [];
$.each(that.p.ops, function() { aoprs.push(this.oper); });
for ( i = 0 ; i < op.length; i++) {
ina = $.inArray(op[i],aoprs);
if(ina !== -1) {
if(so===0) {
rule.op = that.p.ops[ina].oper;
}
s += "<option value='"+that.p.ops[ina].oper+"'>"+that.p.ops[ina].text+"</option>";
so++;
}
}
$(".selectopts",trpar).empty().append( s );
$(".selectopts",trpar)[0].selectedIndex = 0;
if( $.jgrid.msie && $.jgrid.msiever() < 9) {
var sw = parseInt($("select.selectopts",trpar)[0].offsetWidth, 10) + 1;
$(".selectopts",trpar).width( sw );
$(".selectopts",trpar).css("width","auto");
}
// data
$(".data",trpar).empty().append( elm );
$.jgrid.bindEv.call($t, elm, cm.searchoptions);
$(".input-elm",trpar).bind('change',function( e ) {
var elem = e.target;
rule.data = elem.nodeName.toUpperCase() === "SPAN" && cm.searchoptions && $.isFunction(cm.searchoptions.custom_value) ?
cm.searchoptions.custom_value.call($t, $(elem).children(".customelement:first"), 'get') : elem.value;
that.onchange(); // signals that the filter has changed
});
setTimeout(function(){ //IE, Opera, Chrome
rule.data = $(elm).val();
that.onchange(); // signals that the filter has changed
}, 0);
});
// populate drop down with user provided column definitions
var j=0;
for (i = 0; i < that.p.columns.length; i++) {
// but show only serchable and serchhidden = true fields
var searchable = (that.p.columns[i].search === undefined) ? true: that.p.columns[i].search,
hidden = (that.p.columns[i].hidden === true),
ignoreHiding = (that.p.columns[i].searchoptions.searchhidden === true);
if ((ignoreHiding && searchable) || (searchable && !hidden)) {
selected = "";
if(rule.field === that.p.columns[i].name) {
selected = " selected='selected'";
j=i;
}
str += "<option value='"+that.p.columns[i].name+"'" +selected+">"+that.p.columns[i].label+"</option>";
}
}
ruleFieldSelect.append( str );
// create operator container
var ruleOperatorTd = $("<td class='operators'></td>");
tr.append(ruleOperatorTd);
cm = p.columns[j];
// create it here so it can be referentiated in the onchange event
//var RD = that.createElement(rule, rule.data);
cm.searchoptions.id = $.jgrid.randId();
if(isIE && cm.inputtype === "text") {
if(!cm.searchoptions.size) {
cm.searchoptions.size = 10;
}
}
var ruleDataInput = $.jgrid.createEl.call($t, cm.inputtype,cm.searchoptions, rule.data, true, that.p.ajaxSelectOptions || {}, true);
if(rule.op === 'nu' || rule.op === 'nn') {
$(ruleDataInput).attr('readonly','true');
$(ruleDataInput).attr('disabled','true');
} //retain the state of disabled text fields in case of null ops
// dropdown for: choosing operator
var ruleOperatorSelect = $("<select class='selectopts'></select>");
ruleOperatorTd.append(ruleOperatorSelect);
ruleOperatorSelect.bind('change',function() {
rule.op = $(ruleOperatorSelect).val();
trpar = $(this).parents("tr:first");
var rd = $(".input-elm",trpar)[0];
if (rule.op === "nu" || rule.op === "nn") { // disable for operator "is null" and "is not null"
rule.data = "";
if(rd.tagName.toUpperCase() !== 'SELECT') rd.value = "";
rd.setAttribute("readonly", "true");
rd.setAttribute("disabled", "true");
} else {
if(rd.tagName.toUpperCase() === 'SELECT') rule.data = rd.value;
rd.removeAttribute("readonly");
rd.removeAttribute("disabled");
}
that.onchange(); // signals that the filter has changed
});
// populate drop down with all available operators
if( cm.searchoptions.sopt ) {op = cm.searchoptions.sopt;}
else if(that.p.sopt) { op= that.p.sopt; }
else if ($.inArray(cm.searchtype, that.p.strarr) !== -1) {op = that.p.stropts;}
else {op = that.p.numopts;}
str="";
$.each(that.p.ops, function() { aoprs.push(this.oper); });
for ( i = 0; i < op.length; i++) {
ina = $.inArray(op[i],aoprs);
if(ina !== -1) {
selected = rule.op === that.p.ops[ina].oper ? " selected='selected'" : "";
str += "<option value='"+that.p.ops[ina].oper+"'"+selected+">"+that.p.ops[ina].text+"</option>";
}
}
ruleOperatorSelect.append( str );
// create data container
var ruleDataTd = $("<td class='data'></td>");
tr.append(ruleDataTd);
// textbox for: data
// is created previously
//ruleDataInput.setAttribute("type", "text");
ruleDataTd.append(ruleDataInput);
$.jgrid.bindEv.call($t, ruleDataInput, cm.searchoptions);
$(ruleDataInput)
.addClass("input-elm")
.bind('change', function() {
rule.data = cm.inputtype === 'custom' ? cm.searchoptions.custom_value.call($t, $(this).children(".customelement:first"),'get') : $(this).val();
that.onchange(); // signals that the filter has changed
});
// create action container
var ruleDeleteTd = $("<td></td>");
tr.append(ruleDeleteTd);
// create button for: delete rule
if(this.p.ruleButtons === true) {
var ruleDeleteInput = $("<input type='button' value='-' title='Delete rule' class='delete-rule ui-del'/>");
ruleDeleteTd.append(ruleDeleteInput);
//$(ruleDeleteInput).html("").height(20).width(30).button({icons: { primary: "ui-icon-minus", text:false}});
ruleDeleteInput.bind('click',function() {
// remove rule from group
for (i = 0; i < group.rules.length; i++) {
if (group.rules[i] === rule) {
group.rules.splice(i, 1);
break;
}
}
that.reDraw(); // the html has changed, force reDraw
that.onchange(); // signals that the filter has changed
return false;
});
}
return tr;
};
this.getStringForGroup = function(group) {
var s = "(", index;
if (group.groups !== undefined) {
for (index = 0; index < group.groups.length; index++) {
if (s.length > 1) {
s += " " + group.groupOp + " ";
}
try {
s += this.getStringForGroup(group.groups[index]);
} catch (eg) {alert(eg);}
}
}
if (group.rules !== undefined) {
try{
for (index = 0; index < group.rules.length; index++) {
if (s.length > 1) {
s += " " + group.groupOp + " ";
}
s += this.getStringForRule(group.rules[index]);
}
} catch (e) {alert(e);}
}
s += ")";
if (s === "()") {
return ""; // ignore groups that don't have rules
}
return s;
};
this.getStringForRule = function(rule) {
var opUF = "",opC="", i, cm, ret, val,
numtypes = ['int', 'integer', 'float', 'number', 'currency']; // jqGrid
for (i = 0; i < this.p.ops.length; i++) {
if (this.p.ops[i].oper === rule.op) {
opUF = this.p.operands.hasOwnProperty(rule.op) ? this.p.operands[rule.op] : "";
opC = this.p.ops[i].oper;
break;
}
}
for (i=0; i<this.p.columns.length; i++) {
if(this.p.columns[i].name === rule.field) {
cm = this.p.columns[i];
break;
}
}
if (cm == undefined) { return ""; }
val = rule.data;
if(opC === 'bw' || opC === 'bn') { val = val+"%"; }
if(opC === 'ew' || opC === 'en') { val = "%"+val; }
if(opC === 'cn' || opC === 'nc') { val = "%"+val+"%"; }
if(opC === 'in' || opC === 'ni') { val = " ("+val+")"; }
if(p.errorcheck) { checkData(rule.data, cm); }
if($.inArray(cm.searchtype, numtypes) !== -1 || opC === 'nn' || opC === 'nu') { ret = rule.field + " " + opUF + " " + val; }
else { ret = rule.field + " " + opUF + " \"" + val + "\""; }
return ret;
};
this.resetFilter = function () {
this.p.filter = $.extend(true,{},this.p.initFilter);
this.reDraw();
this.onchange();
};
this.hideError = function() {
$("th.ui-state-error", this).html("");
$("tr.error", this).hide();
};
this.showError = function() {
$("th.ui-state-error", this).html(this.p.errmsg);
$("tr.error", this).show();
};
this.toUserFriendlyString = function() {
return this.getStringForGroup(p.filter);
};
this.toString = function() {
// this will obtain a string that can be used to match an item.
var that = this;
function getStringRule(rule) {
if(that.p.errorcheck) {
var i, cm;
for (i=0; i<that.p.columns.length; i++) {
if(that.p.columns[i].name === rule.field) {
cm = that.p.columns[i];
break;
}
}
if(cm) {checkData(rule.data, cm);}
}
return rule.op + "(item." + rule.field + ",'" + rule.data + "')";
}
function getStringForGroup(group) {
var s = "(", index;
if (group.groups !== undefined) {
for (index = 0; index < group.groups.length; index++) {
if (s.length > 1) {
if (group.groupOp === "OR") {
s += " || ";
}
else {
s += " && ";
}
}
s += getStringForGroup(group.groups[index]);
}
}
if (group.rules !== undefined) {
for (index = 0; index < group.rules.length; index++) {
if (s.length > 1) {
if (group.groupOp === "OR") {
s += " || ";
}
else {
s += " && ";
}
}
s += getStringRule(group.rules[index]);
}
}
s += ")";
if (s === "()") {
return ""; // ignore groups that don't have rules
}
return s;
}
return getStringForGroup(this.p.filter);
};
// Here we init the filter
this.reDraw();
if(this.p.showQuery) {
this.onchange();
}
// mark is as created so that it will not be created twice on this element
this.filter = true;
});
};
$.extend($.fn.jqFilter,{
/*
* Return SQL like string. Can be used directly
*/
toSQLString : function()
{
var s ="";
this.each(function(){
s = this.toUserFriendlyString();
});
return s;
},
/*
* Return filter data as object.
*/
filterData : function()
{
var s;
this.each(function(){
s = this.p.filter;
});
return s;
},
getParameter : function (param) {
if(param !== undefined) {
if (this.p.hasOwnProperty(param) ) {
return this.p[param];
}
}
return this.p;
},
resetFilter: function() {
return this.each(function(){
this.resetFilter();
});
},
addFilter: function (pfilter) {
if (typeof pfilter === "string") {
pfilter = $.jgrid.parse( pfilter );
}
this.each(function(){
this.p.filter = pfilter;
this.reDraw();
this.onchange();
});
}
});
})(jQuery);

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,533 @@
/*jshint eqeqeq:false, eqnull:true */
/*global jQuery */
// Grouping module
(function($){
"use strict";
$.extend($.jgrid,{
template : function(format){ //jqgformat
var args = $.makeArray(arguments).slice(1), j, al = args.length;
if(format==null) { format = ""; }
return format.replace(/\{([\w\-]+)(?:\:([\w\.]*)(?:\((.*?)?\))?)?\}/g, function(m,i){
if(!isNaN(parseInt(i,10))) {
return args[parseInt(i,10)];
}
for(j=0; j < al;j++) {
if($.isArray(args[j])) {
var nmarr = args[ j ],
k = nmarr.length;
while(k--) {
if(i===nmarr[k].nm) {
return nmarr[k].v;
}
}
}
}
});
}
});
$.jgrid.extend({
groupingSetup : function () {
return this.each(function (){
var $t = this, i, j, cml, cm = $t.p.colModel, grp = $t.p.groupingView;
if(grp !== null && ( (typeof grp === 'object') || $.isFunction(grp) ) ) {
if(!grp.groupField.length) {
$t.p.grouping = false;
} else {
if (grp.visibiltyOnNextGrouping === undefined) {
grp.visibiltyOnNextGrouping = [];
}
grp.lastvalues=[];
if(!grp._locgr) {
grp.groups =[];
}
grp.counters =[];
for(i=0;i<grp.groupField.length;i++) {
if(!grp.groupOrder[i]) {
grp.groupOrder[i] = 'asc';
}
if(!grp.groupText[i]) {
grp.groupText[i] = '{0}';
}
if( typeof grp.groupColumnShow[i] !== 'boolean') {
grp.groupColumnShow[i] = true;
}
if( typeof grp.groupSummary[i] !== 'boolean') {
grp.groupSummary[i] = false;
}
if( !grp.groupSummaryPos[i]) {
grp.groupSummaryPos[i] = 'footer';
}
if(grp.groupColumnShow[i] === true) {
grp.visibiltyOnNextGrouping[i] = true;
$($t).jqGrid('showCol',grp.groupField[i]);
} else {
grp.visibiltyOnNextGrouping[i] = $("#"+$.jgrid.jqID($t.p.id+"_"+grp.groupField[i])).is(":visible");
$($t).jqGrid('hideCol',grp.groupField[i]);
}
}
grp.summary =[];
if(grp.hideFirstGroupCol) {
grp.formatDisplayField[0] = function (v) { return v;};
}
for(j=0, cml = cm.length; j < cml; j++) {
if(grp.hideFirstGroupCol) {
if(!cm[j].hidden && grp.groupField[0] === cm[j].name) {
cm[j].formatter = function(){return '';};
}
}
if(cm[j].summaryType ) {
if(cm[j].summaryDivider) {
grp.summary.push({nm:cm[j].name,st:cm[j].summaryType, v: '', sd:cm[j].summaryDivider, vd:'', sr: cm[j].summaryRound, srt: cm[j].summaryRoundType || 'round'});
} else {
grp.summary.push({nm:cm[j].name,st:cm[j].summaryType, v: '', sr: cm[j].summaryRound, srt: cm[j].summaryRoundType || 'round'});
}
}
}
}
} else {
$t.p.grouping = false;
}
});
},
groupingPrepare : function ( record, irow ) {
this.each(function(){
var grp = this.p.groupingView, $t= this, i,
grlen = grp.groupField.length,
fieldName,
v,
displayName,
displayValue,
changed = 0;
for(i=0;i<grlen;i++) {
fieldName = grp.groupField[i];
displayName = grp.displayField[i];
v = record[fieldName];
displayValue = displayName == null ? null : record[displayName];
if( displayValue == null ) {
displayValue = v;
}
if( v !== undefined ) {
if(irow === 0 ) {
// First record always starts a new group
grp.groups.push({idx:i,dataIndex:fieldName,value:v, displayValue: displayValue, startRow: irow, cnt:1, summary : [] } );
grp.lastvalues[i] = v;
grp.counters[i] = {cnt:1, pos:grp.groups.length-1, summary: $.extend(true,[],grp.summary)};
$.each(grp.counters[i].summary,function() {
if ($.isFunction(this.st)) {
this.v = this.st.call($t, this.v, this.nm, record);
} else {
this.v = $($t).jqGrid('groupingCalculations.handler',this.st, this.v, this.nm, this.sr, this.srt, record);
if(this.st.toLowerCase() === 'avg' && this.sd) {
this.vd = $($t).jqGrid('groupingCalculations.handler',this.st, this.vd, this.sd, this.sr, this.srt, record);
}
}
});
grp.groups[grp.counters[i].pos].summary = grp.counters[i].summary;
} else {
if (typeof v !== "object" && ($.isArray(grp.isInTheSameGroup) && $.isFunction(grp.isInTheSameGroup[i]) ? ! grp.isInTheSameGroup[i].call($t, grp.lastvalues[i], v, i, grp): grp.lastvalues[i] !== v)) {
// This record is not in same group as previous one
grp.groups.push({idx:i,dataIndex:fieldName,value:v, displayValue: displayValue, startRow: irow, cnt:1, summary : [] } );
grp.lastvalues[i] = v;
changed = 1;
grp.counters[i] = {cnt:1, pos:grp.groups.length-1, summary: $.extend(true,[],grp.summary)};
$.each(grp.counters[i].summary,function() {
if ($.isFunction(this.st)) {
this.v = this.st.call($t, this.v, this.nm, record);
} else {
this.v = $($t).jqGrid('groupingCalculations.handler',this.st, this.v, this.nm, this.sr, this.srt, record);
if(this.st.toLowerCase() === 'avg' && this.sd) {
this.vd = $($t).jqGrid('groupingCalculations.handler',this.st, this.vd, this.sd, this.sr, this.srt, record);
}
}
});
grp.groups[grp.counters[i].pos].summary = grp.counters[i].summary;
} else {
if (changed === 1) {
// This group has changed because an earlier group changed.
grp.groups.push({idx:i,dataIndex:fieldName,value:v, displayValue: displayValue, startRow: irow, cnt:1, summary : [] } );
grp.lastvalues[i] = v;
grp.counters[i] = {cnt:1, pos:grp.groups.length-1, summary: $.extend(true,[],grp.summary)};
$.each(grp.counters[i].summary,function() {
if ($.isFunction(this.st)) {
this.v = this.st.call($t, this.v, this.nm, record);
} else {
this.v = $($t).jqGrid('groupingCalculations.handler',this.st, this.v, this.nm, this.sr, this.srt, record);
if(this.st.toLowerCase() === 'avg' && this.sd) {
this.vd = $($t).jqGrid('groupingCalculations.handler',this.st, this.vd, this.sd, this.sr, this.srt, record);
}
}
});
grp.groups[grp.counters[i].pos].summary = grp.counters[i].summary;
} else {
grp.counters[i].cnt += 1;
grp.groups[grp.counters[i].pos].cnt = grp.counters[i].cnt;
$.each(grp.counters[i].summary,function() {
if ($.isFunction(this.st)) {
this.v = this.st.call($t, this.v, this.nm, record);
} else {
this.v = $($t).jqGrid('groupingCalculations.handler',this.st, this.v, this.nm, this.sr, this.srt, record);
if(this.st.toLowerCase() === 'avg' && this.sd) {
this.vd = $($t).jqGrid('groupingCalculations.handler',this.st, this.vd, this.sd, this.sr, this.srt, record);
}
}
});
grp.groups[grp.counters[i].pos].summary = grp.counters[i].summary;
}
}
}
}
}
//gdata.push( rData );
});
return this;
},
groupingToggle : function(hid){
this.each(function(){
var $t = this,
grp = $t.p.groupingView,
strpos = hid.split('_'),
num = parseInt(strpos[strpos.length-2], 10);
strpos.splice(strpos.length-2,2);
var uid = strpos.join("_"),
minus = grp.minusicon,
plus = grp.plusicon,
tar = $("#"+$.jgrid.jqID(hid)),
r = tar.length ? tar[0].nextSibling : null,
tarspan = $("#"+$.jgrid.jqID(hid)+" span."+"tree-wrap-"+$t.p.direction),
getGroupingLevelFromClass = function (className) {
var nums = $.map(className.split(" "), function (item) {
if (item.substring(0, uid.length + 1) === uid + "_") {
return parseInt(item.substring(uid.length + 1), 10);
}
});
return nums.length > 0 ? nums[0] : undefined;
},
itemGroupingLevel,
showData,
collapsed = false,
frz = $t.p.frozenColumns ? $t.p.id+"_frozen" : false,
tar2 = frz ? $("#"+$.jgrid.jqID(hid), "#"+$.jgrid.jqID(frz) ) : false,
r2 = (tar2 && tar2.length) ? tar2[0].nextSibling : null;
if( tarspan.hasClass(minus) ) {
if(grp.showSummaryOnHide) {
if(r){
while(r) {
itemGroupingLevel = getGroupingLevelFromClass(r.className);
if (itemGroupingLevel !== undefined && itemGroupingLevel <= num) {
break;
}
$(r).hide();
r = r.nextSibling;
if(frz) {
$(r2).hide();
r2 = r2.nextSibling;
}
}
}
} else {
if(r){
while(r) {
itemGroupingLevel = getGroupingLevelFromClass(r.className);
if (itemGroupingLevel !== undefined && itemGroupingLevel <= num) {
break;
}
$(r).hide();
r = r.nextSibling;
if(frz) {
$(r2).hide();
r2 = r2.nextSibling;
}
}
}
}
tarspan.removeClass(minus).addClass(plus);
collapsed = true;
} else {
if(r){
showData = undefined;
while(r) {
itemGroupingLevel = getGroupingLevelFromClass(r.className);
if (showData === undefined) {
showData = itemGroupingLevel === undefined; // if the first row after the opening group is data row then show the data rows
}
if (itemGroupingLevel !== undefined) {
if (itemGroupingLevel <= num) {
break;// next item of the same lever are found
}
if (itemGroupingLevel === num + 1) {
$(r).show().find(">td>span."+"tree-wrap-"+$t.p.direction).removeClass(minus).addClass(plus);
if(frz) {
$(r2).show().find(">td>span."+"tree-wrap-"+$t.p.direction).removeClass(minus).addClass(plus);
}
}
} else if (showData) {
$(r).show();
if(frz) {
$(r2).show();
}
}
r = r.nextSibling;
if(frz) {
r2 = r2.nextSibling;
}
}
}
tarspan.removeClass(plus).addClass(minus);
}
$($t).triggerHandler("jqGridGroupingClickGroup", [hid , collapsed]);
if( $.isFunction($t.p.onClickGroup)) { $t.p.onClickGroup.call($t, hid , collapsed); }
});
return false;
},
groupingRender : function (grdata, colspans, page, rn ) {
return this.each(function(){
var $t = this,
grp = $t.p.groupingView,
str = "", icon = "", hid, clid, pmrtl = grp.groupCollapse ? grp.plusicon : grp.minusicon, gv, cp=[], len =grp.groupField.length;
pmrtl += " tree-wrap-"+$t.p.direction;
$.each($t.p.colModel, function (i,n){
var ii;
for(ii=0;ii<len;ii++) {
if(grp.groupField[ii] === n.name ) {
cp[ii] = i;
break;
}
}
});
var toEnd = 0;
function findGroupIdx( ind , offset, grp) {
var ret = false, i;
if(offset===0) {
ret = grp[ind];
} else {
var id = grp[ind].idx;
if(id===0) {
ret = grp[ind];
} else {
for(i=ind;i >= 0; i--) {
if(grp[i].idx === id-offset) {
ret = grp[i];
break;
}
}
}
}
return ret;
}
function buildSummaryTd(i, ik, grp, foffset) {
var fdata = findGroupIdx(i, ik, grp),
cm = $t.p.colModel,
vv, grlen = fdata.cnt, str="", k;
for(k=foffset; k<colspans;k++) {
var tmpdata = "<td "+$t.formatCol(k,1,'')+">&#160;</td>",
tplfld = "{0}";
$.each(fdata.summary,function(){
if(this.nm === cm[k].name) {
if(cm[k].summaryTpl) {
tplfld = cm[k].summaryTpl;
}
if(typeof this.st === 'string' && this.st.toLowerCase() === 'avg') {
if(this.sd && this.vd) {
this.v = (this.v/this.vd);
} else if(this.v && grlen > 0) {
this.v = (this.v/grlen);
}
}
try {
this.groupCount = fdata.cnt;
this.groupIndex = fdata.dataIndex;
this.groupValue = fdata.value;
vv = $t.formatter('', this.v, k, this);
} catch (ef) {
vv = this.v;
}
tmpdata= "<td "+$t.formatCol(k,1,'')+">"+$.jgrid.format(tplfld,vv)+ "</td>";
return false;
}
});
str += tmpdata;
}
return str;
}
var sumreverse = $.makeArray(grp.groupSummary), mul;
sumreverse.reverse();
mul = $t.p.multiselect ? " colspan=\"2\"" : "";
$.each(grp.groups,function(i,n){
if(grp._locgr) {
if( !(n.startRow +n.cnt > (page-1)*rn && n.startRow < page*rn)) {
return true;
}
}
toEnd++;
clid = $t.p.id+"ghead_"+n.idx;
hid = clid+"_"+i;
icon = "<span style='cursor:pointer;' class='ui-icon "+pmrtl+"' onclick=\"jQuery('#"+$.jgrid.jqID($t.p.id)+"').jqGrid('groupingToggle','"+hid+"');return false;\"></span>";
try {
if ($.isArray(grp.formatDisplayField) && $.isFunction(grp.formatDisplayField[n.idx])) {
n.displayValue = grp.formatDisplayField[n.idx].call($t, n.displayValue, n.value, $t.p.colModel[cp[n.idx]], n.idx, grp);
gv = n.displayValue;
} else {
gv = $t.formatter(hid, n.displayValue, cp[n.idx], n.value );
}
} catch (egv) {
gv = n.displayValue;
}
if(grp.groupSummaryPos[n.idx] === 'header') {
str += "<tr id=\""+hid+"\"" +(grp.groupCollapse && n.idx>0 ? " style=\"display:none;\" " : " ") + "role=\"row\" class= \"ui-widget-content jqgroup ui-row-"+$t.p.direction+" "+clid+"\"><td style=\"padding-left:"+(n.idx * 12) + "px;"+"\"" + mul +">"+icon+$.jgrid.template(grp.groupText[n.idx], gv, n.cnt, n.summary)+"</td>";
str += buildSummaryTd(i, 0, grp.groups, grp.groupColumnShow[n.idx] === false ? (mul ==="" ? 2 : 3) : ((mul ==="") ? 1 : 2) );
str += "</tr>";
} else {
str += "<tr id=\""+hid+"\"" +(grp.groupCollapse && n.idx>0 ? " style=\"display:none;\" " : " ") + "role=\"row\" class= \"ui-widget-content jqgroup ui-row-"+$t.p.direction+" "+clid+"\"><td style=\"padding-left:"+(n.idx * 12) + "px;"+"\" colspan=\""+(grp.groupColumnShow[n.idx] === false ? colspans-1 : colspans)+"\">"+icon+$.jgrid.template(grp.groupText[n.idx], gv, n.cnt, n.summary)+"</td></tr>";
}
var leaf = len-1 === n.idx;
if( leaf ) {
var gg = grp.groups[i+1], kk, ik, offset = 0, sgr = n.startRow,
end = gg !== undefined ? gg.startRow : grp.groups[i].startRow + grp.groups[i].cnt;
if(grp._locgr) {
offset = (page-1)*rn;
if(offset > n.startRow) {
sgr = offset;
}
}
for(kk=sgr;kk<end;kk++) {
if(!grdata[kk - offset]) { break; }
str += grdata[kk - offset].join('');
}
if(grp.groupSummaryPos[n.idx] !== 'header') {
var jj;
if (gg !== undefined) {
for (jj = 0; jj < grp.groupField.length; jj++) {
if (gg.dataIndex === grp.groupField[jj]) {
break;
}
}
toEnd = grp.groupField.length - jj;
}
for (ik = 0; ik < toEnd; ik++) {
if(!sumreverse[ik]) { continue; }
var hhdr = "";
if(grp.groupCollapse && !grp.showSummaryOnHide) {
hhdr = " style=\"display:none;\"";
}
str += "<tr"+hhdr+" jqfootlevel=\""+(n.idx-ik)+"\" role=\"row\" class=\"ui-widget-content jqfoot ui-row-"+$t.p.direction+"\">";
str += buildSummaryTd(i, ik, grp.groups, 0);
str += "</tr>";
}
toEnd = jj;
}
}
});
$("#"+$.jgrid.jqID($t.p.id)+" tbody:first").append(str);
// free up memory
str = null;
});
},
groupingGroupBy : function (name, options ) {
return this.each(function(){
var $t = this;
if(typeof name === "string") {
name = [name];
}
var grp = $t.p.groupingView;
$t.p.grouping = true;
//Set default, in case visibilityOnNextGrouping is undefined
if (grp.visibiltyOnNextGrouping === undefined) {
grp.visibiltyOnNextGrouping = [];
}
var i;
// show previous hidden groups if they are hidden and weren't removed yet
for(i=0;i<grp.groupField.length;i++) {
if(!grp.groupColumnShow[i] && grp.visibiltyOnNextGrouping[i]) {
$($t).jqGrid('showCol',grp.groupField[i]);
}
}
// set visibility status of current group columns on next grouping
for(i=0;i<name.length;i++) {
grp.visibiltyOnNextGrouping[i] = $("#"+$.jgrid.jqID($t.p.id)+"_"+$.jgrid.jqID(name[i])).is(":visible");
}
$t.p.groupingView = $.extend($t.p.groupingView, options || {});
grp.groupField = name;
$($t).trigger("reloadGrid");
});
},
groupingRemove : function (current) {
return this.each(function(){
var $t = this;
if(current === undefined) {
current = true;
}
$t.p.grouping = false;
if(current===true) {
var grp = $t.p.groupingView, i;
// show previous hidden groups if they are hidden and weren't removed yet
for(i=0;i<grp.groupField.length;i++) {
if (!grp.groupColumnShow[i] && grp.visibiltyOnNextGrouping[i]) {
$($t).jqGrid('showCol', grp.groupField);
}
}
$("tr.jqgroup, tr.jqfoot","#"+$.jgrid.jqID($t.p.id)+" tbody:first").remove();
$("tr.jqgrow:hidden","#"+$.jgrid.jqID($t.p.id)+" tbody:first").show();
} else {
$($t).trigger("reloadGrid");
}
});
},
groupingCalculations : {
handler: function(fn, v, field, round, roundType, rc) {
var funcs = {
sum: function() {
return parseFloat(v||0) + parseFloat((rc[field]||0));
},
min: function() {
if(v==="") {
return parseFloat(rc[field]||0);
}
return Math.min(parseFloat(v),parseFloat(rc[field]||0));
},
max: function() {
if(v==="") {
return parseFloat(rc[field]||0);
}
return Math.max(parseFloat(v),parseFloat(rc[field]||0));
},
count: function() {
if(v==="") {v=0;}
if(rc.hasOwnProperty(field)) {
return v+1;
}
return 0;
},
avg: function() {
// the same as sum, but at end we divide it
// so use sum instead of duplicating the code (?)
return funcs.sum();
}
};
if(!funcs[fn]) {
throw ("jqGrid Grouping No such method: " + fn);
}
var res = funcs[fn]();
if (round != null) {
if (roundType === 'fixed') {
res = res.toFixed(round);
} else {
var mul = Math.pow(10, round);
res = Math.round(res * mul) / mul;
}
}
return res;
}
}
});
})(jQuery);

View file

@ -0,0 +1,215 @@
/*jshint eqeqeq:false, eqnull:true, devel:true */
/*global jQuery, xmlJsonClass */
(function($){
/*
* jqGrid extension for constructing Grid Data from external file
* Tony Tomov tony@trirand.com
* http://trirand.com/blog/
* Dual licensed under the MIT and GPL licenses:
* http://www.opensource.org/licenses/mit-license.php
* http://www.gnu.org/licenses/gpl-2.0.html
**/
"use strict";
$.jgrid.extend({
jqGridImport : function(o) {
o = $.extend({
imptype : "xml", // xml, json, xmlstring, jsonstring
impstring: "",
impurl: "",
mtype: "GET",
impData : {},
xmlGrid :{
config : "roots>grid",
data: "roots>rows"
},
jsonGrid :{
config : "grid",
data: "data"
},
ajaxOptions :{}
}, o || {});
return this.each(function(){
var $t = this;
var xmlConvert = function (xml,o) {
var cnfg = $(o.xmlGrid.config,xml)[0];
var xmldata = $(o.xmlGrid.data,xml)[0], jstr, jstr1, key;
if(xmlJsonClass.xml2json && $.jgrid.parse) {
jstr = xmlJsonClass.xml2json(cnfg," ");
jstr = $.jgrid.parse(jstr);
for(key in jstr) {
if(jstr.hasOwnProperty(key)) {
jstr1=jstr[key];
}
}
if(xmldata) {
// save the datatype
var svdatatype = jstr.grid.datatype;
jstr.grid.datatype = 'xmlstring';
jstr.grid.datastr = xml;
$($t).jqGrid( jstr1 ).jqGrid("setGridParam",{datatype:svdatatype});
} else {
$($t).jqGrid( jstr1 );
}
jstr = null;jstr1=null;
} else {
alert("xml2json or parse are not present");
}
};
var jsonConvert = function (jsonstr,o){
if (jsonstr && typeof jsonstr === 'string') {
var _jsonparse = false;
if($.jgrid.useJSON) {
$.jgrid.useJSON = false;
_jsonparse = true;
}
var json = $.jgrid.parse(jsonstr);
if(_jsonparse) { $.jgrid.useJSON = true; }
var gprm = json[o.jsonGrid.config];
var jdata = json[o.jsonGrid.data];
if(jdata) {
var svdatatype = gprm.datatype;
gprm.datatype = 'jsonstring';
gprm.datastr = jdata;
$($t).jqGrid( gprm ).jqGrid("setGridParam",{datatype:svdatatype});
} else {
$($t).jqGrid( gprm );
}
}
};
switch (o.imptype){
case 'xml':
$.ajax($.extend({
url:o.impurl,
type:o.mtype,
data: o.impData,
dataType:"xml",
complete: function(xml,stat) {
if(stat === 'success') {
xmlConvert(xml.responseXML,o);
$($t).triggerHandler("jqGridImportComplete", [xml, o]);
if($.isFunction(o.importComplete)) {
o.importComplete(xml);
}
}
xml=null;
}
}, o.ajaxOptions));
break;
case 'xmlstring' :
// we need to make just the conversion and use the same code as xml
if(o.impstring && typeof o.impstring === 'string') {
var xmld = $.parseXML(o.impstring);
if(xmld) {
xmlConvert(xmld,o);
$($t).triggerHandler("jqGridImportComplete", [xmld, o]);
if($.isFunction(o.importComplete)) {
o.importComplete(xmld);
}
o.impstring = null;
}
xmld = null;
}
break;
case 'json':
$.ajax($.extend({
url:o.impurl,
type:o.mtype,
data: o.impData,
dataType:"json",
complete: function(json) {
try {
jsonConvert(json.responseText,o );
$($t).triggerHandler("jqGridImportComplete", [json, o]);
if($.isFunction(o.importComplete)) {
o.importComplete(json);
}
} catch (ee){}
json=null;
}
}, o.ajaxOptions ));
break;
case 'jsonstring' :
if(o.impstring && typeof o.impstring === 'string') {
jsonConvert(o.impstring,o );
$($t).triggerHandler("jqGridImportComplete", [o.impstring, o]);
if($.isFunction(o.importComplete)) {
o.importComplete(o.impstring);
}
o.impstring = null;
}
break;
}
});
},
jqGridExport : function(o) {
o = $.extend({
exptype : "xmlstring",
root: "grid",
ident: "\t"
}, o || {});
var ret = null;
this.each(function () {
if(!this.grid) { return;}
var key, gprm = $.extend(true, {},$(this).jqGrid("getGridParam"));
// we need to check for:
// 1.multiselect, 2.subgrid 3. treegrid and remove the unneded columns from colNames
if(gprm.rownumbers) {
gprm.colNames.splice(0,1);
gprm.colModel.splice(0,1);
}
if(gprm.multiselect) {
gprm.colNames.splice(0,1);
gprm.colModel.splice(0,1);
}
if(gprm.subGrid) {
gprm.colNames.splice(0,1);
gprm.colModel.splice(0,1);
}
gprm.knv = null;
if(gprm.treeGrid) {
for (key in gprm.treeReader) {
if(gprm.treeReader.hasOwnProperty(key)) {
gprm.colNames.splice(gprm.colNames.length-1);
gprm.colModel.splice(gprm.colModel.length-1);
}
}
}
switch (o.exptype) {
case 'xmlstring' :
ret = "<"+o.root+">"+xmlJsonClass.json2xml(gprm,o.ident)+"</"+o.root+">";
break;
case 'jsonstring' :
ret = "{"+ xmlJsonClass.toJson(gprm,o.root,o.ident,false)+"}";
if(gprm.postData.filters !== undefined) {
ret=ret.replace(/filters":"/,'filters":');
ret=ret.replace(/}]}"/,'}]}');
}
break;
}
});
return ret;
},
excelExport : function(o) {
o = $.extend({
exptype : "remote",
url : null,
oper: "oper",
tag: "excel",
exportOptions : {}
}, o || {});
return this.each(function(){
if(!this.grid) { return;}
var url;
if(o.exptype === "remote") {
var pdata = $.extend({},this.p.postData);
pdata[o.oper] = o.tag;
var params = jQuery.param(pdata);
if(o.url.indexOf("?") !== -1) { url = o.url+"&"+params; }
else { url = o.url+"?"+params; }
window.location = url;
}
});
}
});
})(jQuery);

View file

@ -0,0 +1,652 @@
/*jshint eqeqeq:false, eqnull:true, devel:true */
/*global jQuery */
(function($){
/**
* jqGrid extension for manipulating Grid Data
* Tony Tomov tony@trirand.com
* http://trirand.com/blog/
* Dual licensed under the MIT and GPL licenses:
* http://www.opensource.org/licenses/mit-license.php
* http://www.gnu.org/licenses/gpl-2.0.html
**/
"use strict";
$.jgrid.inlineEdit = $.jgrid.inlineEdit || {};
$.jgrid.extend({
//Editing
editRow : function(rowid,keys,oneditfunc,successfunc, url, extraparam, aftersavefunc,errorfunc, afterrestorefunc) {
// Compatible mode old versions
var o={}, args = $.makeArray(arguments).slice(1);
if( $.type(args[0]) === "object" ) {
o = args[0];
} else {
if (keys !== undefined) { o.keys = keys; }
if ($.isFunction(oneditfunc)) { o.oneditfunc = oneditfunc; }
if ($.isFunction(successfunc)) { o.successfunc = successfunc; }
if (url !== undefined) { o.url = url; }
if (extraparam !== undefined) { o.extraparam = extraparam; }
if ($.isFunction(aftersavefunc)) { o.aftersavefunc = aftersavefunc; }
if ($.isFunction(errorfunc)) { o.errorfunc = errorfunc; }
if ($.isFunction(afterrestorefunc)) { o.afterrestorefunc = afterrestorefunc; }
// last two not as param, but as object (sorry)
//if (restoreAfterError !== undefined) { o.restoreAfterError = restoreAfterError; }
//if (mtype !== undefined) { o.mtype = mtype || "POST"; }
}
o = $.extend(true, {
keys : false,
oneditfunc: null,
successfunc: null,
url: null,
extraparam: {},
aftersavefunc: null,
errorfunc: null,
afterrestorefunc: null,
restoreAfterError: true,
mtype: "POST",
focusField : true
}, $.jgrid.inlineEdit, o );
// End compatible
return this.each(function(){
var $t = this, nm, tmp, editable, cnt=0, focus=null, svr={}, ind,cm, bfer;
if (!$t.grid ) { return; }
ind = $($t).jqGrid("getInd",rowid,true);
if( ind === false ) {return;}
bfer = $.isFunction( o.beforeEditRow ) ? o.beforeEditRow.call($t,o, rowid) : undefined;
if( bfer === undefined ) {
bfer = true;
}
if(!bfer) { return; }
editable = $(ind).attr("editable") || "0";
if (editable === "0" && !$(ind).hasClass("not-editable-row")) {
cm = $t.p.colModel;
$('td[role="gridcell"]',ind).each( function(i) {
nm = cm[i].name;
var treeg = $t.p.treeGrid===true && nm === $t.p.ExpandColumn;
if(treeg) { tmp = $("span:first",this).html();}
else {
try {
tmp = $.unformat.call($t,this,{rowId:rowid, colModel:cm[i]},i);
} catch (_) {
tmp = ( cm[i].edittype && cm[i].edittype === 'textarea' ) ? $(this).text() : $(this).html();
}
}
if ( nm !== 'cb' && nm !== 'subgrid' && nm !== 'rn') {
if($t.p.autoencode) { tmp = $.jgrid.htmlDecode(tmp); }
svr[nm]=tmp;
if(cm[i].editable===true) {
if(focus===null) { focus = i; }
if (treeg) { $("span:first",this).html(""); }
else { $(this).html(""); }
var opt = $.extend({},cm[i].editoptions || {},{id:rowid+"_"+nm,name:nm,rowId:rowid});
if(!cm[i].edittype) { cm[i].edittype = "text"; }
if(tmp === "&nbsp;" || tmp === "&#160;" || (tmp.length===1 && tmp.charCodeAt(0)===160) ) {tmp='';}
var elc = $.jgrid.createEl.call($t,cm[i].edittype,opt,tmp,true,$.extend({},$.jgrid.ajaxOptions,$t.p.ajaxSelectOptions || {}));
$(elc).addClass("editable");
if(treeg) { $("span:first",this).append(elc); }
else { $(this).append(elc); }
$.jgrid.bindEv.call($t, elc, opt);
//Again IE
if(cm[i].edittype === "select" && cm[i].editoptions!==undefined && cm[i].editoptions.multiple===true && cm[i].editoptions.dataUrl===undefined && $.jgrid.msie) {
$(elc).width($(elc).width());
}
cnt++;
}
}
});
if(cnt > 0) {
svr.id = rowid; $t.p.savedRow.push(svr);
$(ind).attr("editable","1");
if(o.focusField ) {
if(typeof o.focusField === 'number' && parseInt(o.focusField,10) <= cm.length) {
focus = o.focusField;
}
setTimeout(function(){
var fe = $("td:eq("+focus+") :input:visible",ind).not(":disabled");
if(fe.length > 0) {
fe.focus();
}
},0);
}
if(o.keys===true) {
$(ind).bind("keydown",function(e) {
if (e.keyCode === 27) {
$($t).jqGrid("restoreRow",rowid, o.afterrestorefunc);
if($t.p._inlinenav) {
try {
$($t).jqGrid('showAddEditButtons');
} catch (eer1) {}
}
return false;
}
if (e.keyCode === 13) {
var ta = e.target;
if(ta.tagName === 'TEXTAREA') { return true; }
if( $($t).jqGrid("saveRow", rowid, o ) ) {
if($t.p._inlinenav) {
try {
$($t).jqGrid('showAddEditButtons');
} catch (eer2) {}
}
}
return false;
}
});
}
$($t).triggerHandler("jqGridInlineEditRow", [rowid, o]);
if( $.isFunction(o.oneditfunc)) { o.oneditfunc.call($t, rowid); }
}
}
});
},
saveRow : function(rowid, successfunc, url, extraparam, aftersavefunc,errorfunc, afterrestorefunc) {
// Compatible mode old versions
var args = $.makeArray(arguments).slice(1), o = {};
if( $.type(args[0]) === "object" ) {
o = args[0];
} else {
if ($.isFunction(successfunc)) { o.successfunc = successfunc; }
if (url !== undefined) { o.url = url; }
if (extraparam !== undefined) { o.extraparam = extraparam; }
if ($.isFunction(aftersavefunc)) { o.aftersavefunc = aftersavefunc; }
if ($.isFunction(errorfunc)) { o.errorfunc = errorfunc; }
if ($.isFunction(afterrestorefunc)) { o.afterrestorefunc = afterrestorefunc; }
}
o = $.extend(true, {
successfunc: null,
url: null,
extraparam: {},
aftersavefunc: null,
errorfunc: null,
afterrestorefunc: null,
restoreAfterError: true,
mtype: "POST",
saveui : "enable",
savetext : $.jgrid.defaults.savetext || "Saving..."
}, $.jgrid.inlineEdit, o );
// End compatible
var success = false;
var $t = this[0], nm, tmp={}, tmp2={}, tmp3= {}, editable, fr, cv, ind;
if (!$t.grid ) { return success; }
ind = $($t).jqGrid("getInd",rowid,true);
if(ind === false) {return success;}
var bfsr = $.isFunction( o.beforeSaveRow ) ? o.beforeSaveRow.call($t,o, rowid) : undefined;
if( bfsr === undefined ) {
bfsr = true;
}
if(!bfsr) { return; }
editable = $(ind).attr("editable");
o.url = o.url || $t.p.editurl;
if (editable==="1") {
var cm;
$('td[role="gridcell"]',ind).each(function(i) {
cm = $t.p.colModel[i];
nm = cm.name;
if ( nm !== 'cb' && nm !== 'subgrid' && cm.editable===true && nm !== 'rn' && !$(this).hasClass('not-editable-cell')) {
switch (cm.edittype) {
case "checkbox":
var cbv = ["Yes","No"];
if(cm.editoptions ) {
cbv = cm.editoptions.value.split(":");
}
tmp[nm]= $("input",this).is(":checked") ? cbv[0] : cbv[1];
break;
case 'text':
case 'password':
case 'textarea':
case "button" :
tmp[nm]=$("input, textarea",this).val();
break;
case 'select':
if(!cm.editoptions.multiple) {
tmp[nm] = $("select option:selected",this).val();
tmp2[nm] = $("select option:selected", this).text();
} else {
var sel = $("select",this), selectedText = [];
tmp[nm] = $(sel).val();
if(tmp[nm]) { tmp[nm]= tmp[nm].join(","); } else { tmp[nm] =""; }
$("select option:selected",this).each(
function(i,selected){
selectedText[i] = $(selected).text();
}
);
tmp2[nm] = selectedText.join(",");
}
if(cm.formatter && cm.formatter === 'select') { tmp2={}; }
break;
case 'custom' :
try {
if(cm.editoptions && $.isFunction(cm.editoptions.custom_value)) {
tmp[nm] = cm.editoptions.custom_value.call($t, $(".customelement",this),'get');
if (tmp[nm] === undefined) { throw "e2"; }
} else { throw "e1"; }
} catch (e) {
if (e==="e1") { $.jgrid.info_dialog($.jgrid.errors.errcap,"function 'custom_value' "+$.jgrid.edit.msg.nodefined,$.jgrid.edit.bClose); }
if (e==="e2") { $.jgrid.info_dialog($.jgrid.errors.errcap,"function 'custom_value' "+$.jgrid.edit.msg.novalue,$.jgrid.edit.bClose); }
else { $.jgrid.info_dialog($.jgrid.errors.errcap,e.message,$.jgrid.edit.bClose); }
}
break;
}
cv = $.jgrid.checkValues.call($t,tmp[nm],i);
if(cv[0] === false) {
return false;
}
if($t.p.autoencode) { tmp[nm] = $.jgrid.htmlEncode(tmp[nm]); }
if(o.url !== 'clientArray' && cm.editoptions && cm.editoptions.NullIfEmpty === true) {
if(tmp[nm] === "") {
tmp3[nm] = 'null';
}
}
}
});
if (cv[0] === false){
try {
var tr = $($t).jqGrid('getGridRowById', rowid), positions = $.jgrid.findPos(tr);
$.jgrid.info_dialog($.jgrid.errors.errcap,cv[1],$.jgrid.edit.bClose,{left:positions[0],top:positions[1]+$(tr).outerHeight()});
} catch (e) {
alert(cv[1]);
}
return success;
}
var idname, opers = $t.p.prmNames, oldRowId = rowid;
if ($t.p.keyName === false) {
idname = opers.id;
} else {
idname = $t.p.keyName;
}
if(tmp) {
tmp[opers.oper] = opers.editoper;
if (tmp[idname] === undefined || tmp[idname]==="") {
tmp[idname] = rowid;
} else if (ind.id !== $t.p.idPrefix + tmp[idname]) {
// rename rowid
var oldid = $.jgrid.stripPref($t.p.idPrefix, rowid);
if ($t.p._index[oldid] !== undefined) {
$t.p._index[tmp[idname]] = $t.p._index[oldid];
delete $t.p._index[oldid];
}
rowid = $t.p.idPrefix + tmp[idname];
$(ind).attr("id", rowid);
if ($t.p.selrow === oldRowId) {
$t.p.selrow = rowid;
}
if ($.isArray($t.p.selarrrow)) {
var i = $.inArray(oldRowId, $t.p.selarrrow);
if (i>=0) {
$t.p.selarrrow[i] = rowid;
}
}
if ($t.p.multiselect) {
var newCboxId = "jqg_" + $t.p.id + "_" + rowid;
$("input.cbox",ind)
.attr("id", newCboxId)
.attr("name", newCboxId);
}
// TODO: to test the case of frozen columns
}
if($t.p.inlineData === undefined) { $t.p.inlineData ={}; }
tmp = $.extend({},tmp,$t.p.inlineData,o.extraparam);
}
if (o.url === 'clientArray') {
tmp = $.extend({},tmp, tmp2);
if($t.p.autoencode) {
$.each(tmp,function(n,v){
tmp[n] = $.jgrid.htmlDecode(v);
});
}
var k, resp = $($t).jqGrid("setRowData",rowid,tmp);
$(ind).attr("editable","0");
for(k=0;k<$t.p.savedRow.length;k++) {
if( String($t.p.savedRow[k].id) === String(oldRowId)) {fr = k; break;}
}
if(fr >= 0) { $t.p.savedRow.splice(fr,1); }
$($t).triggerHandler("jqGridInlineAfterSaveRow", [rowid, resp, tmp, o]);
if( $.isFunction(o.aftersavefunc) ) { o.aftersavefunc.call($t, rowid, resp, tmp, o); }
success = true;
$(ind).removeClass("jqgrid-new-row").unbind("keydown");
} else {
$($t).jqGrid("progressBar", {method:"show", loadtype : o.saveui, htmlcontent: o.savetext });
tmp3 = $.extend({},tmp,tmp3);
tmp3[idname] = $.jgrid.stripPref($t.p.idPrefix, tmp3[idname]);
$.ajax($.extend({
url:o.url,
data: $.isFunction($t.p.serializeRowData) ? $t.p.serializeRowData.call($t, tmp3) : tmp3,
type: o.mtype,
async : false, //?!?
complete: function(res,stat){
$($t).jqGrid("progressBar", {method:"hide", loadtype : o.saveui, htmlcontent: o.savetext});
if (stat === "success"){
var ret = true, sucret, k;
sucret = $($t).triggerHandler("jqGridInlineSuccessSaveRow", [res, rowid, o]);
if (!$.isArray(sucret)) {sucret = [true, tmp];}
if (sucret[0] && $.isFunction(o.successfunc)) {sucret = o.successfunc.call($t, res);}
if($.isArray(sucret)) {
// expect array - status, data, rowid
ret = sucret[0];
tmp = sucret[1] || tmp;
} else {
ret = sucret;
}
if (ret===true) {
if($t.p.autoencode) {
$.each(tmp,function(n,v){
tmp[n] = $.jgrid.htmlDecode(v);
});
}
tmp = $.extend({},tmp, tmp2);
$($t).jqGrid("setRowData",rowid,tmp);
$(ind).attr("editable","0");
for(k=0;k<$t.p.savedRow.length;k++) {
if( String($t.p.savedRow[k].id) === String(rowid)) {fr = k; break;}
}
if(fr >= 0) { $t.p.savedRow.splice(fr,1); }
$($t).triggerHandler("jqGridInlineAfterSaveRow", [rowid, res, tmp, o]);
if( $.isFunction(o.aftersavefunc) ) { o.aftersavefunc.call($t, rowid, res, tmp, o); }
success = true;
$(ind).removeClass("jqgrid-new-row").unbind("keydown");
} else {
$($t).triggerHandler("jqGridInlineErrorSaveRow", [rowid, res, stat, null, o]);
if($.isFunction(o.errorfunc) ) {
o.errorfunc.call($t, rowid, res, stat, null);
}
if(o.restoreAfterError === true) {
$($t).jqGrid("restoreRow",rowid, o.afterrestorefunc);
}
}
}
},
error:function(res,stat,err){
$("#lui_"+$.jgrid.jqID($t.p.id)).hide();
$($t).triggerHandler("jqGridInlineErrorSaveRow", [rowid, res, stat, err, o]);
if($.isFunction(o.errorfunc) ) {
o.errorfunc.call($t, rowid, res, stat, err);
} else {
var rT = res.responseText || res.statusText;
try {
$.jgrid.info_dialog($.jgrid.errors.errcap,'<div class="ui-state-error">'+ rT +'</div>', $.jgrid.edit.bClose,{buttonalign:'right'});
} catch(e) {
alert(rT);
}
}
if(o.restoreAfterError === true) {
$($t).jqGrid("restoreRow",rowid, o.afterrestorefunc);
}
}
}, $.jgrid.ajaxOptions, $t.p.ajaxRowOptions || {}));
}
}
return success;
},
restoreRow : function(rowid, afterrestorefunc) {
// Compatible mode old versions
var args = $.makeArray(arguments).slice(1), o={};
if( $.type(args[0]) === "object" ) {
o = args[0];
} else {
if ($.isFunction(afterrestorefunc)) { o.afterrestorefunc = afterrestorefunc; }
}
o = $.extend(true, {}, $.jgrid.inlineEdit, o );
// End compatible
return this.each(function(){
var $t= this, fr=-1, ind, ares={}, k;
if (!$t.grid ) { return; }
ind = $($t).jqGrid("getInd",rowid,true);
if(ind === false) {return;}
var bfcr = $.isFunction( o.beforeCancelRow ) ? o.beforeCancelRow.call($t, o, sr) : undefined;
if( bfcr === undefined ) {
bfcr = true;
}
if(!bfcr) { return; }
for(k=0;k<$t.p.savedRow.length;k++) {
if( String($t.p.savedRow[k].id) === String(rowid)) {fr = k; break;}
}
if(fr >= 0) {
if($.isFunction($.fn.datepicker)) {
try {
$("input.hasDatepicker","#"+$.jgrid.jqID(ind.id)).datepicker('hide');
} catch (e) {}
}
$.each($t.p.colModel, function(){
if(this.editable === true && $t.p.savedRow[fr].hasOwnProperty(this.name)) {
ares[this.name] = $t.p.savedRow[fr][this.name];
}
});
$($t).jqGrid("setRowData",rowid,ares);
$(ind).attr("editable","0").unbind("keydown");
$t.p.savedRow.splice(fr,1);
if($("#"+$.jgrid.jqID(rowid), "#"+$.jgrid.jqID($t.p.id)).hasClass("jqgrid-new-row")){
setTimeout(function(){
$($t).jqGrid("delRowData",rowid);
$($t).jqGrid('showAddEditButtons');
},0);
}
}
$($t).triggerHandler("jqGridInlineAfterRestoreRow", [rowid]);
if ($.isFunction(o.afterrestorefunc))
{
o.afterrestorefunc.call($t, rowid);
}
});
},
addRow : function ( p ) {
p = $.extend(true, {
rowID : null,
initdata : {},
position :"first",
useDefValues : true,
useFormatter : false,
addRowParams : {extraparam:{}}
},p || {});
return this.each(function(){
if (!this.grid ) { return; }
var $t = this;
var bfar = $.isFunction( p.beforeAddRow ) ? p.beforeAddRow.call($t,p.addRowParams) : undefined;
if( bfar === undefined ) {
bfar = true;
}
if(!bfar) { return; }
p.rowID = $.isFunction(p.rowID) ? p.rowID.call($t, p) : ( (p.rowID != null) ? p.rowID : $.jgrid.randId());
if(p.useDefValues === true) {
$($t.p.colModel).each(function(){
if( this.editoptions && this.editoptions.defaultValue ) {
var opt = this.editoptions.defaultValue,
tmp = $.isFunction(opt) ? opt.call($t) : opt;
p.initdata[this.name] = tmp;
}
});
}
$($t).jqGrid('addRowData', p.rowID, p.initdata, p.position);
p.rowID = $t.p.idPrefix + p.rowID;
$("#"+$.jgrid.jqID(p.rowID), "#"+$.jgrid.jqID($t.p.id)).addClass("jqgrid-new-row");
if(p.useFormatter) {
$("#"+$.jgrid.jqID(p.rowID)+" .ui-inline-edit", "#"+$.jgrid.jqID($t.p.id)).click();
} else {
var opers = $t.p.prmNames,
oper = opers.oper;
p.addRowParams.extraparam[oper] = opers.addoper;
$($t).jqGrid('editRow', p.rowID, p.addRowParams);
$($t).jqGrid('setSelection', p.rowID);
}
});
},
inlineNav : function (elem, o) {
o = $.extend(true,{
edit: true,
editicon: "ui-icon-pencil",
add: true,
addicon:"ui-icon-plus",
save: true,
saveicon:"ui-icon-disk",
cancel: true,
cancelicon:"ui-icon-cancel",
addParams : {addRowParams: {extraparam: {}}},
editParams : {},
restoreAfterSelect : true
}, $.jgrid.nav, o ||{});
return this.each(function(){
if (!this.grid ) { return; }
var $t = this, onSelect, gID = $.jgrid.jqID($t.p.id);
$t.p._inlinenav = true;
// detect the formatactions column
if(o.addParams.useFormatter === true) {
var cm = $t.p.colModel,i;
for (i = 0; i<cm.length; i++) {
if(cm[i].formatter && cm[i].formatter === "actions" ) {
if(cm[i].formatoptions) {
var defaults = {
keys:false,
onEdit : null,
onSuccess: null,
afterSave:null,
onError: null,
afterRestore: null,
extraparam: {},
url: null
},
ap = $.extend( defaults, cm[i].formatoptions );
o.addParams.addRowParams = {
"keys" : ap.keys,
"oneditfunc" : ap.onEdit,
"successfunc" : ap.onSuccess,
"url" : ap.url,
"extraparam" : ap.extraparam,
"aftersavefunc" : ap.afterSave,
"errorfunc": ap.onError,
"afterrestorefunc" : ap.afterRestore
};
}
break;
}
}
}
if(o.add) {
$($t).jqGrid('navButtonAdd', elem,{
caption : o.addtext,
title : o.addtitle,
buttonicon : o.addicon,
id : $t.p.id+"_iladd",
onClickButton : function () {
$($t).jqGrid('addRow', o.addParams);
if(!o.addParams.useFormatter) {
$("#"+gID+"_ilsave").removeClass('ui-state-disabled');
$("#"+gID+"_ilcancel").removeClass('ui-state-disabled');
$("#"+gID+"_iladd").addClass('ui-state-disabled');
$("#"+gID+"_iledit").addClass('ui-state-disabled');
}
}
});
}
if(o.edit) {
$($t).jqGrid('navButtonAdd', elem,{
caption : o.edittext,
title : o.edittitle,
buttonicon : o.editicon,
id : $t.p.id+"_iledit",
onClickButton : function () {
var sr = $($t).jqGrid('getGridParam','selrow');
if(sr) {
$($t).jqGrid('editRow', sr, o.editParams);
$("#"+gID+"_ilsave").removeClass('ui-state-disabled');
$("#"+gID+"_ilcancel").removeClass('ui-state-disabled');
$("#"+gID+"_iladd").addClass('ui-state-disabled');
$("#"+gID+"_iledit").addClass('ui-state-disabled');
} else {
$.jgrid.viewModal("#alertmod",{gbox:"#gbox_"+gID,jqm:true});$("#jqg_alrt").focus();
}
}
});
}
if(o.save) {
$($t).jqGrid('navButtonAdd', elem,{
caption : o.savetext || '',
title : o.savetitle || 'Save row',
buttonicon : o.saveicon,
id : $t.p.id+"_ilsave",
onClickButton : function () {
var sr = $t.p.savedRow[0].id;
if(sr) {
var opers = $t.p.prmNames,
oper = opers.oper, tmpParams = o.editParams;
if($("#"+$.jgrid.jqID(sr), "#"+gID ).hasClass("jqgrid-new-row")) {
o.addParams.addRowParams.extraparam[oper] = opers.addoper;
tmpParams = o.addParams.addRowParams;
} else {
if(!o.editParams.extraparam) {
o.editParams.extraparam = {};
}
o.editParams.extraparam[oper] = opers.editoper;
}
if( $($t).jqGrid('saveRow', sr, tmpParams) ) {
$($t).jqGrid('showAddEditButtons');
}
} else {
$.jgrid.viewModal("#alertmod",{gbox:"#gbox_"+gID,jqm:true});$("#jqg_alrt").focus();
}
}
});
$("#"+gID+"_ilsave").addClass('ui-state-disabled');
}
if(o.cancel) {
$($t).jqGrid('navButtonAdd', elem,{
caption : o.canceltext || '',
title : o.canceltitle || 'Cancel row editing',
buttonicon : o.cancelicon,
id : $t.p.id+"_ilcancel",
onClickButton : function () {
var sr = $t.p.savedRow[0].id, cancelPrm = o.editParams;
if(sr) {
if($("#"+$.jgrid.jqID(sr), "#"+gID ).hasClass("jqgrid-new-row")) {
cancelPrm = o.addParams.addRowParams;
}
$($t).jqGrid('restoreRow', sr, cancelPrm);
$($t).jqGrid('showAddEditButtons');
} else {
$.jgrid.viewModal("#alertmod",{gbox:"#gbox_"+gID,jqm:true});$("#jqg_alrt").focus();
}
}
});
$("#"+gID+"_ilcancel").addClass('ui-state-disabled');
}
if(o.restoreAfterSelect === true) {
if($.isFunction($t.p.beforeSelectRow)) {
onSelect = $t.p.beforeSelectRow;
} else {
onSelect = false;
}
$t.p.beforeSelectRow = function(id, stat) {
var ret = true;
if($t.p.savedRow.length > 0 && $t.p._inlinenav===true && ( id !== $t.p.selrow && $t.p.selrow !==null) ) {
if($t.p.selrow === o.addParams.rowID ) {
$($t).jqGrid('delRowData', $t.p.selrow);
} else {
$($t).jqGrid('restoreRow', $t.p.selrow, o.editParams);
}
$($t).jqGrid('showAddEditButtons');
}
if(onSelect) {
ret = onSelect.call($t, id, stat);
}
return ret;
};
}
});
},
showAddEditButtons : function() {
return this.each(function(){
if (!this.grid ) { return; }
var gID = $.jgrid.jqID(this.p.id);
$("#"+gID+"_ilsave").addClass('ui-state-disabled');
$("#"+gID+"_ilcancel").addClass('ui-state-disabled');
$("#"+gID+"_iladd").removeClass('ui-state-disabled');
$("#"+gID+"_iledit").removeClass('ui-state-disabled');
});
}
//end inline edit
});
})(jQuery);

View file

@ -0,0 +1,520 @@
/*jshint evil:true, eqeqeq:false, eqnull:true, devel:true */
/*global jQuery */
(function($){
/*
**
* jqGrid addons using jQuery UI
* Author: Mark Williams
* Dual licensed under the MIT and GPL licenses:
* http://www.opensource.org/licenses/mit-license.php
* http://www.gnu.org/licenses/gpl-2.0.html
* depends on jQuery UI
**/
"use strict";
if ($.jgrid.msie && $.jgrid.msiever()===8) {
$.expr[":"].hidden = function(elem) {
return elem.offsetWidth === 0 || elem.offsetHeight === 0 ||
elem.style.display === "none";
};
}
// requiere load multiselect before grid
$.jgrid._multiselect = false;
if($.ui) {
if ($.ui.multiselect ) {
if($.ui.multiselect.prototype._setSelected) {
var setSelected = $.ui.multiselect.prototype._setSelected;
$.ui.multiselect.prototype._setSelected = function(item,selected) {
var ret = setSelected.call(this,item,selected);
if (selected && this.selectedList) {
var elt = this.element;
this.selectedList.find('li').each(function() {
if ($(this).data('optionLink')) {
$(this).data('optionLink').remove().appendTo(elt);
}
});
}
return ret;
};
}
if($.ui.multiselect.prototype.destroy) {
$.ui.multiselect.prototype.destroy = function() {
this.element.show();
this.container.remove();
if ($.Widget === undefined) {
$.widget.prototype.destroy.apply(this, arguments);
} else {
$.Widget.prototype.destroy.apply(this, arguments);
}
};
}
$.jgrid._multiselect = true;
}
}
$.jgrid.extend({
sortableColumns : function (tblrow)
{
return this.each(function (){
var ts = this, tid= $.jgrid.jqID( ts.p.id );
function start() {ts.p.disableClick = true;}
var sortable_opts = {
"tolerance" : "pointer",
"axis" : "x",
"scrollSensitivity": "1",
"items": '>th:not(:has(#jqgh_'+tid+'_cb'+',#jqgh_'+tid+'_rn'+',#jqgh_'+tid+'_subgrid),:hidden)',
"placeholder": {
element: function(item) {
var el = $(document.createElement(item[0].nodeName))
.addClass(item[0].className+" ui-sortable-placeholder ui-state-highlight")
.removeClass("ui-sortable-helper")[0];
return el;
},
update: function(self, p) {
p.height(self.currentItem.innerHeight() - parseInt(self.currentItem.css('paddingTop')||0, 10) - parseInt(self.currentItem.css('paddingBottom')||0, 10));
p.width(self.currentItem.innerWidth() - parseInt(self.currentItem.css('paddingLeft')||0, 10) - parseInt(self.currentItem.css('paddingRight')||0, 10));
}
},
"update": function(event, ui) {
var p = $(ui.item).parent(),
th = $(">th", p),
colModel = ts.p.colModel,
cmMap = {}, tid= ts.p.id+"_";
$.each(colModel, function(i) { cmMap[this.name]=i; });
var permutation = [];
th.each(function() {
var id = $(">div", this).get(0).id.replace(/^jqgh_/, "").replace(tid,"");
if (cmMap.hasOwnProperty(id)) {
permutation.push(cmMap[id]);
}
});
$(ts).jqGrid("remapColumns",permutation, true, true);
if ($.isFunction(ts.p.sortable.update)) {
ts.p.sortable.update(permutation);
}
setTimeout(function(){ts.p.disableClick=false;}, 50);
}
};
if (ts.p.sortable.options) {
$.extend(sortable_opts, ts.p.sortable.options);
} else if ($.isFunction(ts.p.sortable)) {
ts.p.sortable = { "update" : ts.p.sortable };
}
if (sortable_opts.start) {
var s = sortable_opts.start;
sortable_opts.start = function(e,ui) {
start();
s.call(this,e,ui);
};
} else {
sortable_opts.start = start;
}
if (ts.p.sortable.exclude) {
sortable_opts.items += ":not("+ts.p.sortable.exclude+")";
}
var $e = tblrow.sortable(sortable_opts), dataObj = $e.data("sortable") || $e.data("uiSortable");
if (dataObj != null) {
dataObj.data("sortable").floating = true;
}
});
},
columnChooser : function(opts) {
var self = this;
if($("#colchooser_"+$.jgrid.jqID(self[0].p.id)).length ) { return; }
var selector = $('<div id="colchooser_'+self[0].p.id+'" style="position:relative;overflow:hidden"><div><select multiple="multiple"></select></div></div>');
var select = $('select', selector);
function insert(perm,i,v) {
if(i>=0){
var a = perm.slice();
var b = a.splice(i,Math.max(perm.length-i,i));
if(i>perm.length) { i = perm.length; }
a[i] = v;
return a.concat(b);
}
}
opts = $.extend({
"width" : 420,
"height" : 240,
"classname" : null,
"done" : function(perm) { if (perm) { self.jqGrid("remapColumns", perm, true); } },
/* msel is either the name of a ui widget class that
extends a multiselect, or a function that supports
creating a multiselect object (with no argument,
or when passed an object), and destroying it (when
passed the string "destroy"). */
"msel" : "multiselect",
/* "msel_opts" : {}, */
/* dlog is either the name of a ui widget class that
behaves in a dialog-like way, or a function, that
supports creating a dialog (when passed dlog_opts)
or destroying a dialog (when passed the string
"destroy")
*/
"dlog" : "dialog",
"dialog_opts" : {
"minWidth": 470
},
/* dlog_opts is either an option object to be passed
to "dlog", or (more likely) a function that creates
the options object.
The default produces a suitable options object for
ui.dialog */
"dlog_opts" : function(opts) {
var buttons = {};
buttons[opts.bSubmit] = function() {
opts.apply_perm();
opts.cleanup(false);
};
buttons[opts.bCancel] = function() {
opts.cleanup(true);
};
return $.extend(true, {
"buttons": buttons,
"close": function() {
opts.cleanup(true);
},
"modal" : opts.modal || false,
"resizable": opts.resizable || true,
"width": opts.width+20
}, opts.dialog_opts || {});
},
/* Function to get the permutation array, and pass it to the
"done" function */
"apply_perm" : function() {
$('option',select).each(function() {
if (this.selected) {
self.jqGrid("showCol", colModel[this.value].name);
} else {
self.jqGrid("hideCol", colModel[this.value].name);
}
});
var perm = [];
//fixedCols.slice(0);
$('option:selected',select).each(function() { perm.push(parseInt(this.value,10)); });
$.each(perm, function() { delete colMap[colModel[parseInt(this,10)].name]; });
$.each(colMap, function() {
var ti = parseInt(this,10);
perm = insert(perm,ti,ti);
});
if (opts.done) {
opts.done.call(self, perm);
}
},
/* Function to cleanup the dialog, and select. Also calls the
done function with no permutation (to indicate that the
columnChooser was aborted */
"cleanup" : function(calldone) {
call(opts.dlog, selector, 'destroy');
call(opts.msel, select, 'destroy');
selector.remove();
if (calldone && opts.done) {
opts.done.call(self);
}
},
"msel_opts" : {}
}, $.jgrid.col, opts || {});
if($.ui) {
if ($.ui.multiselect ) {
if(opts.msel === "multiselect") {
if(!$.jgrid._multiselect) {
// should be in language file
alert("Multiselect plugin loaded after jqGrid. Please load the plugin before the jqGrid!");
return;
}
opts.msel_opts = $.extend($.ui.multiselect.defaults,opts.msel_opts);
}
}
}
if (opts.caption) {
selector.attr("title", opts.caption);
}
if (opts.classname) {
selector.addClass(opts.classname);
select.addClass(opts.classname);
}
if (opts.width) {
$(">div",selector).css({"width": opts.width,"margin":"0 auto"});
select.css("width", opts.width);
}
if (opts.height) {
$(">div",selector).css("height", opts.height);
select.css("height", opts.height - 10);
}
var colModel = self.jqGrid("getGridParam", "colModel");
var colNames = self.jqGrid("getGridParam", "colNames");
var colMap = {}, fixedCols = [];
select.empty();
$.each(colModel, function(i) {
colMap[this.name] = i;
if (this.hidedlg) {
if (!this.hidden) {
fixedCols.push(i);
}
return;
}
select.append("<option value='"+i+"' "+
(this.hidden?"":"selected='selected'")+">"+$.jgrid.stripHtml(colNames[i])+"</option>");
});
function call(fn, obj) {
if (!fn) { return; }
if (typeof fn === 'string') {
if ($.fn[fn]) {
$.fn[fn].apply(obj, $.makeArray(arguments).slice(2));
}
} else if ($.isFunction(fn)) {
fn.apply(obj, $.makeArray(arguments).slice(2));
}
}
var dopts = $.isFunction(opts.dlog_opts) ? opts.dlog_opts.call(self, opts) : opts.dlog_opts;
call(opts.dlog, selector, dopts);
var mopts = $.isFunction(opts.msel_opts) ? opts.msel_opts.call(self, opts) : opts.msel_opts;
call(opts.msel, select, mopts);
},
sortableRows : function (opts) {
// Can accept all sortable options and events
return this.each(function(){
var $t = this;
if(!$t.grid) { return; }
// Currently we disable a treeGrid sortable
if($t.p.treeGrid) { return; }
if($.fn.sortable) {
opts = $.extend({
"cursor":"move",
"axis" : "y",
"items": ".jqgrow"
},
opts || {});
if(opts.start && $.isFunction(opts.start)) {
opts._start_ = opts.start;
delete opts.start;
} else {opts._start_=false;}
if(opts.update && $.isFunction(opts.update)) {
opts._update_ = opts.update;
delete opts.update;
} else {opts._update_ = false;}
opts.start = function(ev,ui) {
$(ui.item).css("border-width","0");
$("td",ui.item).each(function(i){
this.style.width = $t.grid.cols[i].style.width;
});
if($t.p.subGrid) {
var subgid = $(ui.item).attr("id");
try {
$($t).jqGrid('collapseSubGridRow',subgid);
} catch (e) {}
}
if(opts._start_) {
opts._start_.apply(this,[ev,ui]);
}
};
opts.update = function (ev,ui) {
$(ui.item).css("border-width","");
if($t.p.rownumbers === true) {
$("td.jqgrid-rownum",$t.rows).each(function( i ){
$(this).html( i+1+(parseInt($t.p.page,10)-1)*parseInt($t.p.rowNum,10) );
});
}
if(opts._update_) {
opts._update_.apply(this,[ev,ui]);
}
};
$("tbody:first",$t).sortable(opts);
$("tbody:first",$t).disableSelection();
}
});
},
gridDnD : function(opts) {
return this.each(function(){
var $t = this, i, cn;
if(!$t.grid) { return; }
// Currently we disable a treeGrid drag and drop
if($t.p.treeGrid) { return; }
if(!$.fn.draggable || !$.fn.droppable) { return; }
function updateDnD ()
{
var datadnd = $.data($t,"dnd");
$("tr.jqgrow:not(.ui-draggable)",$t).draggable($.isFunction(datadnd.drag) ? datadnd.drag.call($($t),datadnd) : datadnd.drag);
}
var appender = "<table id='jqgrid_dnd' class='ui-jqgrid-dnd'></table>";
if($("#jqgrid_dnd")[0] === undefined) {
$('body').append(appender);
}
if(typeof opts === 'string' && opts === 'updateDnD' && $t.p.jqgdnd===true) {
updateDnD();
return;
}
opts = $.extend({
"drag" : function (opts) {
return $.extend({
start : function (ev, ui) {
var i, subgid;
// if we are in subgrid mode try to collapse the node
if($t.p.subGrid) {
subgid = $(ui.helper).attr("id");
try {
$($t).jqGrid('collapseSubGridRow',subgid);
} catch (e) {}
}
// hack
// drag and drop does not insert tr in table, when the table has no rows
// we try to insert new empty row on the target(s)
for (i=0;i<$.data($t,"dnd").connectWith.length;i++){
if($($.data($t,"dnd").connectWith[i]).jqGrid('getGridParam','reccount') === 0 ){
$($.data($t,"dnd").connectWith[i]).jqGrid('addRowData','jqg_empty_row',{});
}
}
ui.helper.addClass("ui-state-highlight");
$("td",ui.helper).each(function(i) {
this.style.width = $t.grid.headers[i].width+"px";
});
if(opts.onstart && $.isFunction(opts.onstart) ) { opts.onstart.call($($t),ev,ui); }
},
stop :function(ev,ui) {
var i, ids;
if(ui.helper.dropped && !opts.dragcopy) {
ids = $(ui.helper).attr("id");
if(ids === undefined) { ids = $(this).attr("id"); }
$($t).jqGrid('delRowData',ids );
}
// if we have a empty row inserted from start event try to delete it
for (i=0;i<$.data($t,"dnd").connectWith.length;i++){
$($.data($t,"dnd").connectWith[i]).jqGrid('delRowData','jqg_empty_row');
}
if(opts.onstop && $.isFunction(opts.onstop) ) { opts.onstop.call($($t),ev,ui); }
}
},opts.drag_opts || {});
},
"drop" : function (opts) {
return $.extend({
accept: function(d) {
if (!$(d).hasClass('jqgrow')) { return d;}
var tid = $(d).closest("table.ui-jqgrid-btable");
if(tid.length > 0 && $.data(tid[0],"dnd") !== undefined) {
var cn = $.data(tid[0],"dnd").connectWith;
return $.inArray('#'+$.jgrid.jqID(this.id),cn) !== -1 ? true : false;
}
return false;
},
drop: function(ev, ui) {
if (!$(ui.draggable).hasClass('jqgrow')) { return; }
var accept = $(ui.draggable).attr("id");
var getdata = ui.draggable.parent().parent().jqGrid('getRowData',accept);
if(!opts.dropbyname) {
var j =0, tmpdata = {}, nm, key;
var dropmodel = $("#"+$.jgrid.jqID(this.id)).jqGrid('getGridParam','colModel');
try {
for (key in getdata) {
if (getdata.hasOwnProperty(key)) {
nm = dropmodel[j].name;
if( !(nm === 'cb' || nm === 'rn' || nm === 'subgrid' )) {
if(getdata.hasOwnProperty(key) && dropmodel[j]) {
tmpdata[nm] = getdata[key];
}
}
j++;
}
}
getdata = tmpdata;
} catch (e) {}
}
ui.helper.dropped = true;
if(opts.beforedrop && $.isFunction(opts.beforedrop) ) {
//parameters to this callback - event, element, data to be inserted, sender, reciever
// should return object which will be inserted into the reciever
var datatoinsert = opts.beforedrop.call(this,ev,ui,getdata,$('#'+$.jgrid.jqID($t.p.id)),$(this));
if (datatoinsert !== undefined && datatoinsert !== null && typeof datatoinsert === "object") { getdata = datatoinsert; }
}
if(ui.helper.dropped) {
var grid;
if(opts.autoid) {
if($.isFunction(opts.autoid)) {
grid = opts.autoid.call(this,getdata);
} else {
grid = Math.ceil(Math.random()*1000);
grid = opts.autoidprefix+grid;
}
}
// NULL is interpreted as undefined while null as object
$("#"+$.jgrid.jqID(this.id)).jqGrid('addRowData',grid,getdata,opts.droppos);
}
if(opts.ondrop && $.isFunction(opts.ondrop) ) { opts.ondrop.call(this,ev,ui, getdata); }
}}, opts.drop_opts || {});
},
"onstart" : null,
"onstop" : null,
"beforedrop": null,
"ondrop" : null,
"drop_opts" : {
"activeClass": "ui-state-active",
"hoverClass": "ui-state-hover"
},
"drag_opts" : {
"revert": "invalid",
"helper": "clone",
"cursor": "move",
"appendTo" : "#jqgrid_dnd",
"zIndex": 5000
},
"dragcopy": false,
"dropbyname" : false,
"droppos" : "first",
"autoid" : true,
"autoidprefix" : "dnd_"
}, opts || {});
if(!opts.connectWith) { return; }
opts.connectWith = opts.connectWith.split(",");
opts.connectWith = $.map(opts.connectWith,function(n){return $.trim(n);});
$.data($t,"dnd",opts);
if($t.p.reccount !== 0 && !$t.p.jqgdnd) {
updateDnD();
}
$t.p.jqgdnd = true;
for (i=0;i<opts.connectWith.length;i++){
cn =opts.connectWith[i];
$(cn).droppable($.isFunction(opts.drop) ? opts.drop.call($($t),opts) : opts.drop);
}
});
},
gridResize : function(opts) {
return this.each(function(){
var $t = this, gID = $.jgrid.jqID($t.p.id);
if(!$t.grid || !$.fn.resizable) { return; }
opts = $.extend({}, opts || {});
if(opts.alsoResize ) {
opts._alsoResize_ = opts.alsoResize;
delete opts.alsoResize;
} else {
opts._alsoResize_ = false;
}
if(opts.stop && $.isFunction(opts.stop)) {
opts._stop_ = opts.stop;
delete opts.stop;
} else {
opts._stop_ = false;
}
opts.stop = function (ev, ui) {
$($t).jqGrid('setGridParam',{height:$("#gview_"+gID+" .ui-jqgrid-bdiv").height()});
$($t).jqGrid('setGridWidth',ui.size.width,opts.shrinkToFit);
if(opts._stop_) { opts._stop_.call($t,ev,ui); }
};
if(opts._alsoResize_) {
var optstest = "{\'#gview_"+gID+" .ui-jqgrid-bdiv\':true,'" +opts._alsoResize_+"':true}";
opts.alsoResize = eval('('+optstest+')'); // the only way that I found to do this
} else {
opts.alsoResize = $(".ui-jqgrid-bdiv","#gview_"+gID);
}
delete opts._alsoResize_;
$("#gbox_"+gID).resizable(opts);
});
}
});
})(jQuery);

View file

@ -0,0 +1,501 @@
/*jshint eqeqeq:false */
/*global jQuery */
(function($){
/**
* jqGrid pivot functions
* Tony Tomov tony@trirand.com
* http://trirand.com/blog/
* Dual licensed under the MIT and GPL licenses:
* http://www.opensource.org/licenses/mit-license.php
* http://www.gnu.org/licenses/gpl-2.0.html
*/
"use strict";
// To optimize the search we need custom array filter
// This code is taken from
// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/filter
function _pivotfilter (fn, context) {
var i,
value,
result = [],
length;
if (!this || typeof fn !== 'function' || (fn instanceof RegExp)) {
throw new TypeError();
}
length = this.length;
for (i = 0; i < length; i++) {
if (this.hasOwnProperty(i)) {
value = this[i];
if (fn.call(context, value, i, this)) {
result.push(value);
// We need break in order to cancel loop
// in case the row is found
break;
}
}
}
return result;
}
$.assocArraySize = function(obj) {
// http://stackoverflow.com/a/6700/11236
var size = 0, key;
for (key in obj) {
if (obj.hasOwnProperty(key)) {
size++;
}
}
return size;
};
$.jgrid.extend({
pivotSetup : function( data, options ){
// data should come in json format
// The function return the new colModel and the transformed data
// again with group setup options which then will be passed to the grid
var columns =[],
pivotrows =[],
summaries = [],
member=[],
labels=[],
groupOptions = {
grouping : true,
groupingView : {
groupField : [],
groupSummary: [],
groupSummaryPos:[]
}
},
headers = [],
o = $.extend ( {
rowTotals : false,
rowTotalsText : 'Total',
// summary columns
colTotals : false,
groupSummary : true,
groupSummaryPos : 'header',
frozenStaticCols : false
}, options || {});
this.each(function(){
var
row,
rowindex,
i,
rowlen = data.length,
xlen, ylen, aggrlen,
tmp,
newObj,
r=0;
// utility funcs
/*
* Filter the data to a given criteria. Return the firt occurance
*/
function find(ar, fun, extra) {
var res;
res = _pivotfilter.call(ar, fun, extra);
return res.length > 0 ? res[0] : null;
}
/*
* Check if the grouped row column exist (See find)
* If the row is not find in pivot rows retun null,
* otherviese the column
*/
function findGroup(item, index) {
var j = 0, ret = true, i;
for(i in item) {
if(item[i] != this[j]) {
ret = false;
break;
}
j++;
if(j>=this.length) {
break;
}
}
if(ret) {
rowindex = index;
}
return ret;
}
/*
* Perform calculations of the pivot values.
*/
function calculation(oper, v, field, rc) {
var ret;
switch (oper) {
case "sum" :
ret = parseFloat(v||0) + parseFloat((rc[field]||0));
break;
case "count" :
if(v==="" || v == null) {
v=0;
}
if(rc.hasOwnProperty(field)) {
ret = v+1;
} else {
ret = 0;
}
break;
case "min" :
if(v==="" || v == null) {
ret = parseFloat(rc[field]||0);
} else {
ret =Math.min(parseFloat(v),parseFloat(rc[field]||0));
}
break;
case "max" :
if(v==="" || v == null) {
ret = parseFloat(rc[field]||0);
} else {
ret = Math.max(parseFloat(v),parseFloat(rc[field]||0));
}
break;
}
return ret;
}
/*
* The function agragates the values of the pivot grid.
* Return the current row with pivot summary values
*/
function agregateFunc ( row, aggr, value, curr) {
// default is sum
var arrln = aggr.length, i, label, j, jv, mainval="",swapvals=[];
if($.isArray(value)) {
jv = value.length;
swapvals = value;
} else {
jv = 1;
swapvals[0]=value;
}
member = [];
labels = [];
member.root = 0;
for(j=0;j<jv;j++) {
var tmpmember = [], vl;
for(i=0; i < arrln; i++) {
if(value == null) {
label = $.trim(aggr[i].member)+"_"+aggr[i].aggregator;
vl = label;
swapvals[0]= vl;
} else {
vl = value[j].replace(/\s+/g, '');
try {
label = (arrln === 1 ? mainval + vl : mainval + vl+"_"+aggr[i].aggregator+"_" + String(i));
} catch(e) {}
}
label = !isNaN(parseInt(label,10)) ? label + " " : label;
curr[label] = tmpmember[label] = calculation( aggr[i].aggregator, curr[label], aggr[i].member, row);
if(j<=1 && vl !== '_r_Totals' && mainval === "") { // this does not fix full the problem
mainval = vl;
}
}
//vl = !isNaN(parseInt(vl,10)) ? vl + " " : vl;
member[label] = tmpmember;
labels[label] = swapvals[j];
}
return curr;
}
// Making the row totals without to add in yDimension
if(o.rowTotals && o.yDimension.length > 0) {
var dn = o.yDimension[0].dataName;
o.yDimension.splice(0,0,{dataName:dn});
o.yDimension[0].converter = function(){ return '_r_Totals'; };
}
// build initial columns (colModel) from xDimension
xlen = $.isArray(o.xDimension) ? o.xDimension.length : 0;
ylen = o.yDimension.length;
aggrlen = $.isArray(o.aggregates) ? o.aggregates.length : 0;
if(xlen === 0 || aggrlen === 0) {
throw("xDimension or aggregates optiona are not set!");
}
var colc;
for(i = 0; i< xlen; i++) {
colc = {name:o.xDimension[i].dataName, frozen: o.frozenStaticCols};
if(o.xDimension[i].isGroupField == null) {
o.xDimension[i].isGroupField = true;
}
colc = $.extend(true, colc, o.xDimension[i]);
columns.push( colc );
}
var groupfields = xlen - 1, tree={};
//tree = { text: 'root', leaf: false, children: [] };
//loop over alll the source data
while( r < rowlen ) {
row = data[r];
var xValue = [];
var yValue = [];
tmp = {};
i = 0;
// build the data from xDimension
do {
xValue[i] = $.trim(row[o.xDimension[i].dataName]);
tmp[o.xDimension[i].dataName] = xValue[i];
i++;
} while( i < xlen );
var k = 0;
rowindex = -1;
// check to see if the row is in our new pivotrow set
newObj = find(pivotrows, findGroup, xValue);
if(!newObj) {
// if the row is not in our set
k = 0;
// if yDimension is set
if(ylen>=1) {
// build the cols set in yDimension
for(k=0;k<ylen;k++) {
yValue[k] = $.trim(row[o.yDimension[k].dataName]);
// Check to see if we have user defined conditions
if(o.yDimension[k].converter && $.isFunction(o.yDimension[k].converter)) {
yValue[k] = o.yDimension[k].converter.call(this, yValue[k], xValue, yValue);
}
}
// make the colums based on aggregates definition
// and return the members for late calculation
tmp = agregateFunc( row, o.aggregates, yValue, tmp );
} else if( ylen === 0 ) {
// if not set use direct the aggregates
tmp = agregateFunc( row, o.aggregates, null, tmp );
}
// add the result in pivot rows
pivotrows.push( tmp );
} else {
// the pivot exists
if( rowindex >= 0) {
k = 0;
// make the recalculations
if(ylen>=1) {
for(k=0;k<ylen;k++) {
yValue[k] = $.trim(row[o.yDimension[k].dataName]);
if(o.yDimension[k].converter && $.isFunction(o.yDimension[k].converter)) {
yValue[k] = o.yDimension[k].converter.call(this, yValue[k], xValue, yValue);
}
}
newObj = agregateFunc( row, o.aggregates, yValue, newObj );
} else if( ylen === 0 ) {
newObj = agregateFunc( row, o.aggregates, null, newObj );
}
// update the row
pivotrows[rowindex] = newObj;
}
}
var kj=0, current = null,existing = null, kk;
// Build a JSON tree from the member (see aggregateFunc)
// to make later the columns
//
for (kk in member) {
if(kj === 0) {
if (!tree.children||tree.children === undefined){
tree = { text: kk, level : 0, children: [], label: kk };
}
current = tree.children;
} else {
existing = null;
for (i=0; i < current.length; i++) {
if (current[i].text === kk) {
//current[i].fields=member[kk];
existing = current[i];
break;
}
}
if (existing) {
current = existing.children;
} else {
current.push({ children: [], text: kk, level: kj, fields: member[kk], label: labels[kk] });
current = current[current.length - 1].children;
}
}
kj++;
}
r++;
}
var lastval=[], initColLen = columns.length, swaplen = initColLen;
if(ylen>0) {
headers[ylen-1] = { useColSpanStyle: false, groupHeaders: []};
}
/*
* Recursive function which uses the tree to build the
* columns from the pivot values and set the group Headers
*/
function list(items) {
var l, j, key, k, col;
for (key in items) { // iterate
if (items.hasOwnProperty(key)) {
// write amount of spaces according to level
// and write name and newline
if(typeof items[key] !== "object") {
// If not a object build the header of the appropriate level
if( key === 'level') {
if(lastval[items.level] === undefined) {
lastval[items.level] ='';
if(items.level>0 && items.text !== '_r_Totals') {
headers[items.level-1] = {
useColSpanStyle: false,
groupHeaders: []
};
}
}
if(lastval[items.level] !== items.text && items.children.length && items.text !== '_r_Totals') {
if(items.level>0) {
headers[items.level-1].groupHeaders.push({
titleText: items.label,
numberOfColumns : 0
});
var collen = headers[items.level-1].groupHeaders.length-1,
colpos = collen === 0 ? swaplen : initColLen+aggrlen;
if(items.level-1=== (o.rowTotals ? 1 : 0)) {
if(collen>0) {
var l1 = headers[items.level-1].groupHeaders[collen-1].numberOfColumns;
if(l1) {
colpos = l1 + 1 + o.aggregates.length;
}
}
}
headers[items.level-1].groupHeaders[collen].startColumnName = columns[colpos].name;
headers[items.level-1].groupHeaders[collen].numberOfColumns = columns.length - colpos;
initColLen = columns.length;
}
}
lastval[items.level] = items.text;
}
// This is in case when the member contain more than one summary item
if(items.level === ylen && key==='level' && ylen >0) {
if( aggrlen > 1){
var ll=1;
for( l in items.fields) {
if(ll===1) {
headers[ylen-1].groupHeaders.push({startColumnName: l, numberOfColumns: 1, titleText: items.text});
}
ll++;
}
headers[ylen-1].groupHeaders[headers[ylen-1].groupHeaders.length-1].numberOfColumns = ll-1;
} else {
headers.splice(ylen-1,1);
}
}
}
// if object, call recursively
if (items[key] != null && typeof items[key] === "object") {
list(items[key]);
}
// Finally build the coulumns
if( key === 'level') {
if(items.level >0){
j=0;
for(l in items.fields) {
col = {};
for(k in o.aggregates[j]) {
if(o.aggregates[j].hasOwnProperty(k)) {
switch( k ) {
case 'member':
case 'label':
case 'aggregator':
break;
default:
col[k] = o.aggregates[j][k];
}
}
}
if(aggrlen>1) {
col.name = l;
col.label = o.aggregates[j].label || items.label;
} else {
col.name = items.text;
col.label = items.text==='_r_Totals' ? o.rowTotalsText : items.label;
}
columns.push (col);
j++;
}
}
}
}
}
}
list( tree );
var nm;
// loop again trougth the pivot rows in order to build grand total
if(o.colTotals) {
var plen = pivotrows.length;
while(plen--) {
for(i=xlen;i<columns.length;i++) {
nm = columns[i].name;
if(!summaries[nm]) {
summaries[nm] = parseFloat(pivotrows[plen][nm] || 0);
} else {
summaries[nm] += parseFloat(pivotrows[plen][nm] || 0);
}
}
}
}
// based on xDimension levels build grouping
if( groupfields > 0) {
for(i=0;i<groupfields;i++) {
if(columns[i].isGroupField) {
groupOptions.groupingView.groupField.push(columns[i].name);
groupOptions.groupingView.groupSummary.push(o.groupSummary);
groupOptions.groupingView.groupSummaryPos.push(o.groupSummaryPos);
}
}
} else {
// no grouping is needed
groupOptions.grouping = false;
}
groupOptions.sortname = columns[groupfields].name;
groupOptions.groupingView.hideFirstGroupCol = true;
});
// return the final result.
return { "colModel" : columns, "rows": pivotrows, "groupOptions" : groupOptions, "groupHeaders" : headers, summary : summaries };
},
jqPivot : function( data, pivotOpt, gridOpt, ajaxOpt) {
return this.each(function(){
var $t = this;
function pivot( data) {
var pivotGrid = jQuery($t).jqGrid('pivotSetup',data, pivotOpt),
footerrow = $.assocArraySize(pivotGrid.summary) > 0 ? true : false,
query= $.jgrid.from(pivotGrid.rows), i;
for(i=0; i< pivotGrid.groupOptions.groupingView.groupField.length; i++) {
query.orderBy(pivotGrid.groupOptions.groupingView.groupField[i], "a", 'text', '');
}
jQuery($t).jqGrid($.extend(true, {
datastr: $.extend(query.select(),footerrow ? {userdata:pivotGrid.summary} : {}),
datatype: "jsonstring",
footerrow : footerrow,
userDataOnFooter: footerrow,
colModel: pivotGrid.colModel,
viewrecords: true,
sortname: pivotOpt.xDimension[0].dataName // ?????
}, pivotGrid.groupOptions, gridOpt || {}));
var gHead = pivotGrid.groupHeaders;
if(gHead.length) {
for( i = 0;i < gHead.length ; i++) {
if(gHead[i] && gHead[i].groupHeaders.length) {
jQuery($t).jqGrid('setGroupHeaders',gHead[i]);
}
}
}
if(pivotOpt.frozenStaticCols) {
jQuery($t).jqGrid("setFrozenColumns");
}
}
if(typeof data === "string") {
$.ajax($.extend({
url : data,
dataType: 'json',
success : function(response) {
pivot($.jgrid.getAccessor(response, ajaxOpt && ajaxOpt.reader ? ajaxOpt.reader: 'rows') );
}
}, ajaxOpt || {}) );
} else {
pivot( data );
}
});
}
});
})(jQuery);

View file

@ -0,0 +1,307 @@
/*jshint eqeqeq:false */
/*global jQuery */
(function($){
/**
* jqGrid extension for SubGrid Data
* Tony Tomov tony@trirand.com
* http://trirand.com/blog/
* Dual licensed under the MIT and GPL licenses:
* http://www.opensource.org/licenses/mit-license.php
* http://www.gnu.org/licenses/gpl-2.0.html
**/
"use strict";
$.jgrid.extend({
setSubGrid : function () {
return this.each(function (){
var $t = this, cm, i,
suboptions = {
plusicon : "ui-icon-plus",
minusicon : "ui-icon-minus",
openicon: "ui-icon-carat-1-sw",
expandOnLoad: false,
delayOnLoad : 50,
selectOnExpand : false,
selectOnCollapse : false,
reloadOnExpand : true
};
$t.p.subGridOptions = $.extend(suboptions, $t.p.subGridOptions || {});
$t.p.colNames.unshift("");
$t.p.colModel.unshift({name:'subgrid',width: $.jgrid.cell_width ? $t.p.subGridWidth+$t.p.cellLayout : $t.p.subGridWidth,sortable: false,resizable:false,hidedlg:true,search:false,fixed:true});
cm = $t.p.subGridModel;
if(cm[0]) {
cm[0].align = $.extend([],cm[0].align || []);
for(i=0;i<cm[0].name.length;i++) { cm[0].align[i] = cm[0].align[i] || 'left';}
}
});
},
addSubGridCell :function (pos,iRow) {
var prp='',ic,sid;
this.each(function(){
prp = this.formatCol(pos,iRow);
sid= this.p.id;
ic = this.p.subGridOptions.plusicon;
});
return "<td role=\"gridcell\" aria-describedby=\""+sid+"_subgrid\" class=\"ui-sgcollapsed sgcollapsed\" "+prp+"><a style='cursor:pointer;'><span class='ui-icon "+ic+"'></span></a></td>";
},
addSubGrid : function( pos, sind ) {
return this.each(function(){
var ts = this;
if (!ts.grid ) { return; }
//-------------------------
var subGridCell = function(trdiv,cell,pos)
{
var tddiv = $("<td align='"+ts.p.subGridModel[0].align[pos]+"'></td>").html(cell);
$(trdiv).append(tddiv);
};
var subGridXml = function(sjxml, sbid){
var tddiv, i, sgmap,
dummy = $("<table cellspacing='0' cellpadding='0' border='0'><tbody></tbody></table>"),
trdiv = $("<tr></tr>");
for (i = 0; i<ts.p.subGridModel[0].name.length; i++) {
tddiv = $("<th class='ui-state-default ui-th-subgrid ui-th-column ui-th-"+ts.p.direction+"'></th>");
$(tddiv).html(ts.p.subGridModel[0].name[i]);
$(tddiv).width( ts.p.subGridModel[0].width[i]);
$(trdiv).append(tddiv);
}
$(dummy).append(trdiv);
if (sjxml){
sgmap = ts.p.xmlReader.subgrid;
$(sgmap.root+" "+sgmap.row, sjxml).each( function(){
trdiv = $("<tr class='ui-widget-content ui-subtblcell'></tr>");
if(sgmap.repeatitems === true) {
$(sgmap.cell,this).each( function(i) {
subGridCell(trdiv, $(this).text() || '&#160;',i);
});
} else {
var f = ts.p.subGridModel[0].mapping || ts.p.subGridModel[0].name;
if (f) {
for (i=0;i<f.length;i++) {
subGridCell(trdiv, $(f[i],this).text() || '&#160;',i);
}
}
}
$(dummy).append(trdiv);
});
}
var pID = $("table:first",ts.grid.bDiv).attr("id")+"_";
$("#"+$.jgrid.jqID(pID+sbid)).append(dummy);
ts.grid.hDiv.loading = false;
$("#load_"+$.jgrid.jqID(ts.p.id)).hide();
return false;
};
var subGridJson = function(sjxml, sbid){
var tddiv,result,i,cur, sgmap,j,
dummy = $("<table cellspacing='0' cellpadding='0' border='0'><tbody></tbody></table>"),
trdiv = $("<tr></tr>");
for (i = 0; i<ts.p.subGridModel[0].name.length; i++) {
tddiv = $("<th class='ui-state-default ui-th-subgrid ui-th-column ui-th-"+ts.p.direction+"'></th>");
$(tddiv).html(ts.p.subGridModel[0].name[i]);
$(tddiv).width( ts.p.subGridModel[0].width[i]);
$(trdiv).append(tddiv);
}
$(dummy).append(trdiv);
if (sjxml){
sgmap = ts.p.jsonReader.subgrid;
result = $.jgrid.getAccessor(sjxml, sgmap.root);
if ( result !== undefined ) {
for (i=0;i<result.length;i++) {
cur = result[i];
trdiv = $("<tr class='ui-widget-content ui-subtblcell'></tr>");
if(sgmap.repeatitems === true) {
if(sgmap.cell) { cur=cur[sgmap.cell]; }
for (j=0;j<cur.length;j++) {
subGridCell(trdiv, cur[j] || '&#160;',j);
}
} else {
var f = ts.p.subGridModel[0].mapping || ts.p.subGridModel[0].name;
if(f.length) {
for (j=0;j<f.length;j++) {
subGridCell(trdiv, cur[f[j]] || '&#160;',j);
}
}
}
$(dummy).append(trdiv);
}
}
}
var pID = $("table:first",ts.grid.bDiv).attr("id")+"_";
$("#"+$.jgrid.jqID(pID+sbid)).append(dummy);
ts.grid.hDiv.loading = false;
$("#load_"+$.jgrid.jqID(ts.p.id)).hide();
return false;
};
var populatesubgrid = function( rd )
{
var sid,dp, i, j;
sid = $(rd).attr("id");
dp = {nd_: (new Date().getTime())};
dp[ts.p.prmNames.subgridid]=sid;
if(!ts.p.subGridModel[0]) { return false; }
if(ts.p.subGridModel[0].params) {
for(j=0; j < ts.p.subGridModel[0].params.length; j++) {
for(i=0; i<ts.p.colModel.length; i++) {
if(ts.p.colModel[i].name === ts.p.subGridModel[0].params[j]) {
dp[ts.p.colModel[i].name]= $("td:eq("+i+")",rd).text().replace(/\&#160\;/ig,'');
}
}
}
}
if(!ts.grid.hDiv.loading) {
ts.grid.hDiv.loading = true;
$("#load_"+$.jgrid.jqID(ts.p.id)).show();
if(!ts.p.subgridtype) { ts.p.subgridtype = ts.p.datatype; }
if($.isFunction(ts.p.subgridtype)) {
ts.p.subgridtype.call(ts, dp);
} else {
ts.p.subgridtype = ts.p.subgridtype.toLowerCase();
}
switch(ts.p.subgridtype) {
case "xml":
case "json":
$.ajax($.extend({
type:ts.p.mtype,
url: ts.p.subGridUrl,
dataType:ts.p.subgridtype,
data: $.isFunction(ts.p.serializeSubGridData)? ts.p.serializeSubGridData.call(ts, dp) : dp,
complete: function(sxml) {
if(ts.p.subgridtype === "xml") {
subGridXml(sxml.responseXML, sid);
} else {
subGridJson($.jgrid.parse(sxml.responseText),sid);
}
sxml=null;
}
}, $.jgrid.ajaxOptions, ts.p.ajaxSubgridOptions || {}));
break;
}
}
return false;
};
var _id, pID,atd, nhc=0, bfsc, r;
$.each(ts.p.colModel,function(){
if(this.hidden === true || this.name === 'rn' || this.name === 'cb') {
nhc++;
}
});
var len = ts.rows.length, i=1;
if( sind !== undefined && sind > 0) {
i = sind;
len = sind+1;
}
while(i < len) {
if($(ts.rows[i]).hasClass('jqgrow')) {
if(ts.p.scroll) {
$(ts.rows[i].cells[pos]).unbind('click');
}
$(ts.rows[i].cells[pos]).bind('click', function() {
var tr = $(this).parent("tr")[0];
r = tr.nextSibling;
if($(this).hasClass("sgcollapsed")) {
pID = ts.p.id;
_id = tr.id;
if(ts.p.subGridOptions.reloadOnExpand === true || ( ts.p.subGridOptions.reloadOnExpand === false && !$(r).hasClass('ui-subgrid') ) ) {
atd = pos >=1 ? "<td colspan='"+pos+"'>&#160;</td>":"";
bfsc = $(ts).triggerHandler("jqGridSubGridBeforeExpand", [pID + "_" + _id, _id]);
bfsc = (bfsc === false || bfsc === 'stop') ? false : true;
if(bfsc && $.isFunction(ts.p.subGridBeforeExpand)) {
bfsc = ts.p.subGridBeforeExpand.call(ts, pID+"_"+_id,_id);
}
if(bfsc === false) {return false;}
$(tr).after( "<tr role='row' class='ui-subgrid'>"+atd+"<td class='ui-widget-content subgrid-cell'><span class='ui-icon "+ts.p.subGridOptions.openicon+"'></span></td><td colspan='"+parseInt(ts.p.colNames.length-1-nhc,10)+"' class='ui-widget-content subgrid-data'><div id="+pID+"_"+_id+" class='tablediv'></div></td></tr>" );
$(ts).triggerHandler("jqGridSubGridRowExpanded", [pID + "_" + _id, _id]);
if( $.isFunction(ts.p.subGridRowExpanded)) {
ts.p.subGridRowExpanded.call(ts, pID+"_"+ _id,_id);
} else {
populatesubgrid(tr);
}
} else {
$(r).show();
}
$(this).html("<a style='cursor:pointer;'><span class='ui-icon "+ts.p.subGridOptions.minusicon+"'></span></a>").removeClass("sgcollapsed").addClass("sgexpanded");
if(ts.p.subGridOptions.selectOnExpand) {
$(ts).jqGrid('setSelection',_id);
}
} else if($(this).hasClass("sgexpanded")) {
bfsc = $(ts).triggerHandler("jqGridSubGridRowColapsed", [pID + "_" + _id, _id]);
bfsc = (bfsc === false || bfsc === 'stop') ? false : true;
_id = tr.id;
if( bfsc && $.isFunction(ts.p.subGridRowColapsed)) {
bfsc = ts.p.subGridRowColapsed.call(ts, pID+"_"+_id,_id );
}
if(bfsc===false) {return false;}
if(ts.p.subGridOptions.reloadOnExpand === true) {
$(r).remove(".ui-subgrid");
} else if($(r).hasClass('ui-subgrid')) { // incase of dynamic deleting
$(r).hide();
}
$(this).html("<a style='cursor:pointer;'><span class='ui-icon "+ts.p.subGridOptions.plusicon+"'></span></a>").removeClass("sgexpanded").addClass("sgcollapsed");
if(ts.p.subGridOptions.selectOnCollapse) {
$(ts).jqGrid('setSelection',_id);
}
}
return false;
});
}
i++;
}
if(ts.p.subGridOptions.expandOnLoad === true) {
$(ts.rows).filter('.jqgrow').each(function(index,row){
$(row.cells[0]).click();
});
}
ts.subGridXml = function(xml,sid) {subGridXml(xml,sid);};
ts.subGridJson = function(json,sid) {subGridJson(json,sid);};
});
},
expandSubGridRow : function(rowid) {
return this.each(function () {
var $t = this;
if(!$t.grid && !rowid) {return;}
if($t.p.subGrid===true) {
var rc = $(this).jqGrid("getInd",rowid,true);
if(rc) {
var sgc = $("td.sgcollapsed",rc)[0];
if(sgc) {
$(sgc).trigger("click");
}
}
}
});
},
collapseSubGridRow : function(rowid) {
return this.each(function () {
var $t = this;
if(!$t.grid && !rowid) {return;}
if($t.p.subGrid===true) {
var rc = $(this).jqGrid("getInd",rowid,true);
if(rc) {
var sgc = $("td.sgexpanded",rc)[0];
if(sgc) {
$(sgc).trigger("click");
}
}
}
});
},
toggleSubGridRow : function(rowid) {
return this.each(function () {
var $t = this;
if(!$t.grid && !rowid) {return;}
if($t.p.subGrid===true) {
var rc = $(this).jqGrid("getInd",rowid,true);
if(rc) {
var sgc = $("td.sgcollapsed",rc)[0];
if(sgc) {
$(sgc).trigger("click");
} else {
sgc = $("td.sgexpanded",rc)[0];
if(sgc) {
$(sgc).trigger("click");
}
}
}
}
});
}
});
})(jQuery);

View file

@ -0,0 +1,106 @@
/*
Transform a table to a jqGrid.
Peter Romianowski <peter.romianowski@optivo.de>
If the first column of the table contains checkboxes or
radiobuttons then the jqGrid is made selectable.
*/
// Addition - selector can be a class or id
function tableToGrid(selector, options) {
jQuery(selector).each(function() {
if(this.grid) {return;} //Adedd from Tony Tomov
// This is a small "hack" to make the width of the jqGrid 100%
jQuery(this).width("99%");
var w = jQuery(this).width();
// Text whether we have single or multi select
var inputCheckbox = jQuery('tr td:first-child input[type=checkbox]:first', jQuery(this));
var inputRadio = jQuery('tr td:first-child input[type=radio]:first', jQuery(this));
var selectMultiple = inputCheckbox.length > 0;
var selectSingle = !selectMultiple && inputRadio.length > 0;
var selectable = selectMultiple || selectSingle;
//var inputName = inputCheckbox.attr("name") || inputRadio.attr("name");
// Build up the columnModel and the data
var colModel = [];
var colNames = [];
jQuery('th', jQuery(this)).each(function() {
if (colModel.length === 0 && selectable) {
colModel.push({
name: '__selection__',
index: '__selection__',
width: 0,
hidden: true
});
colNames.push('__selection__');
} else {
colModel.push({
name: jQuery(this).attr("id") || jQuery.trim(jQuery.jgrid.stripHtml(jQuery(this).html())).split(' ').join('_'),
index: jQuery(this).attr("id") || jQuery.trim(jQuery.jgrid.stripHtml(jQuery(this).html())).split(' ').join('_'),
width: jQuery(this).width() || 150
});
colNames.push(jQuery(this).html());
}
});
var data = [];
var rowIds = [];
var rowChecked = [];
jQuery('tbody > tr', jQuery(this)).each(function() {
var row = {};
var rowPos = 0;
jQuery('td', jQuery(this)).each(function() {
if (rowPos === 0 && selectable) {
var input = jQuery('input', jQuery(this));
var rowId = input.attr("value");
rowIds.push(rowId || data.length);
if (input.is(":checked")) {
rowChecked.push(rowId);
}
row[colModel[rowPos].name] = input.attr("value");
} else {
row[colModel[rowPos].name] = jQuery(this).html();
}
rowPos++;
});
if(rowPos >0) { data.push(row); }
});
// Clear the original HTML table
jQuery(this).empty();
// Mark it as jqGrid
jQuery(this).addClass("scroll");
jQuery(this).jqGrid(jQuery.extend({
datatype: "local",
width: w,
colNames: colNames,
colModel: colModel,
multiselect: selectMultiple
//inputName: inputName,
//inputValueCol: imputName != null ? "__selection__" : null
}, options || {}));
// Add data
var a;
for (a = 0; a < data.length; a++) {
var id = null;
if (rowIds.length > 0) {
id = rowIds[a];
if (id && id.replace) {
// We have to do this since the value of a checkbox
// or radio button can be anything
id = encodeURIComponent(id).replace(/[.\-%]/g, "_");
}
}
if (id === null) {
id = a + 1;
}
jQuery(this).jqGrid("addRowData",id, data[a]);
}
// Set the selection
for (a = 0; a < rowChecked.length; a++) {
jQuery(this).jqGrid("setSelection",rowChecked[a]);
}
});
};

View file

@ -0,0 +1,682 @@
/**
* jqGrid extension - Tree Grid
* Tony Tomov tony@trirand.com
* http://trirand.com/blog/
* Dual licensed under the MIT and GPL licenses:
* http://www.opensource.org/licenses/mit-license.php
* http://www.gnu.org/licenses/gpl.html
**/
/*jshint eqeqeq:false */
/*global jQuery */
(function($) {
"use strict";
$.jgrid.extend({
setTreeNode : function(i, len){
return this.each(function(){
var $t = this;
if( !$t.grid || !$t.p.treeGrid ) {return;}
var expCol = $t.p.expColInd,
expanded = $t.p.treeReader.expanded_field,
isLeaf = $t.p.treeReader.leaf_field,
level = $t.p.treeReader.level_field,
icon = $t.p.treeReader.icon_field,
loaded = $t.p.treeReader.loaded, lft, rgt, curLevel, ident,lftpos, twrap,
ldat, lf;
while(i<len) {
var ind = $.jgrid.stripPref($t.p.idPrefix, $t.rows[i].id), dind = $t.p._index[ind], expan;
ldat = $t.p.data[dind];
//$t.rows[i].level = ldat[level];
if($t.p.treeGridModel === 'nested') {
if(!ldat[isLeaf]) {
lft = parseInt(ldat[$t.p.treeReader.left_field],10);
rgt = parseInt(ldat[$t.p.treeReader.right_field],10);
// NS Model
ldat[isLeaf] = (rgt === lft+1) ? 'true' : 'false';
$t.rows[i].cells[$t.p._treeleafpos].innerHTML = ldat[isLeaf];
}
}
//else {
//row.parent_id = rd[$t.p.treeReader.parent_id_field];
//}
curLevel = parseInt(ldat[level],10);
if($t.p.tree_root_level === 0) {
ident = curLevel+1;
lftpos = curLevel;
} else {
ident = curLevel;
lftpos = curLevel -1;
}
twrap = "<div class='tree-wrap tree-wrap-"+$t.p.direction+"' style='width:"+(ident*18)+"px;'>";
twrap += "<div style='"+($t.p.direction==="rtl" ? "right:" : "left:")+(lftpos*18)+"px;' class='ui-icon ";
if(ldat[loaded] !== undefined) {
if(ldat[loaded]==="true" || ldat[loaded]===true) {
ldat[loaded] = true;
} else {
ldat[loaded] = false;
}
}
if(ldat[isLeaf] === "true" || ldat[isLeaf] === true) {
twrap += ((ldat[icon] !== undefined && ldat[icon] !== "") ? ldat[icon] : $t.p.treeIcons.leaf)+" tree-leaf treeclick";
ldat[isLeaf] = true;
lf="leaf";
} else {
ldat[isLeaf] = false;
lf="";
}
ldat[expanded] = ((ldat[expanded] === "true" || ldat[expanded] === true) ? true : false) && (ldat[loaded] || ldat[loaded] === undefined);
if(ldat[expanded] === false) {
twrap += ((ldat[isLeaf] === true) ? "'" : $t.p.treeIcons.plus+" tree-plus treeclick'");
} else {
twrap += ((ldat[isLeaf] === true) ? "'" : $t.p.treeIcons.minus+" tree-minus treeclick'");
}
twrap += "></div></div>";
$($t.rows[i].cells[expCol]).wrapInner("<span class='cell-wrapper"+lf+"'></span>").prepend(twrap);
if(curLevel !== parseInt($t.p.tree_root_level,10)) {
var pn = $($t).jqGrid('getNodeParent',ldat);
expan = pn && pn.hasOwnProperty(expanded) ? pn[expanded] : true;
if( !expan ){
$($t.rows[i]).css("display","none");
}
}
$($t.rows[i].cells[expCol])
.find("div.treeclick")
.bind("click",function(e){
var target = e.target || e.srcElement,
ind2 =$.jgrid.stripPref($t.p.idPrefix,$(target,$t.rows).closest("tr.jqgrow")[0].id),
pos = $t.p._index[ind2];
if(!$t.p.data[pos][isLeaf]){
if($t.p.data[pos][expanded]){
$($t).jqGrid("collapseRow",$t.p.data[pos]);
$($t).jqGrid("collapseNode",$t.p.data[pos]);
} else {
$($t).jqGrid("expandRow",$t.p.data[pos]);
$($t).jqGrid("expandNode",$t.p.data[pos]);
}
}
return false;
});
if($t.p.ExpandColClick === true) {
$($t.rows[i].cells[expCol])
.find("span.cell-wrapper")
.css("cursor","pointer")
.bind("click",function(e) {
var target = e.target || e.srcElement,
ind2 =$.jgrid.stripPref($t.p.idPrefix,$(target,$t.rows).closest("tr.jqgrow")[0].id),
pos = $t.p._index[ind2];
if(!$t.p.data[pos][isLeaf]){
if($t.p.data[pos][expanded]){
$($t).jqGrid("collapseRow",$t.p.data[pos]);
$($t).jqGrid("collapseNode",$t.p.data[pos]);
} else {
$($t).jqGrid("expandRow",$t.p.data[pos]);
$($t).jqGrid("expandNode",$t.p.data[pos]);
}
}
$($t).jqGrid("setSelection",ind2);
return false;
});
}
i++;
}
});
},
setTreeGrid : function() {
return this.each(function (){
var $t = this, i=0, pico, ecol = false, nm, key, tkey, dupcols=[];
if(!$t.p.treeGrid) {return;}
if(!$t.p.treedatatype ) {$.extend($t.p,{treedatatype: $t.p.datatype});}
$t.p.subGrid = false;$t.p.altRows =false;
$t.p.pgbuttons = false;$t.p.pginput = false;
$t.p.gridview = true;
if($t.p.rowTotal === null ) { $t.p.rowNum = 10000; }
$t.p.multiselect = false;$t.p.rowList = [];
$t.p.expColInd = 0;
pico = 'ui-icon-triangle-1-' + ($t.p.direction==="rtl" ? 'w' : 'e');
$t.p.treeIcons = $.extend({plus:pico,minus:'ui-icon-triangle-1-s',leaf:'ui-icon-radio-off'},$t.p.treeIcons || {});
if($t.p.treeGridModel === 'nested') {
$t.p.treeReader = $.extend({
level_field: "level",
left_field:"lft",
right_field: "rgt",
leaf_field: "isLeaf",
expanded_field: "expanded",
loaded: "loaded",
icon_field: "icon"
},$t.p.treeReader);
} else if($t.p.treeGridModel === 'adjacency') {
$t.p.treeReader = $.extend({
level_field: "level",
parent_id_field: "parent",
leaf_field: "isLeaf",
expanded_field: "expanded",
loaded: "loaded",
icon_field: "icon"
},$t.p.treeReader );
}
for ( key in $t.p.colModel){
if($t.p.colModel.hasOwnProperty(key)) {
nm = $t.p.colModel[key].name;
if( nm === $t.p.ExpandColumn && !ecol ) {
ecol = true;
$t.p.expColInd = i;
}
i++;
//
for(tkey in $t.p.treeReader) {
if($t.p.treeReader.hasOwnProperty(tkey) && $t.p.treeReader[tkey] === nm) {
dupcols.push(nm);
}
}
}
}
$.each($t.p.treeReader,function(j,n){
if(n && $.inArray(n, dupcols) === -1){
if(j==='leaf_field') { $t.p._treeleafpos= i; }
i++;
$t.p.colNames.push(n);
$t.p.colModel.push({name:n,width:1,hidden:true,sortable:false,resizable:false,hidedlg:true,editable:true,search:false});
}
});
});
},
expandRow: function (record){
this.each(function(){
var $t = this;
if(!$t.grid || !$t.p.treeGrid) {return;}
var childern = $($t).jqGrid("getNodeChildren",record),
//if ($($t).jqGrid("isVisibleNode",record)) {
expanded = $t.p.treeReader.expanded_field;
$(childern).each(function(){
var id = $t.p.idPrefix + $.jgrid.getAccessor(this,$t.p.localReader.id);
$($($t).jqGrid('getGridRowById', id)).css("display","");
if(this[expanded]) {
$($t).jqGrid("expandRow",this);
}
});
//}
});
},
collapseRow : function (record) {
this.each(function(){
var $t = this;
if(!$t.grid || !$t.p.treeGrid) {return;}
var childern = $($t).jqGrid("getNodeChildren",record),
expanded = $t.p.treeReader.expanded_field;
$(childern).each(function(){
var id = $t.p.idPrefix + $.jgrid.getAccessor(this,$t.p.localReader.id);
$($($t).jqGrid('getGridRowById', id)).css("display","none");
if(this[expanded]){
$($t).jqGrid("collapseRow",this);
}
});
});
},
// NS ,adjacency models
getRootNodes : function() {
var result = [];
this.each(function(){
var $t = this;
if(!$t.grid || !$t.p.treeGrid) {return;}
switch ($t.p.treeGridModel) {
case 'nested' :
var level = $t.p.treeReader.level_field;
$($t.p.data).each(function(){
if(parseInt(this[level],10) === parseInt($t.p.tree_root_level,10)) {
result.push(this);
}
});
break;
case 'adjacency' :
var parent_id = $t.p.treeReader.parent_id_field;
$($t.p.data).each(function(){
if(this[parent_id] === null || String(this[parent_id]).toLowerCase() === "null") {
result.push(this);
}
});
break;
}
});
return result;
},
getNodeDepth : function(rc) {
var ret = null;
this.each(function(){
if(!this.grid || !this.p.treeGrid) {return;}
var $t = this;
switch ($t.p.treeGridModel) {
case 'nested' :
var level = $t.p.treeReader.level_field;
ret = parseInt(rc[level],10) - parseInt($t.p.tree_root_level,10);
break;
case 'adjacency' :
ret = $($t).jqGrid("getNodeAncestors",rc).length;
break;
}
});
return ret;
},
getNodeParent : function(rc) {
var result = null;
this.each(function(){
var $t = this;
if(!$t.grid || !$t.p.treeGrid) {return;}
switch ($t.p.treeGridModel) {
case 'nested' :
var lftc = $t.p.treeReader.left_field,
rgtc = $t.p.treeReader.right_field,
levelc = $t.p.treeReader.level_field,
lft = parseInt(rc[lftc],10), rgt = parseInt(rc[rgtc],10), level = parseInt(rc[levelc],10);
$(this.p.data).each(function(){
if(parseInt(this[levelc],10) === level-1 && parseInt(this[lftc],10) < lft && parseInt(this[rgtc],10) > rgt) {
result = this;
return false;
}
});
break;
case 'adjacency' :
var parent_id = $t.p.treeReader.parent_id_field,
dtid = $t.p.localReader.id,
ind = rc[dtid], pos = $t.p._index[ind];
while(pos--) {
if($t.p.data[pos][dtid] === $.jgrid.stripPref($t.p.idPrefix, rc[parent_id])) {
result = $t.p.data[pos];
break;
}
}
break;
}
});
return result;
},
getNodeChildren : function(rc) {
var result = [];
this.each(function(){
var $t = this;
if(!$t.grid || !$t.p.treeGrid) {return;}
switch ($t.p.treeGridModel) {
case 'nested' :
var lftc = $t.p.treeReader.left_field,
rgtc = $t.p.treeReader.right_field,
levelc = $t.p.treeReader.level_field,
lft = parseInt(rc[lftc],10), rgt = parseInt(rc[rgtc],10), level = parseInt(rc[levelc],10);
$(this.p.data).each(function(){
if(parseInt(this[levelc],10) === level+1 && parseInt(this[lftc],10) > lft && parseInt(this[rgtc],10) < rgt) {
result.push(this);
}
});
break;
case 'adjacency' :
var parent_id = $t.p.treeReader.parent_id_field,
dtid = $t.p.localReader.id;
$(this.p.data).each(function(){
if(this[parent_id] == $.jgrid.stripPref($t.p.idPrefix, rc[dtid])) {
result.push(this);
}
});
break;
}
});
return result;
},
getFullTreeNode : function(rc) {
var result = [];
this.each(function(){
var $t = this, len;
if(!$t.grid || !$t.p.treeGrid) {return;}
switch ($t.p.treeGridModel) {
case 'nested' :
var lftc = $t.p.treeReader.left_field,
rgtc = $t.p.treeReader.right_field,
levelc = $t.p.treeReader.level_field,
lft = parseInt(rc[lftc],10), rgt = parseInt(rc[rgtc],10), level = parseInt(rc[levelc],10);
$(this.p.data).each(function(){
if(parseInt(this[levelc],10) >= level && parseInt(this[lftc],10) >= lft && parseInt(this[lftc],10) <= rgt) {
result.push(this);
}
});
break;
case 'adjacency' :
if(rc) {
result.push(rc);
var parent_id = $t.p.treeReader.parent_id_field,
dtid = $t.p.localReader.id;
$(this.p.data).each(function(i){
len = result.length;
for (i = 0; i < len; i++) {
if ($.jgrid.stripPref($t.p.idPrefix, result[i][dtid]) === this[parent_id]) {
result.push(this);
break;
}
}
});
}
break;
}
});
return result;
},
// End NS, adjacency Model
getNodeAncestors : function(rc) {
var ancestors = [];
this.each(function(){
if(!this.grid || !this.p.treeGrid) {return;}
var parent = $(this).jqGrid("getNodeParent",rc);
while (parent) {
ancestors.push(parent);
parent = $(this).jqGrid("getNodeParent",parent);
}
});
return ancestors;
},
isVisibleNode : function(rc) {
var result = true;
this.each(function(){
var $t = this;
if(!$t.grid || !$t.p.treeGrid) {return;}
var ancestors = $($t).jqGrid("getNodeAncestors",rc),
expanded = $t.p.treeReader.expanded_field;
$(ancestors).each(function(){
result = result && this[expanded];
if(!result) {return false;}
});
});
return result;
},
isNodeLoaded : function(rc) {
var result;
this.each(function(){
var $t = this;
if(!$t.grid || !$t.p.treeGrid) {return;}
var isLeaf = $t.p.treeReader.leaf_field,
loaded = $t.p.treeReader.loaded;
if(rc !== undefined ) {
if(rc[loaded] !== undefined) {
result = rc[loaded];
} else if( rc[isLeaf] || $($t).jqGrid("getNodeChildren",rc).length > 0){
result = true;
} else {
result = false;
}
} else {
result = false;
}
});
return result;
},
expandNode : function(rc) {
return this.each(function(){
if(!this.grid || !this.p.treeGrid) {return;}
var expanded = this.p.treeReader.expanded_field,
parent = this.p.treeReader.parent_id_field,
loaded = this.p.treeReader.loaded,
level = this.p.treeReader.level_field,
lft = this.p.treeReader.left_field,
rgt = this.p.treeReader.right_field;
if(!rc[expanded]) {
var id = $.jgrid.getAccessor(rc,this.p.localReader.id);
var rc1 = $("#" + this.p.idPrefix + $.jgrid.jqID(id),this.grid.bDiv)[0];
var position = this.p._index[id];
if( $(this).jqGrid("isNodeLoaded",this.p.data[position]) ) {
rc[expanded] = true;
$("div.treeclick",rc1).removeClass(this.p.treeIcons.plus+" tree-plus").addClass(this.p.treeIcons.minus+" tree-minus");
} else if (!this.grid.hDiv.loading) {
rc[expanded] = true;
$("div.treeclick",rc1).removeClass(this.p.treeIcons.plus+" tree-plus").addClass(this.p.treeIcons.minus+" tree-minus");
this.p.treeANode = rc1.rowIndex;
this.p.datatype = this.p.treedatatype;
if(this.p.treeGridModel === 'nested') {
$(this).jqGrid("setGridParam",{postData:{nodeid:id,n_left:rc[lft],n_right:rc[rgt],n_level:rc[level]}});
} else {
$(this).jqGrid("setGridParam",{postData:{nodeid:id,parentid:rc[parent],n_level:rc[level]}} );
}
$(this).trigger("reloadGrid");
rc[loaded] = true;
if(this.p.treeGridModel === 'nested') {
$(this).jqGrid("setGridParam",{postData:{nodeid:'',n_left:'',n_right:'',n_level:''}});
} else {
$(this).jqGrid("setGridParam",{postData:{nodeid:'',parentid:'',n_level:''}});
}
}
}
});
},
collapseNode : function(rc) {
return this.each(function(){
if(!this.grid || !this.p.treeGrid) {return;}
var expanded = this.p.treeReader.expanded_field;
if(rc[expanded]) {
rc[expanded] = false;
var id = $.jgrid.getAccessor(rc,this.p.localReader.id);
var rc1 = $("#" + this.p.idPrefix + $.jgrid.jqID(id),this.grid.bDiv)[0];
$("div.treeclick",rc1).removeClass(this.p.treeIcons.minus+" tree-minus").addClass(this.p.treeIcons.plus+" tree-plus");
}
});
},
SortTree : function( sortname, newDir, st, datefmt) {
return this.each(function(){
if(!this.grid || !this.p.treeGrid) {return;}
var i, len,
rec, records = [], $t = this, query, roots,
rt = $(this).jqGrid("getRootNodes");
// Sorting roots
query = $.jgrid.from(rt);
query.orderBy(sortname,newDir,st, datefmt);
roots = query.select();
// Sorting children
for (i = 0, len = roots.length; i < len; i++) {
rec = roots[i];
records.push(rec);
$(this).jqGrid("collectChildrenSortTree",records, rec, sortname, newDir,st, datefmt);
}
$.each(records, function(index) {
var id = $.jgrid.getAccessor(this,$t.p.localReader.id);
$('#'+$.jgrid.jqID($t.p.id)+ ' tbody tr:eq('+index+')').after($('tr#'+$.jgrid.jqID(id),$t.grid.bDiv));
});
query = null;roots=null;records=null;
});
},
collectChildrenSortTree : function(records, rec, sortname, newDir,st, datefmt) {
return this.each(function(){
if(!this.grid || !this.p.treeGrid) {return;}
var i, len,
child, ch, query, children;
ch = $(this).jqGrid("getNodeChildren",rec);
query = $.jgrid.from(ch);
query.orderBy(sortname, newDir, st, datefmt);
children = query.select();
for (i = 0, len = children.length; i < len; i++) {
child = children[i];
records.push(child);
$(this).jqGrid("collectChildrenSortTree",records, child, sortname, newDir, st, datefmt);
}
});
},
// experimental
setTreeRow : function(rowid, data) {
var success=false;
this.each(function(){
var t = this;
if(!t.grid || !t.p.treeGrid) {return;}
success = $(t).jqGrid("setRowData",rowid,data);
});
return success;
},
delTreeNode : function (rowid) {
return this.each(function () {
var $t = this, rid = $t.p.localReader.id, i,
left = $t.p.treeReader.left_field,
right = $t.p.treeReader.right_field, myright, width, res, key;
if(!$t.grid || !$t.p.treeGrid) {return;}
var rc = $t.p._index[rowid];
if (rc !== undefined) {
// nested
myright = parseInt($t.p.data[rc][right],10);
width = myright - parseInt($t.p.data[rc][left],10) + 1;
var dr = $($t).jqGrid("getFullTreeNode",$t.p.data[rc]);
if(dr.length>0){
for (i=0;i<dr.length;i++){
$($t).jqGrid("delRowData",dr[i][rid]);
}
}
if( $t.p.treeGridModel === "nested") {
// ToDo - update grid data
res = $.jgrid.from($t.p.data)
.greater(left,myright,{stype:'integer'})
.select();
if(res.length) {
for( key in res) {
if(res.hasOwnProperty(key)) {
res[key][left] = parseInt(res[key][left],10) - width ;
}
}
}
res = $.jgrid.from($t.p.data)
.greater(right,myright,{stype:'integer'})
.select();
if(res.length) {
for( key in res) {
if(res.hasOwnProperty(key)) {
res[key][right] = parseInt(res[key][right],10) - width ;
}
}
}
}
}
});
},
addChildNode : function( nodeid, parentid, data, expandData ) {
//return this.each(function(){
var $t = this[0];
if(data) {
// we suppose tha the id is autoincremet and
var expanded = $t.p.treeReader.expanded_field,
isLeaf = $t.p.treeReader.leaf_field,
level = $t.p.treeReader.level_field,
//icon = $t.p.treeReader.icon_field,
parent = $t.p.treeReader.parent_id_field,
left = $t.p.treeReader.left_field,
right = $t.p.treeReader.right_field,
loaded = $t.p.treeReader.loaded,
method, parentindex, parentdata, parentlevel, i, len, max=0, rowind = parentid, leaf, maxright;
if(expandData===undefined) {expandData = false;}
if ( nodeid === undefined || nodeid === null ) {
i = $t.p.data.length-1;
if( i>= 0 ) {
while(i>=0){max = Math.max(max, parseInt($t.p.data[i][$t.p.localReader.id],10)); i--;}
}
nodeid = max+1;
}
var prow = $($t).jqGrid('getInd', parentid);
leaf = false;
// if not a parent we assume root
if ( parentid === undefined || parentid === null || parentid==="") {
parentid = null;
rowind = null;
method = 'last';
parentlevel = $t.p.tree_root_level;
i = $t.p.data.length+1;
} else {
method = 'after';
parentindex = $t.p._index[parentid];
parentdata = $t.p.data[parentindex];
parentid = parentdata[$t.p.localReader.id];
parentlevel = parseInt(parentdata[level],10)+1;
var childs = $($t).jqGrid('getFullTreeNode', parentdata);
// if there are child nodes get the last index of it
if(childs.length) {
i = childs[childs.length-1][$t.p.localReader.id];
rowind = i;
i = $($t).jqGrid('getInd',rowind)+1;
} else {
i = $($t).jqGrid('getInd', parentid)+1;
}
// if the node is leaf
if(parentdata[isLeaf]) {
leaf = true;
parentdata[expanded] = true;
//var prow = $($t).jqGrid('getInd', parentid);
$($t.rows[prow])
.find("span.cell-wrapperleaf").removeClass("cell-wrapperleaf").addClass("cell-wrapper")
.end()
.find("div.tree-leaf").removeClass($t.p.treeIcons.leaf+" tree-leaf").addClass($t.p.treeIcons.minus+" tree-minus");
$t.p.data[parentindex][isLeaf] = false;
parentdata[loaded] = true;
}
}
len = i+1;
if( data[expanded]===undefined) {data[expanded]= false;}
if( data[loaded]===undefined ) { data[loaded] = false;}
data[level] = parentlevel;
if( data[isLeaf]===undefined) {data[isLeaf]= true;}
if( $t.p.treeGridModel === "adjacency") {
data[parent] = parentid;
}
if( $t.p.treeGridModel === "nested") {
// this method requiere more attention
var query, res, key;
//maxright = parseInt(maxright,10);
// ToDo - update grid data
if(parentid !== null) {
maxright = parseInt(parentdata[right],10);
query = $.jgrid.from($t.p.data);
query = query.greaterOrEquals(right,maxright,{stype:'integer'});
res = query.select();
if(res.length) {
for( key in res) {
if(res.hasOwnProperty(key)) {
res[key][left] = res[key][left] > maxright ? parseInt(res[key][left],10) +2 : res[key][left];
res[key][right] = res[key][right] >= maxright ? parseInt(res[key][right],10) +2 : res[key][right];
}
}
}
data[left] = maxright;
data[right]= maxright+1;
} else {
maxright = parseInt( $($t).jqGrid('getCol', right, false, 'max'), 10);
res = $.jgrid.from($t.p.data)
.greater(left,maxright,{stype:'integer'})
.select();
if(res.length) {
for( key in res) {
if(res.hasOwnProperty(key)) {
res[key][left] = parseInt(res[key][left],10) +2 ;
}
}
}
res = $.jgrid.from($t.p.data)
.greater(right,maxright,{stype:'integer'})
.select();
if(res.length) {
for( key in res) {
if(res.hasOwnProperty(key)) {
res[key][right] = parseInt(res[key][right],10) +2 ;
}
}
}
data[left] = maxright+1;
data[right] = maxright + 2;
}
}
if( parentid === null || $($t).jqGrid("isNodeLoaded",parentdata) || leaf ) {
$($t).jqGrid('addRowData', nodeid, data, method, rowind);
$($t).jqGrid('setTreeNode', i, len);
}
if(parentdata && !parentdata[expanded] && expandData) {
$($t.rows[prow])
.find("div.treeclick")
.click();
}
}
//});
}
});
})(jQuery);

View file

@ -0,0 +1,135 @@
;(function($){
/**
* jqGrid Arabic Translation
*
* http://trirand.com/blog/
* Dual licensed under the MIT and GPL licenses:
* http://www.opensource.org/licenses/mit-license.php
* http://www.gnu.org/licenses/gpl.html
**/
$.jgrid = $.jgrid || {};
$.extend($.jgrid,{
defaults : {
recordtext: "تسجيل {0} - {1} على {2}",
emptyrecords: "لا يوجد تسجيل",
loadtext: "تحميل...",
pgtext : "صفحة {0} على {1}",
pgfirst : "First Page",
pglast : "Last Page",
pgnext : "Next Page",
pgprev : "Previous Page",
pgrecs : "Records per Page",
showhide: "Toggle Expand Collapse Grid"
},
search : {
caption: "بحث...",
Find: "بحث",
Reset: "إلغاء",
odata: [{ oper:'eq', text:"يساوي"},{ oper:'ne', text:"يختلف"},{ oper:'lt', text:"أقل"},{ oper:'le', text:"أقل أو يساوي"},{ oper:'gt', text:"أكبر"},{ oper:'ge', text:"أكبر أو يساوي"},{ oper:'bw', text:"يبدأ بـ"},{ oper:'bn', text:"لا يبدأ بـ"},{ oper:'in', text:"est dans"},{ oper:'ni', text:"n'est pas dans"},{ oper:'ew', text:"ينته بـ"},{ oper:'en', text:"لا ينته بـ"},{ oper:'cn', text:"يحتوي"},{ oper:'nc', text:"لا يحتوي"},{ oper:'nu', text:'is null'},{ oper:'nn', text:'is not null'}],
groupOps: [ { op: "مع", text: "الكل" }, { op: "أو", text: "لا أحد" }],
operandTitle : "Click to select search operation.",
resetTitle : "Reset Search Value"
},
edit : {
addCaption: "اضافة",
editCaption: "تحديث",
bSubmit: "تثبيث",
bCancel: "إلغاء",
bClose: "غلق",
saveData: "تغيرت المعطيات هل تريد التسجيل ?",
bYes: "نعم",
bNo: "لا",
bExit: "إلغاء",
msg: {
required: "خانة إجبارية",
number: "سجل رقم صحيح",
minValue: "يجب أن تكون القيمة أكبر أو تساوي 0",
maxValue: "يجب أن تكون القيمة أقل أو تساوي 0",
email: "بريد غير صحيح",
integer: "سجل عدد طبييعي صحيح",
url: "ليس عنوانا صحيحا. البداية الصحيحة ('http://' أو 'https://')",
nodefined : " ليس محدد!",
novalue : " قيمة الرجوع مطلوبة!",
customarray : "يجب على الدالة الشخصية أن تنتج جدولا",
customfcheck : "الدالة الشخصية مطلوبة في حالة التحقق الشخصي"
}
},
view : {
caption: "رأيت التسجيلات",
bClose: "غلق"
},
del : {
caption: "حذف",
msg: "حذف التسجيلات المختارة ?",
bSubmit: "حذف",
bCancel: "إلغاء"
},
nav : {
edittext: " ",
edittitle: "تغيير التسجيل المختار",
addtext:" ",
addtitle: "إضافة تسجيل",
deltext: " ",
deltitle: "حذف التسجيل المختار",
searchtext: " ",
searchtitle: "بحث عن تسجيل",
refreshtext: "",
refreshtitle: "تحديث الجدول",
alertcap: "تحذير",
alerttext: "يرجى إختيار السطر",
viewtext: "",
viewtitle: "إظهار السطر المختار"
},
col : {
caption: "إظهار/إخفاء الأعمدة",
bSubmit: "تثبيث",
bCancel: "إلغاء"
},
errors : {
errcap : "خطأ",
nourl : "لا يوجد عنوان محدد",
norecords: "لا يوجد تسجيل للمعالجة",
model : "عدد العناوين (colNames) <> عدد التسجيلات (colModel)!"
},
formatter : {
integer : {thousandsSeparator: " ", defaultValue: '0'},
number : {decimalSeparator:",", thousandsSeparator: " ", decimalPlaces: 2, defaultValue: '0,00'},
currency : {decimalSeparator:",", thousandsSeparator: " ", decimalPlaces: 2, prefix: "", suffix:"", defaultValue: '0,00'},
date : {
dayNames: [
"الأحد", "الإثنين", "الثلاثاء", "الأربعاء", "الخميس", "الجمعة", "السبت",
"الأحد", "الإثنين", "الثلاثاء", "الأربعاء", "الخميس", "الجمعة", "السبت"
],
monthNames: [
"جانفي", "فيفري", "مارس", "أفريل", "ماي", "جوان", "جويلية", "أوت", "سبتمبر", "أكتوبر", "نوفمبر", "ديسمبر",
"جانفي", "فيفري", "مارس", "أفريل", "ماي", "جوان", "جويلية", "أوت", "سبتمبر", "أكتوبر", "نوفمبر", "ديسمبر"
],
AmPm : ["صباحا","مساءا","صباحا","مساءا"],
S: function (j) {return j == 1 ? 'er' : 'e';},
srcformat: 'Y-m-d',
newformat: 'd/m/Y',
parseRe : /[#%\\\/:_;.,\t\s-]/,
masks : {
ISO8601Long:"Y-m-d H:i:s",
ISO8601Short:"Y-m-d",
ShortDate: "n/j/Y",
LongDate: "l, F d, Y",
FullDateTime: "l, F d, Y g:i:s A",
MonthDay: "F d",
ShortTime: "g:i A",
LongTime: "g:i:s A",
SortableDateTime: "Y-m-d\\TH:i:s",
UniversalSortableDateTime: "Y-m-d H:i:sO",
YearMonth: "F, Y"
},
reformatAfterEdit : false,
userLocalTime : false
},
baseLinkUrl: '',
showAction: '',
target: '',
checkbox : {disabled:true},
idName : 'id'
}
});
})(jQuery);

View file

@ -0,0 +1,142 @@
;(function($){
/**
* jqGrid Bulgarian Translation
* Tony Tomov tony@trirand.com
* http://trirand.com/blog/
* Dual licensed under the MIT and GPL licenses:
* http://www.opensource.org/licenses/mit-license.php
* http://www.gnu.org/licenses/gpl.html
**/
$.jgrid = $.jgrid || {};
$.extend($.jgrid,{
defaults : {
recordtext: "{0} - {1} от {2}",
emptyrecords: "Няма запис(и)",
loadtext: "Зареждам...",
pgtext : "Стр. {0} от {1}",
pgfirst : "Първа Стр.",
pglast : "Последна Стр.",
pgnext : "Следваща Стр.",
pgprev : "Предишна Стр.",
pgrecs : "Брой записи на Стр.",
showhide: "Свиване/Разтягане на таблицата"
},
search : {
caption: "Търсене...",
Find: "Намери",
Reset: "Изчисти",
odata: [{ oper:'eq', text:"равно"},{ oper:'ne', text:"различно"},{ oper:'lt', text:"по-малко"},{ oper:'le', text:"по-малко или="},{ oper:'gt', text:"по-голямо"},{ oper:'ge', text:"по-голямо или ="},{ oper:'bw', text:"започва с"},{ oper:'bn', text:"не започва с"},{ oper:'in', text:"се намира в"},{ oper:'ni', text:"не се намира в"},{ oper:'ew', text:"завършва с"},{ oper:'en', text:"не завършава с"},{ oper:'cn', text:"съдържа"},{ oper:'nc', text:"не съдържа"},{ oper:'nu', text:'е NULL'},{ oper:'nn', text:'не е NULL'}],
groupOps: [ { op: "AND", text: "&nbsp;И " }, { op: "OR", text: "ИЛИ" } ],
operandTitle : "Натисни за избор на операнд.",
resetTitle : "Изчисти стойността"
},
edit : {
addCaption: "Нов Запис",
editCaption: "Редакция Запис",
bSubmit: "Запиши",
bCancel: "Изход",
bClose: "Затвори",
saveData: "Данните са променени! Да съхраня ли промените?",
bYes : "Да",
bNo : "Не",
bExit : "Отказ",
msg: {
required:"Полето е задължително",
number:"Въведете валидно число!",
minValue:"стойността трябва да е по-голяма или равна от",
maxValue:"стойността трябва да е по-малка или равна от",
email: "не е валиден ел. адрес",
integer: "Въведете валидно цяло число",
date: "Въведете валидна дата",
url: "e невалиден URL. Изискава се префикс('http://' или 'https://')",
nodefined : " е недефинирана!",
novalue : " изисква връщане на стойност!",
customarray : "Потреб. Функция трябва да върне масив!",
customfcheck : "Потребителска функция е задължителна при този тип елемент!"
}
},
view : {
caption: "Преглед запис",
bClose: "Затвори"
},
del : {
caption: "Изтриване",
msg: "Да изтрия ли избраният запис?",
bSubmit: "Изтрий",
bCancel: "Отказ"
},
nav : {
edittext: " ",
edittitle: "Редакция избран запис",
addtext:" ",
addtitle: "Добавяне нов запис",
deltext: " ",
deltitle: "Изтриване избран запис",
searchtext: " ",
searchtitle: "Търсене запис(и)",
refreshtext: "",
refreshtitle: "Обнови таблица",
alertcap: "Предупреждение",
alerttext: "Моля, изберете запис",
viewtext: "",
viewtitle: "Преглед избран запис"
},
col : {
caption: "Избери колони",
bSubmit: "Ок",
bCancel: "Изход"
},
errors : {
errcap : "Грешка",
nourl : "Няма посочен url адрес",
norecords: "Няма запис за обработка",
model : "Модела не съответства на имената!"
},
formatter : {
integer : {thousandsSeparator: " ", defaultValue: '0'},
number : {decimalSeparator:".", thousandsSeparator: " ", decimalPlaces: 2, defaultValue: '0.00'},
currency : {decimalSeparator:".", thousandsSeparator: " ", decimalPlaces: 2, prefix: "", suffix:" лв.", defaultValue: '0.00'},
date : {
dayNames: [
"Нед", "Пон", "Вт", "Ср", "Чет", "Пет", "Съб",
"Неделя", "Понеделник", "Вторник", "Сряда", "Четвъртък", "Петък", "Събота"
],
monthNames: [
"Яну", "Фев", "Мар", "Апр", "Май", "Юни", "Юли", "Авг", "Сеп", "Окт", "Нов", "Дек",
"Януари", "Февруари", "Март", "Април", "Май", "Юни", "Юли", "Август", "Септември", "Октомври", "Ноември", "Декември"
],
AmPm : ["","","",""],
S: function (j) {
if(j==7 || j==8 || j== 27 || j== 28) {
return 'ми';
}
return ['ви', 'ри', 'ти'][Math.min((j - 1) % 10, 2)];
},
srcformat: 'Y-m-d',
newformat: 'd/m/Y',
parseRe : /[#%\\\/:_;.,\t\s-]/,
masks : {
ISO8601Long:"Y-m-d H:i:s",
ISO8601Short:"Y-m-d",
ShortDate: "n/j/Y",
LongDate: "l, F d, Y",
FullDateTime: "l, F d, Y g:i:s A",
MonthDay: "F d",
ShortTime: "g:i A",
LongTime: "g:i:s A",
SortableDateTime: "Y-m-d\\TH:i:s",
UniversalSortableDateTime: "Y-m-d H:i:sO",
YearMonth: "F, Y"
},
reformatAfterEdit : false,
userLocalTime : false
},
baseLinkUrl: '',
showAction: '',
target: '',
checkbox : {disabled:true},
idName : 'id'
}
});
})(jQuery);

View file

@ -0,0 +1,133 @@
;(function($){
/**
* jqGrid Bulgarian Translation
* Tony Tomov tony@trirand.com
* http://trirand.com/blog/
* Dual licensed under the MIT and GPL licenses:
* http://www.opensource.org/licenses/mit-license.php
* http://www.gnu.org/licenses/gpl.html
**/
$.jgrid = $.jgrid || {};
$.extend($.jgrid,{
defaults : {
recordtext: "{0} - {1} <20><> {2}",
emptyrecords: "<22><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>(<28>)",
loadtext: "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>...",
pgtext : "<22><><EFBFBD>. {0} <20><> {1}"
},
search : {
caption: "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>...",
Find: "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>",
Reset: "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>",
odata : [{ oper:'eq', text:'<27><><EFBFBD><EFBFBD><EFBFBD>'}, { oper:'ne', text:'<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'}, { oper:'lt', text:'<27><>-<2D><><EFBFBD><EFBFBD><EFBFBD>'}, { oper:'le', text:'<27><>-<2D><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD>='},{ oper:'gt', text:'<27><>-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'},{ oper:'ge', text:'<27><>-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> ='}, { oper:'bw', text:'<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>'},{ oper:'bn', text:'<27><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>'},{ oper:'in', text:'<27><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>'},{ oper:'ni', text:'<27><> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>'},{ oper:'ew', text:'<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>'},{ oper:'en', text:'<27><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>'},,{ oper:'cn', text:'<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'}, ,{ oper:'nc', text:'<27><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'} ],
groupOps: [ { op: "AND", text: " <20> " }, { op: "OR", text: "<22><><EFBFBD>" } ]
},
edit : {
addCaption: "<22><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>",
editCaption: "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>",
bSubmit: "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>",
bCancel: "<22><><EFBFBD><EFBFBD><EFBFBD>",
bClose: "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>",
saveData: "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>! <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?",
bYes : "<22><>",
bNo : "<22><>",
bExit : "<22><><EFBFBD><EFBFBD><EFBFBD>",
msg: {
required:"<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>",
number:"<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>!",
minValue:"<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20> <20><>-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><>",
maxValue:"<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20> <20><>-<2D><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><>",
email: "<22><> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>. <20><><EFBFBD><EFBFBD><EFBFBD>",
integer: "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>",
date: "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>",
url: "e <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> URL. <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>('http://' <20><><EFBFBD> 'https://')",
nodefined : " <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!",
novalue : " <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!",
customarray : "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>. <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>!",
customfcheck : "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!"
}
},
view : {
caption: "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>",
bClose: "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
},
del : {
caption: "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>",
msg: "<22><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>?",
bSubmit: "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>",
bCancel: "<22><><EFBFBD><EFBFBD><EFBFBD>"
},
nav : {
edittext: " ",
edittitle: "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>",
addtext:" ",
addtitle: "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>",
deltext: " ",
deltitle: "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>",
searchtext: " ",
searchtitle: "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>(<28>)",
refreshtext: "",
refreshtitle: "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>",
alertcap: "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>",
alerttext: "<22><><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>",
viewtext: "",
viewtitle: "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>"
},
col : {
caption: "<22><><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>",
bSubmit: "<22><>",
bCancel: "<22><><EFBFBD><EFBFBD><EFBFBD>"
},
errors : {
errcap : "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>",
nourl : "<22><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> url <20><><EFBFBD><EFBFBD><EFBFBD>",
norecords: "<22><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>",
model : "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!"
},
formatter : {
integer : {thousandsSeparator: " ", defaultValue: '0'},
number : {decimalSeparator:".", thousandsSeparator: " ", decimalPlaces: 2, defaultValue: '0.00'},
currency : {decimalSeparator:".", thousandsSeparator: " ", decimalPlaces: 2, prefix: "", suffix:" <20><>.", defaultValue: '0.00'},
date : {
dayNames: [
"<22><><EFBFBD>", "<22><><EFBFBD>", "<22><>", "<22><>", "<22><><EFBFBD>", "<22><><EFBFBD>", "<22><><EFBFBD>",
"<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>", "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>", "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>", "<22><><EFBFBD><EFBFBD><EFBFBD>", "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>", "<22><><EFBFBD><EFBFBD><EFBFBD>", "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
],
monthNames: [
"<22><><EFBFBD>", "<22><><EFBFBD>", "<22><><EFBFBD>", "<22><><EFBFBD>", "<22><><EFBFBD>", "<22><><EFBFBD>", "<22><><EFBFBD>", "<22><><EFBFBD>", "<22><><EFBFBD>", "<22><><EFBFBD>", "<22><><EFBFBD>", "<22><><EFBFBD>",
"<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>", "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>", "<22><><EFBFBD><EFBFBD>", "<22><><EFBFBD><EFBFBD><EFBFBD>", "<22><><EFBFBD>", "<22><><EFBFBD>", "<22><><EFBFBD>", "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>", "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>", "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>", "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>", "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"
],
AmPm : ["","","",""],
S: function (j) {
if(j==7 || j==8 || j== 27 || j== 28) {
return '<27><>';
}
return ['<27><>', '<27><>', '<27><>'][Math.min((j - 1) % 10, 2)];
},
srcformat: 'Y-m-d',
newformat: 'd/m/Y',
parseRe : /[#%\\\/:_;.,\t\s-]/,
masks : {
ISO8601Long:"Y-m-d H:i:s",
ISO8601Short:"Y-m-d",
ShortDate: "n/j/Y",
LongDate: "l, F d, Y",
FullDateTime: "l, F d, Y g:i:s A",
MonthDay: "F d",
ShortTime: "g:i A",
LongTime: "g:i:s A",
SortableDateTime: "Y-m-d\\TH:i:s",
UniversalSortableDateTime: "Y-m-d H:i:sO",
YearMonth: "F, Y"
},
reformatAfterEdit : false,
userLocalTime : false
},
baseLinkUrl: '',
showAction: '',
target: '',
checkbox : {disabled:true},
idName : 'id'
}
});
})(jQuery);

View file

@ -0,0 +1,137 @@
;(function($){
/**
* jqGrid Catalan Translation
* Traducció jqGrid en Catatà per Faserline, S.L.
* http://www.faserline.com
* Dual licensed under the MIT and GPL licenses:
* http://www.opensource.org/licenses/mit-license.php
* http://www.gnu.org/licenses/gpl.html
**/
$.jgrid = $.jgrid || {};
$.extend($.jgrid,{
defaults : {
recordtext: "Mostrant {0} - {1} de {2}",
emptyrecords: "Sense registres que mostrar",
loadtext: "Carregant...",
pgtext : "Pàgina {0} de {1}",
pgfirst : "First Page",
pglast : "Last Page",
pgnext : "Next Page",
pgprev : "Previous Page",
pgrecs : "Records per Page",
showhide: "Toggle Expand Collapse Grid"
},
search : {
caption: "Cerca...",
Find: "Cercar",
Reset: "Buidar",
odata: [{ oper:'eq', text:"equal"},{ oper:'ne', text:"not equal"},{ oper:'lt', text:"less"},{ oper:'le', text:"less or equal"},{ oper:'gt', text:"greater"},{ oper:'ge', text:"greater or equal"},{ oper:'bw', text:"begins with"},{ oper:'bn', text:"does not begin with"},{ oper:'in', text:"is in"},{ oper:'ni', text:"is not in"},{ oper:'ew', text:"ends with"},{ oper:'en', text:"does not end with"},{ oper:'cn', text:"contains"},{ oper:'nc', text:"does not contain"},{ oper:'nu', text:'is null'},{ oper:'nn', text:'is not null'}],
groupOps: [ { op: "AND", text: "tot" }, { op: "OR", text: "qualsevol" } ],
operandTitle : "Click to select search operation.",
resetTitle : "Reset Search Value"
},
edit : {
addCaption: "Afegir registre",
editCaption: "Modificar registre",
bSubmit: "Guardar",
bCancel: "Cancelar",
bClose: "Tancar",
saveData: "Les dades han canviat. Guardar canvis?",
bYes : "Yes",
bNo : "No",
bExit : "Cancel",
msg: {
required:"Camp obligatori",
number:"Introdueixi un nombre",
minValue:"El valor ha de ser major o igual que ",
maxValue:"El valor ha de ser menor o igual a ",
email: "no és una direcció de correu vàlida",
integer: "Introdueixi un valor enter",
date: "Introdueixi una data correcta ",
url: "no és una URL vàlida. Prefix requerit ('http://' or 'https://')",
nodefined : " is not defined!",
novalue : " return value is required!",
customarray : "Custom function should return array!",
customfcheck : "Custom function should be present in case of custom checking!"
}
},
view : {
caption: "Veure registre",
bClose: "Tancar"
},
del : {
caption: "Eliminar",
msg: "¿Desitja eliminar els registres seleccionats?",
bSubmit: "Eliminar",
bCancel: "Cancelar"
},
nav : {
edittext: " ",
edittitle: "Modificar fila seleccionada",
addtext:" ",
addtitle: "Agregar nova fila",
deltext: " ",
deltitle: "Eliminar fila seleccionada",
searchtext: " ",
searchtitle: "Cercar informació",
refreshtext: "",
refreshtitle: "Refrescar taula",
alertcap: "Avís",
alerttext: "Seleccioni una fila",
viewtext: " ",
viewtitle: "Veure fila seleccionada"
},
// setcolumns module
col : {
caption: "Mostrar/ocultar columnes",
bSubmit: "Enviar",
bCancel: "Cancelar"
},
errors : {
errcap : "Error",
nourl : "No s'ha especificat una URL",
norecords: "No hi ha dades per processar",
model : "Les columnes de noms són diferents de les columnes del model"
},
formatter : {
integer : {thousandsSeparator: ".", defaultValue: '0'},
number : {decimalSeparator:",", thousandsSeparator: ".", decimalPlaces: 2, defaultValue: '0,00'},
currency : {decimalSeparator:",", thousandsSeparator: ".", decimalPlaces: 2, prefix: "", suffix:"", defaultValue: '0,00'},
date : {
dayNames: [
"Dg", "Dl", "Dt", "Dc", "Dj", "Dv", "Ds",
"Diumenge", "Dilluns", "Dimarts", "Dimecres", "Dijous", "Divendres", "Dissabte"
],
monthNames: [
"Gen", "Febr", "Març", "Abr", "Maig", "Juny", "Jul", "Ag", "Set", "Oct", "Nov", "Des",
"Gener", "Febrer", "Març", "Abril", "Maig", "Juny", "Juliol", "Agost", "Setembre", "Octubre", "Novembre", "Desembre"
],
AmPm : ["am","pm","AM","PM"],
S: function (j) {return j < 11 || j > 13 ? ['st', 'nd', 'rd', 'th'][Math.min((j - 1) % 10, 3)] : 'th'},
srcformat: 'Y-m-d',
newformat: 'd-m-Y',
parseRe : /[#%\\\/:_;.,\t\s-]/,
masks : {
ISO8601Long:"Y-m-d H:i:s",
ISO8601Short:"Y-m-d",
ShortDate: "n/j/Y",
LongDate: "l, F d, Y",
FullDateTime: "l, F d, Y g:i:s A",
MonthDay: "F d",
ShortTime: "g:i A",
LongTime: "g:i:s A",
SortableDateTime: "Y-m-d\\TH:i:s",
UniversalSortableDateTime: "Y-m-d H:i:sO",
YearMonth: "F, Y"
},
reformatAfterEdit : false,
userLocalTime : false
},
baseLinkUrl: '',
showAction: 'show',
target: '',
checkbox : {disabled:true},
idName : 'id'
}
});
})(jQuery);

View file

@ -0,0 +1,176 @@
;(function($){
/**
* jqGrid Chinese Translation
* 咖啡兔 yanhonglei@gmail.com
* http://www.kafeitu.me
* Dual licensed under the MIT and GPL licenses:
* http://www.opensource.org/licenses/mit-license.php
* http://www.gnu.org/licenses/gpl.html
**/
$.jgrid = $.jgrid || {};
$.extend($.jgrid,{
defaults : {
recordtext: "{0} - {1}\u3000共 {2} 条", // 共字前是全角空格
emptyrecords: "无数据显示",
loadtext: "读取中...",
pgtext : " {0} 共 {1} 页",
pgfirst : "First Page",
pglast : "Last Page",
pgnext : "Next Page",
pgprev : "Previous Page",
pgrecs : "Records per Page",
showhide: "Toggle Expand Collapse Grid"
},
search : {
caption: "搜索...",
Find: "查找",
Reset: "重置",
odata: [{ oper:'eq', text:'等于\u3000\u3000'},{ oper:'ne', text:'不等\u3000\u3000'},{ oper:'lt', text:'小于\u3000\u3000'},{ oper:'le', text:'小于等于'},{ oper:'gt', text:'大于\u3000\u3000'},{ oper:'ge', text:'大于等于'},{ oper:'bw', text:'开始于'},{ oper:'bn', text:'不开始于'},{ oper:'in', text:'属于\u3000\u3000'},{ oper:'ni', text:'不属于'},{ oper:'ew', text:'结束于'},{ oper:'en', text:'不结束于'},{ oper:'cn', text:'包含\u3000\u3000'},{ oper:'nc', text:'不包含'},{ oper:'nu', text:'不存在'},{ oper:'nn', text:'存在'}],
groupOps: [ { op: "AND", text: "所有" }, { op: "OR", text: "任一" } ],
operandTitle : "Click to select search operation.",
resetTitle : "Reset Search Value"
},
edit : {
addCaption: "添加记录",
editCaption: "编辑记录",
bSubmit: "提交",
bCancel: "取消",
bClose: "关闭",
saveData: "数据已改变,是否保存?",
bYes : "是",
bNo : "否",
bExit : "取消",
msg: {
required:"此字段必需",
number:"请输入有效数字",
minValue:"输值必须大于等于 ",
maxValue:"输值必须小于等于 ",
email: "这不是有效的e-mail地址",
integer: "请输入有效整数",
date: "请输入有效时间",
url: "无效网址。前缀必须为 ('http://' 或 'https://')",
nodefined : " 未定义!",
novalue : " 需要返回值!",
customarray : "自定义函数需要返回数组!",
customfcheck : "必须有自定义函数!"
}
},
view : {
caption: "查看记录",
bClose: "关闭"
},
del : {
caption: "删除",
msg: "删除所选记录?",
bSubmit: "删除",
bCancel: "取消"
},
nav : {
edittext: "",
edittitle: "编辑所选记录",
addtext:"",
addtitle: "添加新记录",
deltext: "",
deltitle: "删除所选记录",
searchtext: "",
searchtitle: "查找",
refreshtext: "",
refreshtitle: "刷新表格",
alertcap: "注意",
alerttext: "请选择记录",
viewtext: "",
viewtitle: "查看所选记录"
},
col : {
caption: "选择列",
bSubmit: "确定",
bCancel: "取消"
},
errors : {
errcap : "错误",
nourl : "没有设置url",
norecords: "没有要处理的记录",
model : "colNames 和 colModel 长度不等!"
},
formatter : {
integer : {thousandsSeparator: ",", defaultValue: '0'},
number : {decimalSeparator:".", thousandsSeparator: ",", decimalPlaces: 2, defaultValue: '0.00'},
currency : {decimalSeparator:".", thousandsSeparator: ",", decimalPlaces: 2, prefix: "", suffix:"", defaultValue: '0.00'},
date : {
dayNames: [
"日", "一", "二", "三", "四", "五", "六",
"星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六",
],
monthNames: [
"一", "二", "三", "四", "五", "六", "七", "八", "九", "十", "十一", "十二",
"一月", "二月", "三月", "四月", "五月", "六月", "七月", "八月", "九月", "十月", "十一月", "十二月"
],
AmPm : ["am","pm","上午","下午"],
S: function (j) {return j < 11 || j > 13 ? ['st', 'nd', 'rd', 'th'][Math.min((j - 1) % 10, 3)] : 'th';},
srcformat: 'Y-m-d',
newformat: 'Y-m-d',
parseRe : /[#%\\\/:_;.,\t\s-]/,
masks : {
// see http://php.net/manual/en/function.date.php for PHP format used in jqGrid
// and see http://docs.jquery.com/UI/Datepicker/formatDate
// and https://github.com/jquery/globalize#dates for alternative formats used frequently
// one can find on https://github.com/jquery/globalize/tree/master/lib/cultures many
// information about date, time, numbers and currency formats used in different countries
// one should just convert the information in PHP format
ISO8601Long:"Y-m-d H:i:s",
ISO8601Short:"Y-m-d",
// short date:
// n - Numeric representation of a month, without leading zeros
// j - Day of the month without leading zeros
// Y - A full numeric representation of a year, 4 digits
// example: 3/1/2012 which means 1 March 2012
ShortDate: "n/j/Y", // in jQuery UI Datepicker: "M/d/yyyy"
// long date:
// l - A full textual representation of the day of the week
// F - A full textual representation of a month
// d - Day of the month, 2 digits with leading zeros
// Y - A full numeric representation of a year, 4 digits
LongDate: "l, F d, Y", // in jQuery UI Datepicker: "dddd, MMMM dd, yyyy"
// long date with long time:
// l - A full textual representation of the day of the week
// F - A full textual representation of a month
// d - Day of the month, 2 digits with leading zeros
// Y - A full numeric representation of a year, 4 digits
// g - 12-hour format of an hour without leading zeros
// i - Minutes with leading zeros
// s - Seconds, with leading zeros
// A - Uppercase Ante meridiem and Post meridiem (AM or PM)
FullDateTime: "l, F d, Y g:i:s A", // in jQuery UI Datepicker: "dddd, MMMM dd, yyyy h:mm:ss tt"
// month day:
// F - A full textual representation of a month
// d - Day of the month, 2 digits with leading zeros
MonthDay: "F d", // in jQuery UI Datepicker: "MMMM dd"
// short time (without seconds)
// g - 12-hour format of an hour without leading zeros
// i - Minutes with leading zeros
// A - Uppercase Ante meridiem and Post meridiem (AM or PM)
ShortTime: "g:i A", // in jQuery UI Datepicker: "h:mm tt"
// long time (with seconds)
// g - 12-hour format of an hour without leading zeros
// i - Minutes with leading zeros
// s - Seconds, with leading zeros
// A - Uppercase Ante meridiem and Post meridiem (AM or PM)
LongTime: "g:i:s A", // in jQuery UI Datepicker: "h:mm:ss tt"
SortableDateTime: "Y-m-d\\TH:i:s",
UniversalSortableDateTime: "Y-m-d H:i:sO",
// month with year
// Y - A full numeric representation of a year, 4 digits
// F - A full textual representation of a month
YearMonth: "F, Y" // in jQuery UI Datepicker: "MMMM, yyyy"
},
reformatAfterEdit : false,
userLocalTime : false
},
baseLinkUrl: '',
showAction: '',
target: '',
checkbox : {disabled:true},
idName : 'id'
}
});
})(jQuery);

View file

@ -0,0 +1,137 @@
;(function($){
/**
* jqGrid Czech Translation
* Pavel Jirak pavel.jirak@jipas.cz
* doplnil Thomas Wagner xwagne01@stud.fit.vutbr.cz
* http://trirand.com/blog/
* Dual licensed under the MIT and GPL licenses:
* http://www.opensource.org/licenses/mit-license.php
* http://www.gnu.org/licenses/gpl.html
**/
$.jgrid = $.jgrid || {};
$.extend($.jgrid,{
defaults : {
recordtext: "Zobrazeno {0} - {1} z {2} záznamů",
emptyrecords: "Nenalezeny žádné záznamy",
loadtext: "Načítám...",
pgtext : "Strana {0} z {1}",
pgfirst : "First Page",
pglast : "Last Page",
pgnext : "Next Page",
pgprev : "Previous Page",
pgrecs : "Records per Page",
showhide: "Toggle Expand Collapse Grid"
},
search : {
caption: "Vyhledávám...",
Find: "Hledat",
Reset: "Reset",
odata: [{ oper:'eq', text:"rovno"},{ oper:'ne', text:"nerovno"},{ oper:'lt', text:"menší"},{ oper:'le', text:"menší nebo rovno"},{ oper:'gt', text:"větší"},{ oper:'ge', text:"větší nebo rovno"},{ oper:'bw', text:"začíná s"},{ oper:'bn', text:"nezačíná s"},{ oper:'in', text:"je v"},{ oper:'ni', text:"není v"},{ oper:'ew', text:"končí s"},{ oper:'en', text:"nekončí s"},{ oper:'cn', text:"obsahuje"},{ oper:'nc', text:"neobsahuje"},{ oper:'nu', text:'is null'},{ oper:'nn', text:'is not null'}],
groupOps: [ { op: "AND", text: "všech" }, { op: "OR", text: "některého z" } ],
operandTitle : "Click to select search operation.",
resetTitle : "Reset Search Value"
},
edit : {
addCaption: "Přidat záznam",
editCaption: "Editace záznamu",
bSubmit: "Uložit",
bCancel: "Storno",
bClose: "Zavřít",
saveData: "Data byla změněna! Uložit změny?",
bYes : "Ano",
bNo : "Ne",
bExit : "Zrušit",
msg: {
required:"Pole je vyžadováno",
number:"Prosím, vložte validní číslo",
minValue:"hodnota musí být větší než nebo rovná ",
maxValue:"hodnota musí být menší než nebo rovná ",
email: "není validní e-mail",
integer: "Prosím, vložte celé číslo",
date: "Prosím, vložte validní datum",
url: "není platnou URL. Vyžadován prefix ('http://' or 'https://')",
nodefined : " není definován!",
novalue : " je vyžadována návratová hodnota!",
customarray : "Custom function mělá vrátit pole!",
customfcheck : "Custom function by měla být přítomna v případě custom checking!"
}
},
view : {
caption: "Zobrazit záznam",
bClose: "Zavřít"
},
del : {
caption: "Smazat",
msg: "Smazat vybraný(é) záznam(y)?",
bSubmit: "Smazat",
bCancel: "Storno"
},
nav : {
edittext: " ",
edittitle: "Editovat vybraný řádek",
addtext:" ",
addtitle: "Přidat nový řádek",
deltext: " ",
deltitle: "Smazat vybraný záznam ",
searchtext: " ",
searchtitle: "Najít záznamy",
refreshtext: "",
refreshtitle: "Obnovit tabulku",
alertcap: "Varování",
alerttext: "Prosím, vyberte řádek",
viewtext: "",
viewtitle: "Zobrazit vybraný řádek"
},
col : {
caption: "Zobrazit/Skrýt sloupce",
bSubmit: "Uložit",
bCancel: "Storno"
},
errors : {
errcap : "Chyba",
nourl : "Není nastavena url",
norecords: "Žádné záznamy ke zpracování",
model : "Délka colNames <> colModel!"
},
formatter : {
integer : {thousandsSeparator: " ", defaultValue: '0'},
number : {decimalSeparator:".", thousandsSeparator: " ", decimalPlaces: 2, defaultValue: '0.00'},
currency : {decimalSeparator:".", thousandsSeparator: " ", decimalPlaces: 2, prefix: "", suffix:"", defaultValue: '0.00'},
date : {
dayNames: [
"Ne", "Po", "Út", "St", "Čt", "Pá", "So",
"Neděle", "Pondělí", "Úterý", "Středa", "Čtvrtek", "Pátek", "Sobota"
],
monthNames: [
"Led", "Úno", "Bře", "Dub", "Kvě", "Čer", "Čvc", "Srp", "Zář", "Říj", "Lis", "Pro",
"Leden", "Únor", "Březen", "Duben", "Květen", "Červen", "Červenec", "Srpen", "Září", "Říjen", "Listopad", "Prosinec"
],
AmPm : ["do","od","DO","OD"],
S: function (j) {return j < 11 || j > 13 ? ['st', 'nd', 'rd', 'th'][Math.min((j - 1) % 10, 3)] : 'th'},
srcformat: 'Y-m-d',
newformat: 'd/m/Y',
parseRe : /[#%\\\/:_;.,\t\s-]/,
masks : {
ISO8601Long:"Y-m-d H:i:s",
ISO8601Short:"Y-m-d",
ShortDate: "n/j/Y",
LongDate: "l, F d, Y",
FullDateTime: "l, F d, Y g:i:s A",
MonthDay: "F d",
ShortTime: "g:i A",
LongTime: "g:i:s A",
SortableDateTime: "Y-m-d\\TH:i:s",
UniversalSortableDateTime: "Y-m-d H:i:sO",
YearMonth: "F, Y"
},
reformatAfterEdit : false,
userLocalTime : false
},
baseLinkUrl: '',
showAction: '',
target: '',
checkbox : {disabled:true},
idName : 'id'
}
});
})(jQuery);

View file

@ -0,0 +1,137 @@
;(function($){
/**
* jqGrid Danish Translation
* Aesiras A/S
* http://www.aesiras.dk
* Dual licensed under the MIT and GPL licenses:
* http://www.opensource.org/licenses/mit-license.php
* http://www.gnu.org/licenses/gpl.html
**/
$.jgrid = $.jgrid || {};
$.extend($.jgrid,{
defaults : {
recordtext: "Vis {0} - {1} of {2}",
emptyrecords: "Ingen linjer fundet",
loadtext: "Henter...",
pgtext : "Side {0} af {1}",
pgfirst : "First Page",
pglast : "Last Page",
pgnext : "Next Page",
pgprev : "Previous Page",
pgrecs : "Records per Page",
showhide: "Toggle Expand Collapse Grid"
},
search : {
caption: "Søg...",
Find: "Find",
Reset: "Nulstil",
odata: [{ oper:'eq', text:"lig"},{ oper:'ne', text:"forskellige fra"},{ oper:'lt', text:"mindre"},{ oper:'le', text:"mindre eller lig"},{ oper:'gt', text:"større"},{ oper:'ge', text:"større eller lig"},{ oper:'bw', text:"begynder med"},{ oper:'bn', text:"begynder ikke med"},{ oper:'in', text:"findes i"},{ oper:'ni', text:"findes ikke i"},{ oper:'ew', text:"ender med"},{ oper:'en', text:"ender ikke med"},{ oper:'cn', text:"indeholder"},{ oper:'nc', text:"indeholder ikke"},{ oper:'nu', text:'is null'},{ oper:'nn', text:'is not null'}],
groupOps: [ { op: "AND", text: "all" }, { op: "OR", text: "any" } ],
operandTitle : "Click to select search operation.",
resetTitle : "Reset Search Value"
},
edit : {
addCaption: "Tilføj",
editCaption: "Ret",
bSubmit: "Send",
bCancel: "Annuller",
bClose: "Luk",
saveData: "Data er ændret. Gem data?",
bYes : "Ja",
bNo : "Nej",
bExit : "Fortryd",
msg: {
required:"Felt er nødvendigt",
number:"Indtast venligst et validt tal",
minValue:"værdi skal være større end eller lig med",
maxValue:"værdi skal være mindre end eller lig med",
email: "er ikke en gyldig email",
integer: "Indtast venligst et gyldigt heltal",
date: "Indtast venligst en gyldig datoværdi",
url: "er ugyldig URL. Prefix mangler ('http://' or 'https://')",
nodefined : " er ikke defineret!",
novalue : " returværdi kræves!",
customarray : "Custom function should return array!",
customfcheck : "Custom function should be present in case of custom checking!"
}
},
view : {
caption: "Vis linje",
bClose: "Luk"
},
del : {
caption: "Slet",
msg: "Slet valgte linje(r)?",
bSubmit: "Slet",
bCancel: "Fortryd"
},
nav : {
edittext: " ",
edittitle: "Rediger valgte linje",
addtext:" ",
addtitle: "Tilføj ny linje",
deltext: " ",
deltitle: "Slet valgte linje",
searchtext: " ",
searchtitle: "Find linjer",
refreshtext: "",
refreshtitle: "Indlæs igen",
alertcap: "Advarsel",
alerttext: "Vælg venligst linje",
viewtext: "",
viewtitle: "Vis valgte linje"
},
col : {
caption: "Vis/skjul kolonner",
bSubmit: "Opdatere",
bCancel: "Fortryd"
},
errors : {
errcap : "Fejl",
nourl : "Ingen url valgt",
norecords: "Ingen linjer at behandle",
model : "colNames og colModel har ikke samme længde!"
},
formatter : {
integer : {thousandsSeparator: " ", defaultValue: '0'},
number : {decimalSeparator:",", thousandsSeparator: " ", decimalPlaces: 2, defaultValue: '0,00'},
currency : {decimalSeparator:",", thousandsSeparator: " ", decimalPlaces: 2, prefix: "", suffix:"", defaultValue: '0,00'},
date : {
dayNames: [
"Søn", "Man", "Tir", "Ons", "Tor", "Fre", "Lør",
"Søndag", "Mandag", "Tirsdag", "Onsdag", "Torsdag", "Fredag", "Lørdag"
],
monthNames: [
"Jan", "Feb", "Mar", "Apr", "Maj", "Jun", "Jul", "Aug", "Sep", "Okt", "Nov", "Dec",
"Januar", "Februar", "Marts", "April", "Maj", "Juni", "Juli", "August", "September", "Oktober", "November", "December"
],
AmPm : ["","","",""],
S: function (j) {return '.'},
srcformat: 'Y-m-d',
newformat: 'd/m/Y',
parseRe : /[#%\\\/:_;.,\t\s-]/,
masks : {
ISO8601Long:"Y-m-d H:i:s",
ISO8601Short:"Y-m-d",
ShortDate: "j/n/Y",
LongDate: "l d. F Y",
FullDateTime: "l d F Y G:i:s",
MonthDay: "d. F",
ShortTime: "G:i",
LongTime: "G:i:s",
SortableDateTime: "Y-m-d\\TH:i:s",
UniversalSortableDateTime: "Y-m-d H:i:sO",
YearMonth: "F Y"
},
reformatAfterEdit : false,
userLocalTime : false
},
baseLinkUrl: '',
showAction: '',
target: '',
checkbox : {disabled:true},
idName : 'id'
}
});
// DA
})(jQuery);

View file

@ -0,0 +1,180 @@
;(function($){
/**
* jqGrid German Translation
* Version 1.0.0 (developed for jQuery Grid 3.3.1)
* Olaf Klöppel opensource@blue-hit.de
* http://blue-hit.de/
*
* Updated for jqGrid 3.8
* Andreas Flack
* http://www.contentcontrol-berlin.de
*
* Updated for jQuery 4.4
* Oleg Kiriljuk oleg.kiriljuk@ok-soft-gmbh.com
* the format corresponds now the format from
* https://github.com/jquery/globalize/blob/master/lib/cultures/globalize.culture.de.js
*
* Dual licensed under the MIT and GPL licenses:
* http://www.opensource.org/licenses/mit-license.php
* http://www.gnu.org/licenses/gpl.html
**/
$.jgrid = $.jgrid || {};
$.extend($.jgrid,{
defaults : {
recordtext: "Zeige {0} - {1} von {2}",
emptyrecords: "Keine Datensätze vorhanden",
loadtext: "Lädt...",
pgtext : "Seite {0} von {1}",
pgfirst : "First Page",
pglast : "Last Page",
pgnext : "Next Page",
pgprev : "Previous Page",
pgrecs : "Records per Page",
showhide: "Toggle Expand Collapse Grid"
},
search : {
caption: "Suche...",
Find: "Suchen",
Reset: "Zurücksetzen",
odata: [{ oper:'eq', text:"gleich"},{ oper:'ne', text:"ungleich"},{ oper:'lt', text:"kleiner"},{ oper:'le', text:"kleiner gleich"},{ oper:'gt', text:"größer"},{ oper:'ge', text:"größer gleich"},{ oper:'bw', text:"beginnt mit"},{ oper:'bn', text:"beginnt nicht mit"},{ oper:'in', text:"ist in"},{ oper:'ni', text:"ist nicht in"},{ oper:'ew', text:"endet mit"},{ oper:'en', text:"endet nicht mit"},{ oper:'cn', text:"enthält"},{ oper:'nc', text:"enthält nicht"}, { oper:'nu', text:"ist Null" }, { oper:'nn', text:"ist nicht Null" }],
groupOps: [{ op: "AND", text: "alle" },{ op: "OR", text: "mindestens eine" }],
operandTitle : "Click to select search operation.",
resetTitle : "Reset Search Value"
},
edit : {
addCaption: "Datensatz hinzufügen",
editCaption: "Datensatz bearbeiten",
bSubmit: "Speichern",
bCancel: "Abbrechen",
bClose: "Schließen",
saveData: "Daten wurden geändert! Änderungen speichern?",
bYes : "ja",
bNo : "nein",
bExit : "abbrechen",
msg: {
required:"Feld ist erforderlich",
number: "Bitte geben Sie eine Zahl ein",
minValue:"Wert muss größer oder gleich sein, als ",
maxValue:"Wert muss kleiner oder gleich sein, als ",
email: "ist keine gültige E-Mail-Adresse",
integer: "Bitte geben Sie eine Ganzzahl ein",
date: "Bitte geben Sie ein gültiges Datum ein",
url: "ist keine gültige URL. Präfix muss eingegeben werden ('http://' oder 'https://')",
nodefined : " ist nicht definiert!",
novalue : " Rückgabewert ist erforderlich!",
customarray : "Benutzerdefinierte Funktion sollte ein Array zurückgeben!",
customfcheck : "Benutzerdefinierte Funktion sollte im Falle der benutzerdefinierten Überprüfung vorhanden sein!"
}
},
view : {
caption: "Datensatz anzeigen",
bClose: "Schließen"
},
del : {
caption: "Löschen",
msg: "Ausgewählte Datensätze löschen?",
bSubmit: "Löschen",
bCancel: "Abbrechen"
},
nav : {
edittext: " ",
edittitle: "Ausgewählte Zeile editieren",
addtext:" ",
addtitle: "Neue Zeile einfügen",
deltext: " ",
deltitle: "Ausgewählte Zeile löschen",
searchtext: " ",
searchtitle: "Datensatz suchen",
refreshtext: "",
refreshtitle: "Tabelle neu laden",
alertcap: "Warnung",
alerttext: "Bitte Zeile auswählen",
viewtext: "",
viewtitle: "Ausgewählte Zeile anzeigen"
},
col : {
caption: "Spalten auswählen",
bSubmit: "Speichern",
bCancel: "Abbrechen"
},
errors : {
errcap : "Fehler",
nourl : "Keine URL angegeben",
norecords: "Keine Datensätze zu bearbeiten",
model : "colNames und colModel sind unterschiedlich lang!"
},
formatter : {
integer : {thousandsSeparator: ".", defaultValue: '0'},
number : {decimalSeparator:",", thousandsSeparator: ".", decimalPlaces: 2, defaultValue: '0,00'},
currency : {decimalSeparator:",", thousandsSeparator: ".", decimalPlaces: 2, prefix: "", suffix:" €", defaultValue: '0,00'},
date : {
dayNames: [
"So", "Mo", "Di", "Mi", "Do", "Fr", "Sa",
"Sonntag", "Montag", "Dienstag", "Mittwoch", "Donnerstag", "Freitag", "Samstag"
],
monthNames: [
"Jan", "Feb", "Mar", "Apr", "Mai", "Jun", "Jul", "Aug", "Sep", "Okt", "Nov", "Dez",
"Januar", "Februar", "März", "April", "Mai", "Juni", "Juli", "August", "September", "Oktober", "November", "Dezember"
],
AmPm : ["","","",""],
S: function () {return '.';}, // one can also use 'er' instead of '.' but one have to use additional word like 'der' or 'den' before
srcformat: 'Y-m-d',
newformat: 'd.m.Y',
parseRe : /[#%\\\/:_;.,\t\s-]/,
masks : {
// see http://php.net/manual/en/function.date.php for PHP format used in jqGrid
// and see http://docs.jquery.com/UI/Datepicker/formatDate
// and https://github.com/jquery/globalize#dates for alternative formats used frequently
ISO8601Long: "Y-m-d H:i:s",
ISO8601Short: "Y-m-d",
// short date:
// d - Day of the month, 2 digits with leading zeros
// m - Numeric representation of a month, with leading zeros
// Y - A full numeric representation of a year, 4 digits
ShortDate: "d.m.Y", // in jQuery UI Datepicker: "dd.MM.yyyy"
// long date:
// l - A full textual representation of the day of the week
// j - Day of the month without leading zeros
// F - A full textual representation of a month
// Y - A full numeric representation of a year, 4 digits
LongDate: "l, j. F Y", // in jQuery UI Datepicker: "dddd, d. MMMM yyyy"
// long date with long time:
// l - A full textual representation of the day of the week
// j - Day of the month without leading zeros
// F - A full textual representation of a month
// Y - A full numeric representation of a year, 4 digits
// H - 24-hour format of an hour with leading zeros
// i - Minutes with leading zeros
// s - Seconds, with leading zeros
FullDateTime: "l, j. F Y H:i:s", // in jQuery UI Datepicker: "dddd, d. MMMM yyyy HH:mm:ss"
// month day:
// d - Day of the month, 2 digits with leading zeros
// F - A full textual representation of a month
MonthDay: "d F", // in jQuery UI Datepicker: "dd MMMM"
// short time (without seconds)
// H - 24-hour format of an hour with leading zeros
// i - Minutes with leading zeros
ShortTime: "H:i", // in jQuery UI Datepicker: "HH:mm"
// long time (with seconds)
// H - 24-hour format of an hour with leading zeros
// i - Minutes with leading zeros
// s - Seconds, with leading zeros
LongTime: "H:i:s", // in jQuery UI Datepicker: "HH:mm:ss"
SortableDateTime: "Y-m-d\\TH:i:s",
UniversalSortableDateTime: "Y-m-d H:i:sO",
// month with year
// F - A full textual representation of a month
// Y - A full numeric representation of a year, 4 digits
YearMonth: "F Y" // in jQuery UI Datepicker: "MMMM yyyy"
},
reformatAfterEdit : false,
userLocalTime : false
},
baseLinkUrl: '',
showAction: '',
target: '',
checkbox : {disabled:true},
idName : 'id'
}
});
})(jQuery);

View file

@ -0,0 +1,136 @@
;(function($){
/**
* jqGrid Danish Translation
* Kaare Rasmussen kjs@jasonic.dk
* http://jasonic.dk/blog
* Dual licensed under the MIT and GPL licenses:
* http://www.opensource.org/licenses/mit-license.php
* http://www.gnu.org/licenses/gpl.html
**/
$.jgrid = {
defaults : {
recordtext: "View {0} - {1} of {2}",
emptyrecords: "No records to view",
loadtext: "Loading...",
pgtext : "Page {0} of {1}",
pgfirst : "First Page",
pglast : "Last Page",
pgnext : "Next Page",
pgprev : "Previous Page",
pgrecs : "Records per Page",
showhide: "Toggle Expand Collapse Grid"
},
search : {
caption: "Søg...",
Find: "Find",
Reset: "Nulstil",
odata: [{ oper:'eq', text:'equal'},{ oper:'ne', text:'not equal'},{ oper:'lt', text:'less'},{ oper:'le', text:'less or equal'},{ oper:'gt', text:'greater'},{ oper:'ge', text:'greater or equal'},{ oper:'bw', text:'begins with'},{ oper:'bn', text:'does not begin with'},{ oper:'in', text:'is in'},{ oper:'ni', text:'is not in'},{ oper:'ew', text:'ends with'},{ oper:'en', text:'does not end with'},{ oper:'cn', text:'contains'},{ oper:'nc', text:'does not contain'},{ oper:'nu', text:'is null'},{ oper:'nn', text:'is not null'}],
groupOps: [ { op: "AND", text: "all" }, { op: "OR", text: "any" } ],
operandTitle : "Click to select search operation.",
resetTitle : "Reset Search Value"
},
edit : {
addCaption: "Tilføj",
editCaption: "Ret",
bSubmit: "Send",
bCancel: "Annuller",
bClose: "Luk",
saveData: "Data has been changed! Save changes?",
bYes : "Yes",
bNo : "No",
bExit : "Cancel",
msg: {
required:"Felt er nødvendigt",
number:"Indtast venligst et validt tal",
minValue:"værdi skal være større end eller lig med",
maxValue:"værdi skal være mindre end eller lig med",
email: "er ikke en valid email",
integer: "Indtast venligst et validt heltalt",
date: "Indtast venligst en valid datoværdi",
url: "is not a valid URL. Prefix required ('http://' or 'https://')",
nodefined : " is not defined!",
novalue : " return value is required!",
customarray : "Custom function should return array!",
customfcheck : "Custom function should be present in case of custom checking!"
}
},
view : {
caption: "View Record",
bClose: "Close"
},
del : {
caption: "Slet",
msg: "Slet valgte række(r)?",
bSubmit: "Slet",
bCancel: "Annuller"
},
nav : {
edittext: " ",
edittitle: "Rediger valgte række",
addtext:" ",
addtitle: "Tilføj ny række",
deltext: " ",
deltitle: "Slet valgte række",
searchtext: " ",
searchtitle: "Find poster",
refreshtext: "",
refreshtitle: "Indlæs igen",
alertcap: "Advarsel",
alerttext: "Vælg venligst række",
viewtext: "",
viewtitle: "View selected row"
},
col : {
caption: "Vis/skjul kolonner",
bSubmit: "Send",
bCancel: "Annuller"
},
errors : {
errcap : "Fejl",
nourl : "Ingel url valgt",
norecords: "Ingen poster at behandle",
model : "colNames og colModel har ikke samme længde!"
},
formatter : {
integer : {thousandsSeparator: " ", defaultValue: '0'},
number : {decimalSeparator:",", thousandsSeparator: " ", decimalPlaces: 2, defaultValue: '0,00'},
currency : {decimalSeparator:",", thousandsSeparator: " ", decimalPlaces: 2, prefix: "", suffix:"", defaultValue: '0,00'},
date : {
dayNames: [
"Søn", "Man", "Tirs", "Ons", "Tors", "Fre", "Lør",
"Søndag", "Mandag", "Tirsdag", "Onsdag", "Torsdag", "Fredag", "Lørdag"
],
monthNames: [
"Jan", "Feb", "Mar", "Apr", "Maj", "Jun", "Jul", "Aug", "Sep", "Okt", "Nov", "Dec",
"Januar", "Februar", "Marts", "April", "Maj", "Juni", "Juli", "August", "September", "Oktober", "November", "December"
],
AmPm : ["","","",""],
S: function (j) {return '.'},
srcformat: 'Y-m-d',
newformat: 'd/m/Y',
parseRe : /[#%\\\/:_;.,\t\s-]/,
masks : {
ISO8601Long:"Y-m-d H:i:s",
ISO8601Short:"Y-m-d",
ShortDate: "j/n/Y",
LongDate: "l d. F Y",
FullDateTime: "l d F Y G:i:s",
MonthDay: "d. F",
ShortTime: "G:i",
LongTime: "G:i:s",
SortableDateTime: "Y-m-d\\TH:i:s",
UniversalSortableDateTime: "Y-m-d H:i:sO",
YearMonth: "F Y"
},
reformatAfterEdit : false,
userLocalTime : false
},
baseLinkUrl: '',
showAction: '',
target: '',
checkbox : {disabled:true},
idName : 'id'
}
};
// DK
})(jQuery);

View file

@ -0,0 +1,135 @@
;(function($){
/**
* jqGrid Greek (el) Translation
* Alex Cicovic
* http://www.alexcicovic.com
* Dual licensed under the MIT and GPL licenses:
* http://www.opensource.org/licenses/mit-license.php
* http://www.gnu.org/licenses/gpl.html
**/
$.jgrid = $.jgrid || {};
$.extend($.jgrid,{
defaults : {
recordtext: "View {0} - {1} of {2}",
emptyrecords: "No records to view",
loadtext: "Φόρτωση...",
pgtext : "Page {0} of {1}",
pgfirst : "First Page",
pglast : "Last Page",
pgnext : "Next Page",
pgprev : "Previous Page",
pgrecs : "Records per Page",
showhide: "Toggle Expand Collapse Grid"
},
search : {
caption: "Αναζήτηση...",
Find: "Εύρεση",
Reset: "Επαναφορά",
odata: [{ oper:'eq', text:'equal'},{ oper:'ne', text:'not equal'},{ oper:'lt', text:'less'},{ oper:'le', text:'less or equal'},{ oper:'gt', text:'greater'},{ oper:'ge', text:'greater or equal'},{ oper:'bw', text:'begins with'},{ oper:'bn', text:'does not begin with'},{ oper:'in', text:'is in'},{ oper:'ni', text:'is not in'},{ oper:'ew', text:'ends with'},{ oper:'en', text:'does not end with'},{ oper:'cn', text:'contains'},{ oper:'nc', text:'does not contain'},{ oper:'nu', text:'is null'},{ oper:'nn', text:'is not null'}],
groupOps: [ { op: "AND", text: "all" }, { op: "OR", text: "any" } ],
operandTitle : "Click to select search operation.",
resetTitle : "Reset Search Value"
},
edit : {
addCaption: "Εισαγωγή Εγγραφής",
editCaption: "Επεξεργασία Εγγραφής",
bSubmit: "Καταχώρηση",
bCancel: "Άκυρο",
bClose: "Κλείσιμο",
saveData: "Data has been changed! Save changes?",
bYes : "Yes",
bNo : "No",
bExit : "Cancel",
msg: {
required:"Το πεδίο είναι απαραίτητο",
number:"Το πεδίο δέχεται μόνο αριθμούς",
minValue:"Η τιμή πρέπει να είναι μεγαλύτερη ή ίση του ",
maxValue:"Η τιμή πρέπει να είναι μικρότερη ή ίση του ",
email: "Η διεύθυνση e-mail δεν είναι έγκυρη",
integer: "Το πεδίο δέχεται μόνο ακέραιους αριθμούς",
url: "is not a valid URL. Prefix required ('http://' or 'https://')",
nodefined : " is not defined!",
novalue : " return value is required!",
customarray : "Custom function should return array!",
customfcheck : "Custom function should be present in case of custom checking!"
}
},
view : {
caption: "View Record",
bClose: "Close"
},
del : {
caption: "Διαγραφή",
msg: "Διαγραφή των επιλεγμένων εγγραφών;",
bSubmit: "Ναι",
bCancel: "Άκυρο"
},
nav : {
edittext: " ",
edittitle: "Επεξεργασία επιλεγμένης εγγραφής",
addtext:" ",
addtitle: "Εισαγωγή νέας εγγραφής",
deltext: " ",
deltitle: "Διαγραφή επιλεγμένης εγγραφής",
searchtext: " ",
searchtitle: "Εύρεση Εγγραφών",
refreshtext: "",
refreshtitle: "Ανανέωση Πίνακα",
alertcap: "Προσοχή",
alerttext: "Δεν έχετε επιλέξει εγγραφή",
viewtext: "",
viewtitle: "View selected row"
},
col : {
caption: "Εμφάνιση / Απόκρυψη Στηλών",
bSubmit: "ΟΚ",
bCancel: "Άκυρο"
},
errors : {
errcap : "Σφάλμα",
nourl : "Δεν έχει δοθεί διεύθυνση χειρισμού για τη συγκεκριμένη ενέργεια",
norecords: "Δεν υπάρχουν εγγραφές προς επεξεργασία",
model : "Άνισος αριθμός πεδίων colNames/colModel!"
},
formatter : {
integer : {thousandsSeparator: " ", defaultValue: '0'},
number : {decimalSeparator:".", thousandsSeparator: " ", decimalPlaces: 2, defaultValue: '0.00'},
currency : {decimalSeparator:".", thousandsSeparator: " ", decimalPlaces: 2, prefix: "", suffix:"", defaultValue: '0.00'},
date : {
dayNames: [
"Κυρ", "Δευ", "Τρι", "Τετ", "Πεμ", "Παρ", "Σαβ",
"Κυριακή", "Δευτέρα", "Τρίτη", "Τετάρτη", "Πέμπτη", "Παρασκευή", "Σάββατο"
],
monthNames: [
"Ιαν", "Φεβ", "Μαρ", "Απρ", "Μαι", "Ιουν", "Ιουλ", "Αυγ", "Σεπ", "Οκτ", "Νοε", "Δεκ",
"Ιανουάριος", "Φεβρουάριος", "Μάρτιος", "Απρίλιος", "Μάιος", "Ιούνιος", "Ιούλιος", "Αύγουστος", "Σεπτέμβριος", "Οκτώβριος", "Νοέμβριος", "Δεκέμβριος"
],
AmPm : ["πμ","μμ","ΠΜ","ΜΜ"],
S: function (j) {return j == 1 || j > 1 ? ['η'][Math.min((j - 1) % 10, 3)] : ''},
srcformat: 'Y-m-d',
newformat: 'd/m/Y',
parseRe : /[#%\\\/:_;.,\t\s-]/,
masks : {
ISO8601Long:"Y-m-d H:i:s",
ISO8601Short:"Y-m-d",
ShortDate: "n/j/Y",
LongDate: "l, F d, Y",
FullDateTime: "l, F d, Y g:i:s A",
MonthDay: "F d",
ShortTime: "g:i A",
LongTime: "g:i:s A",
SortableDateTime: "Y-m-d\\TH:i:s",
UniversalSortableDateTime: "Y-m-d H:i:sO",
YearMonth: "F, Y"
},
reformatAfterEdit : false,
userLocalTime : false
},
baseLinkUrl: '',
showAction: '',
target: '',
checkbox : {disabled:true},
idName : 'id'
}
});
})(jQuery);

View file

@ -0,0 +1,177 @@
;(function($){
/**
* jqGrid English Translation
* Tony Tomov tony@trirand.com
* http://trirand.com/blog/
* Dual licensed under the MIT and GPL licenses:
* http://www.opensource.org/licenses/mit-license.php
* http://www.gnu.org/licenses/gpl.html
**/
$.jgrid = $.jgrid || {};
$.extend($.jgrid,{
defaults : {
recordtext: "View {0} - {1} of {2}",
emptyrecords: "No records to view",
loadtext: "Loading...",
pgtext : "Page {0} of {1}",
pgfirst : "First Page",
pglast : "Last Page",
pgnext : "Next Page",
pgprev : "Previous Page",
pgrecs : "Records per Page",
showhide: "Toggle Expand Collapse Grid"
},
search : {
caption: "Search...",
Find: "Find",
Reset: "Reset",
odata: [{ oper:'eq', text:'equal'},{ oper:'ne', text:'not equal'},{ oper:'lt', text:'less'},{ oper:'le', text:'less or equal'},{ oper:'gt', text:'greater'},{ oper:'ge', text:'greater or equal'},{ oper:'bw', text:'begins with'},{ oper:'bn', text:'does not begin with'},{ oper:'in', text:'is in'},{ oper:'ni', text:'is not in'},{ oper:'ew', text:'ends with'},{ oper:'en', text:'does not end with'},{ oper:'cn', text:'contains'},{ oper:'nc', text:'does not contain'},{ oper:'nu', text:'is null'},{ oper:'nn', text:'is not null'}],
groupOps: [{ op: "AND", text: "all" },{ op: "OR", text: "any" }],
operandTitle : "Click to select search operation.",
resetTitle : "Reset Search Value"
},
edit : {
addCaption: "Add Record",
editCaption: "Edit Record",
bSubmit: "Submit",
bCancel: "Cancel",
bClose: "Close",
saveData: "Data has been changed! Save changes?",
bYes : "Yes",
bNo : "No",
bExit : "Cancel",
msg: {
required:"Field is required",
number:"Please, enter valid number",
minValue:"value must be greater than or equal to ",
maxValue:"value must be less than or equal to",
email: "is not a valid e-mail",
integer: "Please, enter valid integer value",
date: "Please, enter valid date value",
url: "is not a valid URL. Prefix required ('http://' or 'https://')",
nodefined : " is not defined!",
novalue : " return value is required!",
customarray : "Custom function should return array!",
customfcheck : "Custom function should be present in case of custom checking!"
}
},
view : {
caption: "View Record",
bClose: "Close"
},
del : {
caption: "Delete",
msg: "Delete selected record(s)?",
bSubmit: "Delete",
bCancel: "Cancel"
},
nav : {
edittext: "",
edittitle: "Edit selected row",
addtext:"",
addtitle: "Add new row",
deltext: "",
deltitle: "Delete selected row",
searchtext: "",
searchtitle: "Find records",
refreshtext: "",
refreshtitle: "Reload Grid",
alertcap: "Warning",
alerttext: "Please, select row",
viewtext: "",
viewtitle: "View selected row"
},
col : {
caption: "Select columns",
bSubmit: "Ok",
bCancel: "Cancel"
},
errors : {
errcap : "Error",
nourl : "No url is set",
norecords: "No records to process",
model : "Length of colNames <> colModel!"
},
formatter : {
integer : {thousandsSeparator: ",", defaultValue: '0'},
number : {decimalSeparator:".", thousandsSeparator: ",", decimalPlaces: 2, defaultValue: '0.00'},
currency : {decimalSeparator:".", thousandsSeparator: ",", decimalPlaces: 2, prefix: "", suffix:"", defaultValue: '0.00'},
date : {
dayNames: [
"Sun", "Mon", "Tue", "Wed", "Thr", "Fri", "Sat",
"Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"
],
monthNames: [
"Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec",
"January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"
],
AmPm : ["am","pm","AM","PM"],
S: function (j) {return j < 11 || j > 13 ? ['st', 'nd', 'rd', 'th'][Math.min((j - 1) % 10, 3)] : 'th';},
srcformat: 'Y-m-d',
newformat: 'n/j/Y',
parseRe : /[#%\\\/:_;.,\t\s-]/,
masks : {
// see http://php.net/manual/en/function.date.php for PHP format used in jqGrid
// and see http://docs.jquery.com/UI/Datepicker/formatDate
// and https://github.com/jquery/globalize#dates for alternative formats used frequently
// one can find on https://github.com/jquery/globalize/tree/master/lib/cultures many
// information about date, time, numbers and currency formats used in different countries
// one should just convert the information in PHP format
ISO8601Long:"Y-m-d H:i:s",
ISO8601Short:"Y-m-d",
// short date:
// n - Numeric representation of a month, without leading zeros
// j - Day of the month without leading zeros
// Y - A full numeric representation of a year, 4 digits
// example: 3/1/2012 which means 1 March 2012
ShortDate: "n/j/Y", // in jQuery UI Datepicker: "M/d/yyyy"
// long date:
// l - A full textual representation of the day of the week
// F - A full textual representation of a month
// d - Day of the month, 2 digits with leading zeros
// Y - A full numeric representation of a year, 4 digits
LongDate: "l, F d, Y", // in jQuery UI Datepicker: "dddd, MMMM dd, yyyy"
// long date with long time:
// l - A full textual representation of the day of the week
// F - A full textual representation of a month
// d - Day of the month, 2 digits with leading zeros
// Y - A full numeric representation of a year, 4 digits
// g - 12-hour format of an hour without leading zeros
// i - Minutes with leading zeros
// s - Seconds, with leading zeros
// A - Uppercase Ante meridiem and Post meridiem (AM or PM)
FullDateTime: "l, F d, Y g:i:s A", // in jQuery UI Datepicker: "dddd, MMMM dd, yyyy h:mm:ss tt"
// month day:
// F - A full textual representation of a month
// d - Day of the month, 2 digits with leading zeros
MonthDay: "F d", // in jQuery UI Datepicker: "MMMM dd"
// short time (without seconds)
// g - 12-hour format of an hour without leading zeros
// i - Minutes with leading zeros
// A - Uppercase Ante meridiem and Post meridiem (AM or PM)
ShortTime: "g:i A", // in jQuery UI Datepicker: "h:mm tt"
// long time (with seconds)
// g - 12-hour format of an hour without leading zeros
// i - Minutes with leading zeros
// s - Seconds, with leading zeros
// A - Uppercase Ante meridiem and Post meridiem (AM or PM)
LongTime: "g:i:s A", // in jQuery UI Datepicker: "h:mm:ss tt"
SortableDateTime: "Y-m-d\\TH:i:s",
UniversalSortableDateTime: "Y-m-d H:i:sO",
// month with year
// Y - A full numeric representation of a year, 4 digits
// F - A full textual representation of a month
YearMonth: "F, Y" // in jQuery UI Datepicker: "MMMM, yyyy"
},
reformatAfterEdit : false,
userLocalTime : false
},
baseLinkUrl: '',
showAction: '',
target: '',
checkbox : {disabled:true},
idName : 'id'
}
});
})(jQuery);

View file

@ -0,0 +1,137 @@
;(function($){
/**
* jqGrid Spanish Translation
* Traduccion jqGrid en Español por Yamil Bracho
* Traduccion corregida y ampliada por Faserline, S.L.
* http://www.faserline.com
* Dual licensed under the MIT and GPL licenses:
* http://www.opensource.org/licenses/mit-license.php
* http://www.gnu.org/licenses/gpl.html
**/
$.jgrid = $.jgrid || {};
$.extend($.jgrid,{
defaults : {
recordtext: "Mostrando {0} - {1} de {2}",
emptyrecords: "Sin registros que mostrar",
loadtext: "Cargando...",
pgtext : "Página {0} de {1}",
pgfirst : "First Page",
pglast : "Last Page",
pgnext : "Next Page",
pgprev : "Previous Page",
pgrecs : "Records per Page",
showhide: "Toggle Expand Collapse Grid"
},
search : {
caption: "Búsqueda...",
Find: "Buscar",
Reset: "Limpiar",
odata: [{ oper:'eq', text:"igual "},{ oper:'ne', text:"no igual a"},{ oper:'lt', text:"menor que"},{ oper:'le', text:"menor o igual que"},{ oper:'gt', text:"mayor que"},{ oper:'ge', text:"mayor o igual a"},{ oper:'bw', text:"empiece por"},{ oper:'bn', text:"no empiece por"},{ oper:'in', text:"está en"},{ oper:'ni', text:"no está en"},{ oper:'ew', text:"termina por"},{ oper:'en', text:"no termina por"},{ oper:'cn', text:"contiene"},{ oper:'nc', text:"no contiene"},{ oper:'nu', text:'is null'},{ oper:'nn', text:'is not null'}],
groupOps: [ { op: "AND", text: "todo" }, { op: "OR", text: "cualquier" } ],
operandTitle : "Click to select search operation.",
resetTitle : "Reset Search Value"
},
edit : {
addCaption: "Agregar registro",
editCaption: "Modificar registro",
bSubmit: "Guardar",
bCancel: "Cancelar",
bClose: "Cerrar",
saveData: "Se han modificado los datos, ¿guardar cambios?",
bYes : "Si",
bNo : "No",
bExit : "Cancelar",
msg: {
required:"Campo obligatorio",
number:"Introduzca un número",
minValue:"El valor debe ser mayor o igual a ",
maxValue:"El valor debe ser menor o igual a ",
email: "no es una dirección de correo válida",
integer: "Introduzca un valor entero",
date: "Introduza una fecha correcta ",
url: "no es una URL válida. Prefijo requerido ('http://' or 'https://')",
nodefined : " no está definido.",
novalue : " valor de retorno es requerido.",
customarray : "La función personalizada debe devolver un array.",
customfcheck : "La función personalizada debe estar presente en el caso de validación personalizada."
}
},
view : {
caption: "Consultar registro",
bClose: "Cerrar"
},
del : {
caption: "Eliminar",
msg: "¿Desea eliminar los registros seleccionados?",
bSubmit: "Eliminar",
bCancel: "Cancelar"
},
nav : {
edittext: " ",
edittitle: "Modificar fila seleccionada",
addtext:" ",
addtitle: "Agregar nueva fila",
deltext: " ",
deltitle: "Eliminar fila seleccionada",
searchtext: " ",
searchtitle: "Buscar información",
refreshtext: "",
refreshtitle: "Recargar datos",
alertcap: "Aviso",
alerttext: "Seleccione una fila",
viewtext: "",
viewtitle: "Ver fila seleccionada"
},
col : {
caption: "Mostrar/ocultar columnas",
bSubmit: "Enviar",
bCancel: "Cancelar"
},
errors : {
errcap : "Error",
nourl : "No se ha especificado una URL",
norecords: "No hay datos para procesar",
model : "Las columnas de nombres son diferentes de las columnas de modelo"
},
formatter : {
integer : {thousandsSeparator: ".", defaultValue: '0'},
number : {decimalSeparator:",", thousandsSeparator: ".", decimalPlaces: 2, defaultValue: '0,00'},
currency : {decimalSeparator:",", thousandsSeparator: ".", decimalPlaces: 2, prefix: "", suffix:"", defaultValue: '0,00'},
date : {
dayNames: [
"Do", "Lu", "Ma", "Mi", "Ju", "Vi", "Sa",
"Domingo", "Lunes", "Martes", "Miercoles", "Jueves", "Viernes", "Sabado"
],
monthNames: [
"Ene", "Feb", "Mar", "Abr", "May", "Jun", "Jul", "Ago", "Sep", "Oct", "Nov", "Dic",
"Enero", "Febrero", "Marzo", "Abril", "Mayo", "Junio", "Julio", "Agosto", "Septiembre", "Octubre", "Noviembre", "Diciembre"
],
AmPm : ["am","pm","AM","PM"],
S: function (j) {return j < 11 || j > 13 ? ['st', 'nd', 'rd', 'th'][Math.min((j - 1) % 10, 3)] : 'th'},
srcformat: 'Y-m-d',
newformat: 'd-m-Y',
parseRe : /[#%\\\/:_;.,\t\s-]/,
masks : {
ISO8601Long:"Y-m-d H:i:s",
ISO8601Short:"Y-m-d",
ShortDate: "n/j/Y",
LongDate: "l, F d, Y",
FullDateTime: "l, F d, Y g:i:s A",
MonthDay: "F d",
ShortTime: "g:i A",
LongTime: "g:i:s A",
SortableDateTime: "Y-m-d\\TH:i:s",
UniversalSortableDateTime: "Y-m-d H:i:sO",
YearMonth: "F, Y"
},
reformatAfterEdit : false,
userLocalTime : false
},
baseLinkUrl: '',
showAction: '',
target: '',
checkbox : {disabled:true},
idName : 'id'
}
});
})(jQuery);

View file

@ -0,0 +1,154 @@
;(function ($) {
/**
* jqGrid Persian Translation
* Dual licensed under the MIT and GPL licenses:
* http://www.opensource.org/licenses/mit-license.php
* http://www.gnu.org/licenses/gpl.html
**/
$.jgrid = $.jgrid || {};
$.extend($.jgrid,{
defaults: {
recordtext: "نمابش {0} - {1} از {2}",
emptyrecords: "رکوردی یافت نشد",
loadtext: "بارگزاري...",
pgtext: "صفحه {0} از {1}",
pgfirst : "First Page",
pglast : "Last Page",
pgnext : "Next Page",
pgprev : "Previous Page",
pgrecs : "Records per Page",
showhide: "Toggle Expand Collapse Grid"
},
search: {
caption: "جستجو...",
Find: "يافته ها",
Reset: "از نو",
odata: [{ oper:'eq', text:"برابر"},{ oper:'ne', text:"نا برابر"},{ oper:'lt', text:"به"},{ oper:'le', text:"کوچکتر"},{ oper:'gt', text:"از"},{ oper:'ge', text:"بزرگتر"},{ oper:'bw', text:"شروع با"},{ oper:'bn', text:"شروع نشود با"},{ oper:'in', text:"نباشد"},{ oper:'ni', text:"عضو این نباشد"},{ oper:'ew', text:"اتمام با"},{ oper:'en', text:"تمام نشود با"},{ oper:'cn', text:"حاوی"},{ oper:'nc', text:"نباشد حاوی"},{ oper:'nu', text:'is null'},{ oper:'nn', text:'is not null'}],
groupOps: [{
op: "AND",
text: "کل"
},
{
op: "OR",
text: "مجموع"
}],
operandTitle : "Click to select search operation.",
resetTitle : "Reset Search Value"
},
edit: {
addCaption: "اضافه کردن رکورد",
editCaption: "ويرايش رکورد",
bSubmit: "ثبت",
bCancel: "انصراف",
bClose: "بستن",
saveData: "دیتا تعییر کرد! ذخیره شود؟",
bYes: "بله",
bNo: "خیر",
bExit: "انصراف",
msg: {
required: "فيلدها بايد ختما پر شوند",
number: "لطفا عدد وعتبر وارد کنيد",
minValue: "مقدار وارد شده بايد بزرگتر يا مساوي با",
maxValue: "مقدار وارد شده بايد کوچکتر يا مساوي",
email: "پست الکترونيک وارد شده معتبر نيست",
integer: "لطفا يک عدد صحيح وارد کنيد",
date: "لطفا يک تاريخ معتبر وارد کنيد",
url: "این آدرس صحیح نمی باشد. پیشوند نیاز است ('http://' یا 'https://')",
nodefined: " تعریف نشده!",
novalue: " مقدار برگشتی اجباری است!",
customarray: "تابع شما باید مقدار آرایه داشته باشد!",
customfcheck: "برای داشتن متد دلخواه شما باید سطون با چکینگ دلخواه داشته باشید!"
}
},
view: {
caption: "نمایش رکورد",
bClose: "بستن"
},
del: {
caption: "حذف",
msg: "از حذف گزينه هاي انتخاب شده مطمئن هستيد؟",
bSubmit: "حذف",
bCancel: "ابطال"
},
nav: {
edittext: " ",
edittitle: "ويرايش رديف هاي انتخاب شده",
addtext: " ",
addtitle: "افزودن رديف جديد",
deltext: " ",
deltitle: "حذف ردبف هاي انتیاب شده",
searchtext: " ",
searchtitle: "جستجوي رديف",
refreshtext: "",
refreshtitle: "بازيابي مجدد صفحه",
alertcap: "اخطار",
alerttext: "لطفا يک رديف انتخاب کنيد",
viewtext: "",
viewtitle: "نمایش رکورد های انتخاب شده"
},
col: {
caption: "نمايش/عدم نمايش ستون",
bSubmit: "ثبت",
bCancel: "انصراف"
},
errors: {
errcap: "خطا",
nourl: "هيچ آدرسي تنظيم نشده است",
norecords: "هيچ رکوردي براي پردازش موجود نيست",
model: "طول نام ستون ها محالف ستون هاي مدل مي باشد!"
},
formatter: {
integer: {
thousandsSeparator: " ",
defaultValue: "0"
},
number: {
decimalSeparator: ".",
thousandsSeparator: " ",
decimalPlaces: 2,
defaultValue: "0.00"
},
currency: {
decimalSeparator: ".",
thousandsSeparator: " ",
decimalPlaces: 2,
prefix: "",
suffix: "",
defaultValue: "0"
},
date: {
dayNames: ["يک", "دو", "سه", "چهار", "پنج", "جمع", "شنب", "يکشنبه", "دوشنبه", "سه شنبه", "چهارشنبه", "پنجشنبه", "جمعه", "شنبه"],
monthNames: ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec", "ژانويه", "فوريه", "مارس", "آوريل", "مه", "ژوئن", "ژوئيه", "اوت", "سپتامبر", "اکتبر", "نوامبر", "December"],
AmPm: ["ب.ظ", "ب.ظ", "ق.ظ", "ق.ظ"],
S: function (b) {
return b < 11 || b > 13 ? ["st", "nd", "rd", "th"][Math.min((b - 1) % 10, 3)] : "th"
},
srcformat: "Y-m-d",
newformat: "d/m/Y",
parseRe : /[#%\\\/:_;.,\t\s-]/,
masks: {
ISO8601Long: "Y-m-d H:i:s",
ISO8601Short: "Y-m-d",
ShortDate: "n/j/Y",
LongDate: "l, F d, Y",
FullDateTime: "l, F d, Y g:i:s A",
MonthDay: "F d",
ShortTime: "g:i A",
LongTime: "g:i:s A",
SortableDateTime: "Y-m-d\\TH:i:s",
UniversalSortableDateTime: "Y-m-d H:i:sO",
YearMonth: "F, Y"
},
reformatAfterEdit: false,
userLocalTime : false
},
baseLinkUrl: "",
showAction: "نمايش",
target: "",
checkbox: {
disabled: true
},
idName: "id"
}
});
})(jQuery);

View file

@ -0,0 +1,138 @@
;(function($){
/**
* jqGrid (fi) Finnish Translation
* Jukka Inkeri awot.fi 2010-05-19
* Alex Grönholm alex.gronholm@nextday.fi 2011-05-18
* http://awot.fi
* Dual licensed under the MIT and GPL licenses:
* http://www.opensource.org/licenses/mit-license.php
* http://www.gnu.org/licenses/gpl.html
**/
$.jgrid = $.jgrid || {};
$.extend($.jgrid,{
defaults: {
recordtext: "Rivit {0} - {1} / {2}",
emptyrecords: "Ei n&auml;ytett&auml;vi&auml;",
loadtext: "Haetaan...",
pgtext: "Sivu {0} / {1}",
pgfirst : "First Page",
pglast : "Last Page",
pgnext : "Next Page",
pgprev : "Previous Page",
pgrecs : "Records per Page",
showhide: "Toggle Expand Collapse Grid"
},
search: {
caption: "Etsi...",
Find: "Etsi",
Reset: "Tyhjenn&auml;",
odata: [{ oper:'eq', text:"on"},{ oper:'ne', text:"ei ole"},{ oper:'lt', text:"pienempi"},{ oper:'le', text:"pienempi tai yht&auml;suuri"},{ oper:'gt', text:"suurempi"},{ oper:'ge', text:"suurempi tai yht&auml;suuri"},{ oper:'bw', text:"alkaa"},{ oper:'bn', text:"ei ala"},{ oper:'in', text:"joukossa"},{ oper:'ni', text:"ei joukossa"},{ oper:'ew', text:"loppuu"},{ oper:'en', text:"ei lopu"},{ oper:'cn', text:"sis&auml;lt&auml;&auml;"},{ oper:'nc', text:"ei sis&auml;ll&auml;"},{ oper:'nu', text:"on tyhj&auml;"},{ oper:'nn', text:"ei ole tyhj&auml;"},{ oper:'nu', text:'is null'},{ oper:'nn', text:'is not null'}],
groupOps: [ { op: "AND", text: "kaikki" }, { op: "OR", text: "mik&auml; tahansa" } ],
operandTitle : "Click to select search operation.",
resetTitle : "Reset Search Value"
},
edit: {
addCaption: "Uusi rivi",
editCaption: "Muokkaa rivi&auml;",
bSubmit: "OK",
bCancel: "Peru",
bClose: "Sulje",
saveData: "Tietoja muutettu! Tallennetaanko?",
bYes: "Kyll&auml;",
bNo: "Ei",
bExit: "Peru",
msg: {
required: "pakollinen",
number: "Anna kelvollinen nro",
minValue: "arvon oltava suurempi tai yht&auml;suuri kuin ",
maxValue: "arvon oltava pienempi tai yht&auml;suuri kuin ",
email: "ei ole kelvollinen s&auml;postiosoite",
integer: "Anna kelvollinen kokonaisluku",
date: "Anna kelvollinen pvm",
url: "Ei ole kelvollinen linkki(URL). Alku oltava ('http://' tai 'https://')",
nodefined: " ei ole m&auml;&auml;ritelty!",
novalue: " paluuarvo vaaditaan!",
customarray: "Oman funktion tulee palauttaa jono!",
customfcheck: "Oma funktio on m&auml;&auml;ritelt&auml;v&auml; r&auml;&auml;t&auml;l&ouml;ity&auml; tarkastusta varten!"
}
},
view: {
caption: "N&auml;yt&auml; rivi",
bClose: "Sulje"
},
del: {
caption: "Poista",
msg: "Poista valitut rivit?",
bSubmit: "Poista",
bCancel: "Peru"
},
nav: {
edittext: "",
edittitle: "Muokkaa valittua rivi&auml;",
addtext: "",
addtitle: "Uusi rivi",
deltext: "",
deltitle: "Poista valittu rivi",
searchtext: "",
searchtitle: "Etsi tietoja",
refreshtext: "",
refreshtitle: "Lataa uudelleen",
alertcap: "Varoitus",
alerttext: "Valitse rivi",
viewtext: "",
viewtitle: "N&auml;yta valitut rivit"
},
col: {
caption: "Valitse sarakkeet",
bSubmit: "OK",
bCancel: "Peru"
},
errors : {
errcap: "Virhe",
nourl: "URL on asettamatta",
norecords: "Ei muokattavia tietoja",
model: "Pituus colNames <> colModel!"
},
formatter: {
integer: {thousandsSeparator: "", defaultValue: '0'},
number: {decimalSeparator:",", thousandsSeparator: "", decimalPlaces: 2, defaultValue: '0,00'},
currency: {decimalSeparator:",", thousandsSeparator: "", decimalPlaces: 2, prefix: "", suffix:"", defaultValue: '0,00'},
date: {
dayNames: [
"Su", "Ma", "Ti", "Ke", "To", "Pe", "La",
"Sunnuntai", "Maanantai", "Tiistai", "Keskiviikko", "Torstai", "Perjantai", "Lauantai"
],
monthNames: [
"Tam", "Hel", "Maa", "Huh", "Tou", "Kes", "Hei", "Elo", "Syy", "Lok", "Mar", "Jou",
"Tammikuu", "Helmikuu", "Maaliskuu", "Huhtikuu", "Toukokuu", "Kes&auml;kuu", "Hein&auml;kuu", "Elokuu", "Syyskuu", "Lokakuu", "Marraskuu", "Joulukuu"
],
AmPm: ["am","pm","AM","PM"],
S: function (j) {return j < 11 || j > 13 ? ['st', 'nd', 'rd', 'th'][Math.min((j - 1) % 10, 3)] : 'th'},
srcformat: 'Y-m-d',
newformat: 'd.m.Y',
parseRe : /[#%\\\/:_;.,\t\s-]/,
masks: {
ISO8601Long:"Y-m-d H:i:s",
ISO8601Short:"Y-m-d",
ShortDate: "d.m.Y",
LongDate: "l, F d, Y",
FullDateTime: "l, F d, Y g:i:s A",
MonthDay: "F d",
ShortTime: "g:i A",
LongTime: "g:i:s A",
SortableDateTime: "Y-m-d\\TH:i:s",
UniversalSortableDateTime: "Y-m-d H:i:sO",
YearMonth: "F, Y"
},
reformatAfterEdit : false,
userLocalTime : false
},
baseLinkUrl: '',
showAction: '',
target: '',
checkbox: {disabled:true},
idName: 'id'
}
});
// FI
})(jQuery);

View file

@ -0,0 +1,135 @@
;(function($){
/**
* jqGrid French Translation
* Tony Tomov tony@trirand.com
* http://trirand.com/blog/
* Dual licensed under the MIT and GPL licenses:
* http://www.opensource.org/licenses/mit-license.php
* http://www.gnu.org/licenses/gpl.html
**/
$.jgrid = $.jgrid || {};
$.extend($.jgrid,{
defaults : {
recordtext: "Enregistrements {0} - {1} sur {2}",
emptyrecords: "Aucun enregistrement à afficher",
loadtext: "Chargement...",
pgtext : "Page {0} sur {1}",
pgfirst : "First Page",
pglast : "Last Page",
pgnext : "Next Page",
pgprev : "Previous Page",
pgrecs : "Records per Page",
showhide: "Toggle Expand Collapse Grid"
},
search : {
caption: "Recherche...",
Find: "Chercher",
Reset: "Réinitialiser",
odata: [{ oper:'eq', text:"égal"},{ oper:'ne', text:"différent"},{ oper:'lt', text:"inférieur"},{ oper:'le', text:"inférieur ou égal"},{ oper:'gt', text:"supérieur"},{ oper:'ge', text:"supérieur ou égal"},{ oper:'bw', text:"commence par"},{ oper:'bn', text:"ne commence pas par"},{ oper:'in', text:"est dans"},{ oper:'ni', text:"n'est pas dans"},{ oper:'ew', text:"finit par"},{ oper:'en', text:"ne finit pas par"},{ oper:'cn', text:"contient"},{ oper:'nc', text:"ne contient pas"},{ oper:'nu', text:'is null'},{ oper:'nn', text:'is not null'}],
groupOps: [ { op: "AND", text: "tous" }, { op: "OR", text: "au moins un" } ],
operandTitle : "Click to select search operation.",
resetTitle : "Reset Search Value"
},
edit : {
addCaption: "Ajouter",
editCaption: "Editer",
bSubmit: "Valider",
bCancel: "Annuler",
bClose: "Fermer",
saveData: "Les données ont changé ! Enregistrer les modifications ?",
bYes: "Oui",
bNo: "Non",
bExit: "Annuler",
msg: {
required: "Champ obligatoire",
number: "Saisissez un nombre correct",
minValue: "La valeur doit être supérieure ou égale à",
maxValue: "La valeur doit être inférieure ou égale à",
email: "n'est pas un email correct",
integer: "Saisissez un entier correct",
url: "n'est pas une adresse correcte. Préfixe requis ('http://' or 'https://')",
nodefined : " n'est pas défini!",
novalue : " la valeur de retour est requise!",
customarray : "Une fonction personnalisée devrait retourner un tableau (array)!",
customfcheck : "Une fonction personnalisée devrait être présente dans le cas d'une vérification personnalisée!"
}
},
view : {
caption: "Voir les enregistrement",
bClose: "Fermer"
},
del : {
caption: "Supprimer",
msg: "Supprimer les enregistrements sélectionnés ?",
bSubmit: "Supprimer",
bCancel: "Annuler"
},
nav : {
edittext: " ",
edittitle: "Editer la ligne sélectionnée",
addtext:" ",
addtitle: "Ajouter une ligne",
deltext: " ",
deltitle: "Supprimer la ligne sélectionnée",
searchtext: " ",
searchtitle: "Chercher un enregistrement",
refreshtext: "",
refreshtitle: "Recharger le tableau",
alertcap: "Avertissement",
alerttext: "Veuillez sélectionner une ligne",
viewtext: "",
viewtitle: "Afficher la ligne sélectionnée"
},
col : {
caption: "Afficher/Masquer les colonnes",
bSubmit: "Valider",
bCancel: "Annuler"
},
errors : {
errcap : "Erreur",
nourl : "Aucune adresse n'est paramétrée",
norecords: "Aucun enregistrement à traiter",
model : "Nombre de titres (colNames) <> Nombre de données (colModel)!"
},
formatter : {
integer : {thousandsSeparator: " ", defaultValue: '0'},
number : {decimalSeparator:",", thousandsSeparator: " ", decimalPlaces: 2, defaultValue: '0,00'},
currency : {decimalSeparator:",", thousandsSeparator: " ", decimalPlaces: 2, prefix: "", suffix:"", defaultValue: '0,00'},
date : {
dayNames: [
"Dim", "Lun", "Mar", "Mer", "Jeu", "Ven", "Sam",
"Dimanche", "Lundi", "Mardi", "Mercredi", "Jeudi", "Vendredi", "Samedi"
],
monthNames: [
"Jan", "Fév", "Mar", "Avr", "Mai", "Jui", "Jul", "Aou", "Sep", "Oct", "Nov", "Déc",
"Janvier", "Février", "Mars", "Avril", "Mai", "Juin", "Juillet", "Aout", "Septembre", "Octobre", "Novembre", "Décembre"
],
AmPm : ["am","pm","AM","PM"],
S: function (j) {return j == 1 ? 'er' : 'e';},
srcformat: 'Y-m-d',
newformat: 'd/m/Y',
parseRe : /[#%\\\/:_;.,\t\s-]/,
masks : {
ISO8601Long:"Y-m-d H:i:s",
ISO8601Short:"Y-m-d",
ShortDate: "n/j/Y",
LongDate: "l, F d, Y",
FullDateTime: "l, F d, Y g:i:s A",
MonthDay: "F d",
ShortTime: "g:i A",
LongTime: "g:i:s A",
SortableDateTime: "Y-m-d\\TH:i:s",
UniversalSortableDateTime: "Y-m-d H:i:sO",
YearMonth: "F, Y"
},
reformatAfterEdit : false,
userLocalTime : false
},
baseLinkUrl: '',
showAction: '',
target: '',
checkbox : {disabled:true},
idName : 'id'
}
});
})(jQuery);

View file

@ -0,0 +1,135 @@
;(function($){
/**
* jqGrid Galician Translation
* Translated by Jorge Barreiro <yortx.barry@gmail.com>
* Dual licensed under the MIT and GPL licenses:
* http://www.opensource.org/licenses/mit-license.php
* http://www.gnu.org/licenses/gpl.html
**/
$.jgrid = $.jgrid || {};
$.extend($.jgrid,{
defaults : {
recordtext: "Amosando {0} - {1} de {2}",
emptyrecords: "Sen rexistros que amosar",
loadtext: "Cargando...",
pgtext : "Páxina {0} de {1}",
pgfirst : "First Page",
pglast : "Last Page",
pgnext : "Next Page",
pgprev : "Previous Page",
pgrecs : "Records per Page",
showhide: "Toggle Expand Collapse Grid"
},
search : {
caption: "Búsqueda...",
Find: "Buscar",
Reset: "Limpar",
odata: [{ oper:'eq', text:"igual "},{ oper:'ne', text:"diferente a"},{ oper:'lt', text:"menor que"},{ oper:'le', text:"menor ou igual que"},{ oper:'gt', text:"maior que"},{ oper:'ge', text:"maior ou igual a"},{ oper:'bw', text:"empece por"},{ oper:'bn', text:"non empece por"},{ oper:'in', text:"está en"},{ oper:'ni', text:"non está en"},{ oper:'ew', text:"termina por"},{ oper:'en', text:"non termina por"},{ oper:'cn', text:"contén"},{ oper:'nc', text:"non contén"},{ oper:'nu', text:'is null'},{ oper:'nn', text:'is not null'}],
groupOps: [ { op: "AND", text: "todo" }, { op: "OR", text: "calquera" } ],
operandTitle : "Click to select search operation.",
resetTitle : "Reset Search Value"
},
edit : {
addCaption: "Engadir rexistro",
editCaption: "Modificar rexistro",
bSubmit: "Gardar",
bCancel: "Cancelar",
bClose: "Pechar",
saveData: "Modificáronse os datos, quere gardar os cambios?",
bYes : "Si",
bNo : "Non",
bExit : "Cancelar",
msg: {
required:"Campo obrigatorio",
number:"Introduza un número",
minValue:"O valor debe ser maior ou igual a ",
maxValue:"O valor debe ser menor ou igual a ",
email: "non é un enderezo de correo válido",
integer: "Introduza un valor enteiro",
date: "Introduza unha data correcta ",
url: "non é unha URL válida. Prefixo requerido ('http://' ou 'https://')",
nodefined : " non está definido.",
novalue : " o valor de retorno é obrigatorio.",
customarray : "A función persoalizada debe devolver un array.",
customfcheck : "A función persoalizada debe estar presente no caso de ter validación persoalizada."
}
},
view : {
caption: "Consultar rexistro",
bClose: "Pechar"
},
del : {
caption: "Eliminar",
msg: "Desexa eliminar os rexistros seleccionados?",
bSubmit: "Eliminar",
bCancel: "Cancelar"
},
nav : {
edittext: " ",
edittitle: "Modificar a fila seleccionada",
addtext:" ",
addtitle: "Engadir unha nova fila",
deltext: " ",
deltitle: "Eliminar a fila seleccionada",
searchtext: " ",
searchtitle: "Buscar información",
refreshtext: "",
refreshtitle: "Recargar datos",
alertcap: "Aviso",
alerttext: "Seleccione unha fila",
viewtext: "",
viewtitle: "Ver fila seleccionada"
},
col : {
caption: "Mostrar/ocultar columnas",
bSubmit: "Enviar",
bCancel: "Cancelar"
},
errors : {
errcap : "Erro",
nourl : "Non especificou unha URL",
norecords: "Non hai datos para procesar",
model : "As columnas de nomes son diferentes das columnas de modelo"
},
formatter : {
integer : {thousandsSeparator: ".", defaultValue: '0'},
number : {decimalSeparator:",", thousandsSeparator: ".", decimalPlaces: 2, defaultValue: '0,00'},
currency : {decimalSeparator:",", thousandsSeparator: ".", decimalPlaces: 2, prefix: "", suffix:"", defaultValue: '0,00'},
date : {
dayNames: [
"Do", "Lu", "Ma", "Me", "Xo", "Ve", "Sa",
"Domingo", "Luns", "Martes", "Mércoles", "Xoves", "Vernes", "Sábado"
],
monthNames: [
"Xan", "Feb", "Mar", "Abr", "Mai", "Xuñ", "Xul", "Ago", "Set", "Out", "Nov", "Dec",
"Xaneiro", "Febreiro", "Marzo", "Abril", "Maio", "Xuño", "Xullo", "Agosto", "Setembro", "Outubro", "Novembro", "Decembro"
],
AmPm : ["am","pm","AM","PM"],
S: function (j) {return j < 11 || j > 13 ? ['st', 'nd', 'rd', 'th'][Math.min((j - 1) % 10, 3)] : 'th'},
srcformat: 'Y-m-d',
newformat: 'd-m-Y',
parseRe : /[#%\\\/:_;.,\t\s-]/,
masks : {
ISO8601Long:"Y-m-d H:i:s",
ISO8601Short:"Y-m-d",
ShortDate: "n/j/Y",
LongDate: "l, F d, Y",
FullDateTime: "l, F d, Y g:i:s A",
MonthDay: "F d",
ShortTime: "g:i A",
LongTime: "g:i:s A",
SortableDateTime: "Y-m-d\\TH:i:s",
UniversalSortableDateTime: "Y-m-d H:i:sO",
YearMonth: "F, Y"
},
reformatAfterEdit : false,
userLocalTime : false
},
baseLinkUrl: '',
showAction: '',
target: '',
checkbox : {disabled:true},
idName : 'id'
}
});
})(jQuery);

View file

@ -0,0 +1,136 @@
;(function($){
/**
* jqGrid Hebrew Translation
* Shuki Shukrun shukrun.shuki@gmail.com
* http://trirand.com/blog/
* Dual licensed under the MIT and GPL licenses:
* http://www.opensource.org/licenses/mit-license.php
* http://www.gnu.org/licenses/gpl.html
**/
$.jgrid = $.jgrid || {};
$.extend($.jgrid,{
defaults : {
recordtext: "מציג {0} - {1} מתוך {2}",
emptyrecords: "אין רשומות להציג",
loadtext: "טוען...",
pgtext : "דף {0} מתוך {1}",
pgfirst : "First Page",
pglast : "Last Page",
pgnext : "Next Page",
pgprev : "Previous Page",
pgrecs : "Records per Page",
showhide: "Toggle Expand Collapse Grid"
},
search : {
caption: "מחפש...",
Find: "חפש",
Reset: "התחל",
odata: [{ oper:'eq', text:"שווה"},{ oper:'ne', text:"לא שווה"},{ oper:'lt', text:"קטן"},{ oper:'le', text:"קטן או שווה"},{ oper:'gt', text:"גדול"},{ oper:'ge', text:"גדול או שווה"},{ oper:'bw', text:"מתחיל ב"},{ oper:'bn', text:"לא מתחיל ב"},{ oper:'in', text:"נמצא ב"},{ oper:'ni', text:"לא נמצא ב"},{ oper:'ew', text:"מסתיים ב"},{ oper:'en', text:"לא מסתיים ב"},{ oper:'cn', text:"מכיל"},{ oper:'nc', text:"לא מכיל"},{ oper:'nu', text:'is null'},{ oper:'nn', text:'is not null'}],
groupOps: [ { op: "AND", text: "הכל" }, { op: "OR", text: "אחד מ" }],
operandTitle : "Click to select search operation.",
resetTitle : "Reset Search Value"
},
edit : {
addCaption: "הוסף רשומה",
editCaption: "ערוך רשומה",
bSubmit: "שלח",
bCancel: "בטל",
bClose: "סגור",
saveData: "נתונים השתנו! לשמור?",
bYes : "כן",
bNo : "לא",
bExit : "בטל",
msg: {
required:"שדה חובה",
number:"אנא, הכנס מספר תקין",
minValue:"ערך צריך להיות גדול או שווה ל ",
maxValue:"ערך צריך להיות קטן או שווה ל ",
email: "היא לא כתובת איימל תקינה",
integer: "אנא, הכנס מספר שלם",
date: "אנא, הכנס תאריך תקין",
url: "הכתובת אינה תקינה. דרושה תחילית ('http://' או 'https://')",
nodefined : " is not defined!",
novalue : " return value is required!",
customarray : "Custom function should return array!",
customfcheck : "Custom function should be present in case of custom checking!"
}
},
view : {
caption: "הצג רשומה",
bClose: "סגור"
},
del : {
caption: "מחק",
msg: "האם למחוק את הרשומה/ות המסומנות?",
bSubmit: "מחק",
bCancel: "בטל"
},
nav : {
edittext: "",
edittitle: "ערוך שורה מסומנת",
addtext:"",
addtitle: "הוסף שורה חדשה",
deltext: "",
deltitle: "מחק שורה מסומנת",
searchtext: "",
searchtitle: "חפש רשומות",
refreshtext: "",
refreshtitle: "טען גריד מחדש",
alertcap: "אזהרה",
alerttext: "אנא, בחר שורה",
viewtext: "",
viewtitle: "הצג שורה מסומנת"
},
col : {
caption: "הצג/הסתר עמודות",
bSubmit: "שלח",
bCancel: "בטל"
},
errors : {
errcap : "שגיאה",
nourl : "לא הוגדרה כתובת url",
norecords: "אין רשומות לעבד",
model : "אורך של colNames <> colModel!"
},
formatter : {
integer : {thousandsSeparator: " ", defaultValue: '0'},
number : {decimalSeparator:".", thousandsSeparator: " ", decimalPlaces: 2, defaultValue: '0.00'},
currency : {decimalSeparator:".", thousandsSeparator: " ", decimalPlaces: 2, prefix: "", suffix:"", defaultValue: '0.00'},
date : {
dayNames: [
"א", "ב", "ג", "ד", "ה", "ו", "ש",
"ראשון", "שני", "שלישי", "רביעי", "חמישי", "שישי", "שבת"
],
monthNames: [
"ינו", "פבר", "מרץ", "אפר", "מאי", "יונ", "יול", "אוג", "ספט", "אוק", "נוב", "דצמ",
"ינואר", "פברואר", "מרץ", "אפריל", "מאי", "יוני", "יולי", "אוגוסט", "ספטמבר", "אוקטובר", "נובמבר", "דצמבר"
],
AmPm : ["לפני הצהרים","אחר הצהרים","לפני הצהרים","אחר הצהרים"],
S: function (j) {return j < 11 || j > 13 ? ['', '', '', ''][Math.min((j - 1) % 10, 3)] : ''},
srcformat: 'Y-m-d',
newformat: 'd/m/Y',
parseRe : /[#%\\\/:_;.,\t\s-]/,
masks : {
ISO8601Long:"Y-m-d H:i:s",
ISO8601Short:"Y-m-d",
ShortDate: "n/j/Y",
LongDate: "l, F d, Y",
FullDateTime: "l, F d, Y g:i:s A",
MonthDay: "F d",
ShortTime: "g:i A",
LongTime: "g:i:s A",
SortableDateTime: "Y-m-d\\TH:i:s",
UniversalSortableDateTime: "Y-m-d H:i:sO",
YearMonth: "F, Y"
},
reformatAfterEdit : false,
userLocalTime : false
},
baseLinkUrl: '',
showAction: '',
target: '',
checkbox : {disabled:true},
idName : 'id'
}
});
})(jQuery);

View file

@ -0,0 +1,171 @@
;(function($){
/**
* jqGrid Croatian Translation
* Version 1.0.1 (developed for jQuery Grid 4.4)
* msajko@gmail.com
*
* Dual licensed under the MIT and GPL licenses:
* http://www.opensource.org/licenses/mit-license.php
* http://www.gnu.org/licenses/gpl.html
**/
$.jgrid = $.jgrid || {};
$.extend($.jgrid,{
defaults : {
recordtext: "Pregled {0} - {1} od {2}",
emptyrecords: "Nema zapisa",
loadtext: "Učitavam...",
pgtext : "Stranica {0} od {1}",
pgfirst : "First Page",
pglast : "Last Page",
pgnext : "Next Page",
pgprev : "Previous Page",
pgrecs : "Records per Page",
showhide: "Toggle Expand Collapse Grid"
},
search : {
caption: "Traži...",
Find: "Pretraživanje",
Reset: "Poništi",
odata: [{ oper:'eq', text:"jednak"},{ oper:'ne', text:"nije identičan"},{ oper:'lt', text:"manje"},{ oper:'le', text:"manje ili identično"},{ oper:'gt', text:"veće"},{ oper:'ge', text:"veće ili identično"},{ oper:'bw', text:"počinje sa"},{ oper:'bn', text:"ne počinje sa "},{ oper:'in', text:"je u"},{ oper:'ni', text:"nije u"},{ oper:'ew', text:"završava sa"},{ oper:'en', text:"ne završava sa"},{ oper:'cn', text:"sadrži"},{ oper:'nc', text:"ne sadrži"},{ oper:'nu', text:'is null'},{ oper:'nn', text:'is not null'}],
groupOps: [ { op: "I", text: "sve" }, { op: "ILI", text: "bilo koji" } ],
operandTitle : "Click to select search operation.",
resetTitle : "Reset Search Value"
},
edit : {
addCaption: "Dodaj zapis",
editCaption: "Promijeni zapis",
bSubmit: "Preuzmi",
bCancel: "Odustani",
bClose: "Zatvri",
saveData: "Podaci su promijenjeni! Preuzmi promijene?",
bYes : "Da",
bNo : "Ne",
bExit : "Odustani",
msg: {
required:"Polje je obavezno",
number:"Molim, unesite ispravan broj",
minValue:"Vrijednost mora biti veća ili identična ",
maxValue:"Vrijednost mora biti manja ili identična",
email: "neispravan e-mail",
integer: "Molim, unjeti ispravan cijeli broj (integer)",
date: "Molim, unjeti ispravan datum ",
url: "neispravan URL. Prefiks je obavezan ('http://' or 'https://')",
nodefined : " nije definiran!",
novalue : " zahtjevan podatak je obavezan!",
customarray : "Opcionalna funkcija trebala bi bili polje (array)!",
customfcheck : "Custom function should be present in case of custom checking!"
}
},
view : {
caption: "Otvori zapis",
bClose: "Zatvori"
},
del : {
caption: "Obriši",
msg: "Obriši označen zapis ili više njih?",
bSubmit: "Obriši",
bCancel: "Odustani"
},
nav : {
edittext: "",
edittitle: "Promijeni obilježeni red",
addtext: "",
addtitle: "Dodaj novi red",
deltext: "",
deltitle: "Obriši obilježeni red",
searchtext: "",
searchtitle: "Potraži zapise",
refreshtext: "",
refreshtitle: "Ponovo preuzmi podatke",
alertcap: "Upozorenje",
alerttext: "Molim, odaberi red",
viewtext: "",
viewtitle: "Pregled obilježenog reda"
},
col : {
caption: "Obilježi kolonu",
bSubmit: "Uredu",
bCancel: "Odustani"
},
errors : {
errcap : "Greška",
nourl : "Nedostaje URL",
norecords: "Bez zapisa za obradu",
model : "colNames i colModel imaju različitu duljinu!"
},
formatter : {
integer : {thousandsSeparator: ".", defaultValue: '0'},
number : {decimalSeparator:",", thousandsSeparator: ".", decimalPlaces: 2, defaultValue: '0,00'},
currency : {decimalSeparator:",", thousandsSeparator: ".", decimalPlaces: 2, prefix: "", suffix:"", defaultValue: '0,00'},
date : {
dayNames: [
"Ned", "Pon", "Uto", "Sri", "Čet", "Pet", "Sub",
"Nedjelja", "Ponedjeljak", "Utorak", "Srijeda", "Četvrtak", "Petak", "Subota"
],
monthNames: [
"Sij", "Velj", "Ožu", "Tra", "Svi", "Lip", "Srp", "Kol", "Ruj", "Lis", "Stu", "Pro",
"Siječanj", "Veljača", "Ožujak", "Travanj", "Svibanj", "Lipanj", "Srpanj", "Kolovoz", "Rujan", "Listopad", "Studeni", "Prosinac"
],
AmPm : ["am","pm","AM","PM"],
S: function (j) {return ''},
srcformat: 'Y-m-d',
newformat: 'd.m.Y.',
parseRe : /[#%\\\/:_;.,\t\s-]/,
masks : {
// see http://php.net/manual/en/function.date.php for PHP format used in jqGrid
// and see http://docs.jquery.com/UI/Datepicker/formatDate
// and https://github.com/jquery/globalize#dates for alternative formats used frequently
ISO8601Long: "Y-m-d H:i:s",
ISO8601Short: "Y-m-d",
// short date:
// d - Day of the month, 2 digits with leading zeros
// m - Numeric representation of a month, with leading zeros
// Y - A full numeric representation of a year, 4 digits
ShortDate: "d.m.Y.", // in jQuery UI Datepicker: "dd.mm.yy."
// long date:
// l - A full textual representation of the day of the week
// j - Day of the month without leading zeros
// F - A full textual representation of a month
// Y - A full numeric representation of a year, 4 digits
LongDate: "l, j. F Y", // in jQuery UI Datepicker: "dddd, d. MMMM yyyy"
// long date with long time:
// l - A full textual representation of the day of the week
// j - Day of the month without leading zeros
// F - A full textual representation of a month
// Y - A full numeric representation of a year, 4 digits
// H - 24-hour format of an hour with leading zeros
// i - Minutes with leading zeros
// s - Seconds, with leading zeros
FullDateTime: "l, j. F Y H:i:s", // in jQuery UI Datepicker: "dddd, d. MMMM yyyy HH:mm:ss"
// month day:
// d - Day of the month, 2 digits with leading zeros
// F - A full textual representation of a month
MonthDay: "d F", // in jQuery UI Datepicker: "dd MMMM"
// short time (without seconds)
// H - 24-hour format of an hour with leading zeros
// i - Minutes with leading zeros
ShortTime: "H:i", // in jQuery UI Datepicker: "HH:mm"
// long time (with seconds)
// H - 24-hour format of an hour with leading zeros
// i - Minutes with leading zeros
// s - Seconds, with leading zeros
LongTime: "H:i:s", // in jQuery UI Datepicker: "HH:mm:ss"
SortableDateTime: "Y-m-d\\TH:i:s",
UniversalSortableDateTime: "Y-m-d H:i:sO",
// month with year
// F - A full textual representation of a month
// Y - A full numeric representation of a year, 4 digits
YearMonth: "F Y" // in jQuery UI Datepicker: "MMMM yyyy"
},
reformatAfterEdit : false,
userLocalTime : false
},
baseLinkUrl: '',
showAction: '',
target: '',
checkbox : {disabled:true},
idName : 'id'
}
});
})(jQuery);

View file

@ -0,0 +1,171 @@
;(function($){
/**
* jqGrid Croatian Translation (charset windows-1250)
* Version 1.0.1 (developed for jQuery Grid 4.4)
* msajko@gmail.com
*
* Dual licensed under the MIT and GPL licenses:
* http://www.opensource.org/licenses/mit-license.php
* http://www.gnu.org/licenses/gpl.html
**/
$.jgrid = $.jgrid || {};
$.extend($.jgrid,{
defaults : {
recordtext: "Pregled {0} - {1} od {2}",
emptyrecords: "Nema zapisa",
loadtext: "U<>itavam...",
pgtext : "Stranica {0} od {1}",
pgfirst : "First Page",
pglast : "Last Page",
pgnext : "Next Page",
pgprev : "Previous Page",
pgrecs : "Records per Page",
showhide: "Toggle Expand Collapse Grid"
},
search : {
caption: "Tra<72>i...",
Find: "Pretra<72>ivanje",
Reset: "Poni<6E>ti",
odata : [{ oper:'eq', text:'jednak'}, { oper:'ne', text:'nije identi<74>an'}, { oper:'lt', text:'manje'}, { oper:'le', text:'manje ili identi<74>no'},{ oper:'gt', text:'ve<76>e'},{ oper:'ge', text:'ve<76>e ili identi<74>no'}, { oper:'bw', text:'po<70>inje sa'},{ oper:'bn', text:'ne po<70>inje sa '},{ oper:'in', text:'je u'},{ oper:'ni', text:'nije u'},{ oper:'ew', text:'zavr<76>ava sa'},{ oper:'en', text:'ne zavr<76>ava sa'},{ oper:'cn', text:'sadr<64>i'},{ oper:'nc', text:'ne sadr<64>i'},{ oper:'nu', text:'is null'},{ oper:'nn', text:'is not null'}],
groupOps: [ { op: "I", text: "sve" }, { op: "ILI", text: "bilo koji" } ],
operandTitle : "Click to select search operation.",
resetTitle : "Reset Search Value"
},
edit : {
addCaption: "Dodaj zapis",
editCaption: "Promijeni zapis",
bSubmit: "Preuzmi",
bCancel: "Odustani",
bClose: "Zatvri",
saveData: "Podaci su promijenjeni! Preuzmi promijene?",
bYes : "Da",
bNo : "Ne",
bExit : "Odustani",
msg: {
required:"Polje je obavezno",
number:"Molim, unesite ispravan broj",
minValue:"Vrijednost mora biti ve<76>a ili identi<74>na ",
maxValue:"Vrijednost mora biti manja ili identi<74>na",
email: "neispravan e-mail",
integer: "Molim, unjeti ispravan cijeli broj (integer)",
date: "Molim, unjeti ispravan datum ",
url: "neispravan URL. Prefiks je obavezan ('http://' or 'https://')",
nodefined : " nije definiran!",
novalue : " zahtjevan podatak je obavezan!",
customarray : "Opcionalna funkcija trebala bi bili polje (array)!",
customfcheck : "Custom function should be present in case of custom checking!"
}
},
view : {
caption: "Otvori zapis",
bClose: "Zatvori"
},
del : {
caption: "Obri<72>i",
msg: "Obri<72>i ozna<6E>en zapis ili vi<76>e njih?",
bSubmit: "Obri<72>i",
bCancel: "Odustani"
},
nav : {
edittext: "",
edittitle: "Promijeni obilje<6A>eni red",
addtext: "",
addtitle: "Dodaj novi red",
deltext: "",
deltitle: "Obri<72>i obilje<6A>eni red",
searchtext: "",
searchtitle: "Potra<72>i zapise",
refreshtext: "",
refreshtitle: "Ponovo preuzmi podatke",
alertcap: "Upozorenje",
alerttext: "Molim, odaberi red",
viewtext: "",
viewtitle: "Pregled obilje<6A>enog reda"
},
col : {
caption: "Obilje<6A>i kolonu",
bSubmit: "Uredu",
bCancel: "Odustani"
},
errors : {
errcap : "Gre<72>ka",
nourl : "Nedostaje URL",
norecords: "Bez zapisa za obradu",
model : "colNames i colModel imaju razli<6C>itu duljinu!"
},
formatter : {
integer : {thousandsSeparator: ".", defaultValue: '0'},
number : {decimalSeparator:",", thousandsSeparator: ".", decimalPlaces: 2, defaultValue: '0,00'},
currency : {decimalSeparator:",", thousandsSeparator: ".", decimalPlaces: 2, prefix: "", suffix:"", defaultValue: '0,00'},
date : {
dayNames: [
"Ned", "Pon", "Uto", "Sri", "<22>et", "Pet", "Sub",
"Nedjelja", "Ponedjeljak", "Utorak", "Srijeda", "<22>etvrtak", "Petak", "Subota"
],
monthNames: [
"Sij", "Velj", "O<>u", "Tra", "Svi", "Lip", "Srp", "Kol", "Ruj", "Lis", "Stu", "Pro",
"Sije<6A>anj", "Velja<6A>a", "O<>ujak", "Travanj", "Svibanj", "Lipanj", "Srpanj", "Kolovoz", "Rujan", "Listopad", "Studeni", "Prosinac"
],
AmPm : ["am","pm","AM","PM"],
S: function (j) {return ''},
srcformat: 'Y-m-d',
newformat: 'd.m.Y.',
parseRe : /[#%\\\/:_;.,\t\s-]/,
masks : {
// see http://php.net/manual/en/function.date.php for PHP format used in jqGrid
// and see http://docs.jquery.com/UI/Datepicker/formatDate
// and https://github.com/jquery/globalize#dates for alternative formats used frequently
ISO8601Long: "Y-m-d H:i:s",
ISO8601Short: "Y-m-d",
// short date:
// d - Day of the month, 2 digits with leading zeros
// m - Numeric representation of a month, with leading zeros
// Y - A full numeric representation of a year, 4 digits
ShortDate: "d.m.Y.", // in jQuery UI Datepicker: "dd.mm.yy."
// long date:
// l - A full textual representation of the day of the week
// j - Day of the month without leading zeros
// F - A full textual representation of a month
// Y - A full numeric representation of a year, 4 digits
LongDate: "l, j. F Y", // in jQuery UI Datepicker: "dddd, d. MMMM yyyy"
// long date with long time:
// l - A full textual representation of the day of the week
// j - Day of the month without leading zeros
// F - A full textual representation of a month
// Y - A full numeric representation of a year, 4 digits
// H - 24-hour format of an hour with leading zeros
// i - Minutes with leading zeros
// s - Seconds, with leading zeros
FullDateTime: "l, j. F Y H:i:s", // in jQuery UI Datepicker: "dddd, d. MMMM yyyy HH:mm:ss"
// month day:
// d - Day of the month, 2 digits with leading zeros
// F - A full textual representation of a month
MonthDay: "d F", // in jQuery UI Datepicker: "dd MMMM"
// short time (without seconds)
// H - 24-hour format of an hour with leading zeros
// i - Minutes with leading zeros
ShortTime: "H:i", // in jQuery UI Datepicker: "HH:mm"
// long time (with seconds)
// H - 24-hour format of an hour with leading zeros
// i - Minutes with leading zeros
// s - Seconds, with leading zeros
LongTime: "H:i:s", // in jQuery UI Datepicker: "HH:mm:ss"
SortableDateTime: "Y-m-d\\TH:i:s",
UniversalSortableDateTime: "Y-m-d H:i:sO",
// month with year
// F - A full textual representation of a month
// Y - A full numeric representation of a year, 4 digits
YearMonth: "F Y" // in jQuery UI Datepicker: "MMMM yyyy"
},
reformatAfterEdit : false,
userLocalTime : false
},
baseLinkUrl: '',
showAction: '',
target: '',
checkbox : {disabled:true},
idName : 'id'
}
});
})(jQuery);

View file

@ -0,0 +1,138 @@
;(function($){
/**
* jqGrid Hungarian Translation
* Őrszigety Ádám udx6bs@freemail.hu
* http://trirand.com/blog/
* Dual licensed under the MIT and GPL licenses:
* http://www.opensource.org/licenses/mit-license.php
* http://www.gnu.org/licenses/gpl.html
**/
$.jgrid = $.jgrid || {};
$.extend($.jgrid,{
defaults : {
recordtext: "Oldal {0} - {1} / {2}",
emptyrecords: "Nincs találat",
loadtext: "Betöltés...",
pgtext : "Oldal {0} / {1}",
pgfirst : "First Page",
pglast : "Last Page",
pgnext : "Next Page",
pgprev : "Previous Page",
pgrecs : "Records per Page",
showhide: "Toggle Expand Collapse Grid"
},
search : {
caption: "Keresés...",
Find: "Keres",
Reset: "Alapértelmezett",
odata: [{ oper:'eq', text:"egyenlő"},{ oper:'ne', text:"nem egyenlő"},{ oper:'lt', text:"kevesebb"},{ oper:'le', text:"kevesebb vagy egyenlő"},{ oper:'gt', text:"nagyobb"},{ oper:'ge', text:"nagyobb vagy egyenlő"},{ oper:'bw', text:"ezzel kezdődik"},{ oper:'bn', text:"nem ezzel kezdődik"},{ oper:'in', text:"tartalmaz"},{ oper:'ni', text:"nem tartalmaz"},{ oper:'ew', text:"végződik"},{ oper:'en', text:"nem végződik"},{ oper:'cn', text:"tartalmaz"},{ oper:'nc', text:"nem tartalmaz"},{ oper:'nu', text:'is null'},{ oper:'nn', text:'is not null'}],
groupOps: [ { op: "AND", text: "all" }, { op: "OR", text: "any" } ],
operandTitle : "Click to select search operation.",
resetTitle : "Reset Search Value"
},
edit : {
addCaption: "Új tétel",
editCaption: "Tétel szerkesztése",
bSubmit: "Mentés",
bCancel: "Mégse",
bClose: "Bezárás",
saveData: "A tétel megváltozott! Tétel mentése?",
bYes : "Igen",
bNo : "Nem",
bExit : "Mégse",
msg: {
required:"Kötelező mező",
number:"Kérjük, adjon meg egy helyes számot",
minValue:"Nagyobb vagy egyenlőnek kell lenni mint ",
maxValue:"Kisebb vagy egyenlőnek kell lennie mint",
email: "hibás emailcím",
integer: "Kérjük adjon meg egy helyes egész számot",
date: "Kérjük adjon meg egy helyes dátumot",
url: "nem helyes cím. Előtag kötelező ('http://' vagy 'https://')",
nodefined : " nem definiált!",
novalue : " visszatérési érték kötelező!!",
customarray : "Custom function should return array!",
customfcheck : "Custom function should be present in case of custom checking!"
}
},
view : {
caption: "Tétel megtekintése",
bClose: "Bezárás"
},
del : {
caption: "Törlés",
msg: "Kiválaztott tétel(ek) törlése?",
bSubmit: "Törlés",
bCancel: "Mégse"
},
nav : {
edittext: "",
edittitle: "Tétel szerkesztése",
addtext:"",
addtitle: "Új tétel hozzáadása",
deltext: "",
deltitle: "Tétel törlése",
searchtext: "",
searchtitle: "Keresés",
refreshtext: "",
refreshtitle: "Frissítés",
alertcap: "Figyelmeztetés",
alerttext: "Kérem válasszon tételt.",
viewtext: "",
viewtitle: "Tétel megtekintése"
},
col : {
caption: "Oszlopok kiválasztása",
bSubmit: "Ok",
bCancel: "Mégse"
},
errors : {
errcap : "Hiba",
nourl : "Nincs URL beállítva",
norecords: "Nincs feldolgozásra váró tétel",
model : "colNames és colModel hossza nem egyenlő!"
},
formatter : {
integer : {thousandsSeparator: " ", defaultValue: '0'},
number : {decimalSeparator:",", thousandsSeparator: " ", decimalPlaces: 2, defaultValue: '0,00'},
currency : {decimalSeparator:",", thousandsSeparator: " ", decimalPlaces: 2, prefix: "", suffix:"", defaultValue: '0,00'},
date : {
dayNames: [
"Va", "Hé", "Ke", "Sze", "Csü", "Pé", "Szo",
"Vasárnap", "Hétfő", "Kedd", "Szerda", "Csütörtök", "Péntek", "Szombat"
],
monthNames: [
"Jan", "Feb", "Már", "Ápr", "Máj", "Jún", "Júl", "Aug", "Szep", "Okt", "Nov", "Dec",
"Január", "Február", "Március", "Áprili", "Május", "Június", "Július", "Augusztus", "Szeptember", "Október", "November", "December"
],
AmPm : ["de","du","DE","DU"],
S: function (j) {return '.-ik';},
srcformat: 'Y-m-d',
newformat: 'Y/m/d',
parseRe : /[#%\\\/:_;.,\t\s-]/,
masks : {
ISO8601Long:"Y-m-d H:i:s",
ISO8601Short:"Y-m-d",
ShortDate: "Y/j/n",
LongDate: "Y. F hó d., l",
FullDateTime: "l, F d, Y g:i:s A",
MonthDay: "F d",
ShortTime: "a g:i",
LongTime: "a g:i:s",
SortableDateTime: "Y-m-d\\TH:i:s",
UniversalSortableDateTime: "Y-m-d H:i:sO",
YearMonth: "Y, F"
},
reformatAfterEdit : false,
userLocalTime : false
},
baseLinkUrl: '',
showAction: '',
target: '',
checkbox : {disabled:true},
idName : 'id'
}
});
})(jQuery);

View file

@ -0,0 +1,177 @@
;(function($){
/**
* jqGrid English Translation
* Tony Tomov tony@trirand.com
* http://trirand.com/blog/
* Dual licensed under the MIT and GPL licenses:
* http://www.opensource.org/licenses/mit-license.php
* http://www.gnu.org/licenses/gpl.html
**/
$.jgrid = $.jgrid || {};
$.extend($.jgrid,{
defaults : {
recordtext: "Data {0} - {1} dari {2}",
emptyrecords: "Tidak ada data",
loadtext: "Memuat...",
pgtext : "Halaman {0} dari {1}",
pgfirst : "First Page",
pglast : "Last Page",
pgnext : "Next Page",
pgprev : "Previous Page",
pgrecs : "Records per Page",
showhide: "Toggle Expand Collapse Grid"
},
search : {
caption: "Pencarian",
Find: "Cari !",
Reset: "Segarkan",
odata: [{ oper:'eq', text:"sama dengan"},{ oper:'ne', text:"tidak sama dengan"},{ oper:'lt', text:"kurang dari"},{ oper:'le', text:"kurang dari atau sama dengan"},{ oper:'gt', text:"lebih besar"},{ oper:'ge', text:"lebih besar atau sama dengan"},{ oper:'bw', text:"dimulai dengan"},{ oper:'bn', text:"tidak dimulai dengan"},{ oper:'in', text:"di dalam"},{ oper:'ni', text:"tidak di dalam"},{ oper:'ew', text:"diakhiri dengan"},{ oper:'en', text:"tidak diakhiri dengan"},{ oper:'cn', text:"mengandung"},{ oper:'nc', text:"tidak mengandung"},{ oper:'nu', text:'is null'},{ oper:'nn', text:'is not null'}],
groupOps: [ { op: "AND", text: "all" }, { op: "OR", text: "any" } ],
operandTitle : "Click to select search operation.",
resetTitle : "Reset Search Value"
},
edit : {
addCaption: "Tambah Data",
editCaption: "Sunting Data",
bSubmit: "Submit",
bCancel: "Tutup",
bClose: "Tutup",
saveData: "Data telah berubah! Simpan perubahan?",
bYes : "Ya",
bNo : "Tidak",
bExit : "Tutup",
msg: {
required:"kolom wajib diisi",
number:"hanya nomer yang diperbolehkan",
minValue:"kolom harus lebih besar dari atau sama dengan",
maxValue:"kolom harus lebih kecil atau sama dengan",
email: "alamat e-mail tidak valid",
integer: "hanya nilai integer yang diperbolehkan",
date: "nilai tanggal tidak valid",
url: "Bukan URL yang valid. Harap gunakan ('http://' or 'https://')",
nodefined : " belum didefinisikan!",
novalue : " return value is required!",
customarray : "Custom function should return array!",
customfcheck : "Custom function should be present in case of custom checking!"
}
},
view : {
caption: "Menampilkan data",
bClose: "Tutup"
},
del : {
caption: "Hapus",
msg: "Hapus data terpilih?",
bSubmit: "Hapus",
bCancel: "Batalkan"
},
nav : {
edittext: "",
edittitle: "Sunting data terpilih",
addtext:"",
addtitle: "Tambah baris baru",
deltext: "",
deltitle: "Hapus baris terpilih",
searchtext: "",
searchtitle: "Temukan data",
refreshtext: "",
refreshtitle: "Segarkan Grid",
alertcap: "Warning",
alerttext: "Harap pilih baris",
viewtext: "",
viewtitle: "Tampilkan baris terpilih"
},
col : {
caption: "Pilih Kolom",
bSubmit: "Ok",
bCancel: "Batal"
},
errors : {
errcap : "Error",
nourl : "Tidak ada url yang diset",
norecords: "Tidak ada data untuk diproses",
model : "Lebar dari colNames <> colModel!"
},
formatter : {
integer : {thousandsSeparator: ".", defaultValue: '0'},
number : {decimalSeparator:",", thousandsSeparator: ".", decimalPlaces: 2, defaultValue: '0'},
currency : {decimalSeparator:",", thousandsSeparator: ".", decimalPlaces: 2, prefix: "Rp. ", suffix:"", defaultValue: '0'},
date : {
dayNames: [
"Ming", "Sen", "Sel", "Rab", "Kam", "Jum", "Sab",
"Minggu", "Senin", "Selasa", "Rabu", "Kamis", "Jumat", "Sabtu"
],
monthNames: [
"Jan", "Feb", "Mar", "Apr", "Mei", "Jun", "Jul", "Agu", "Sep", "Okt", "Nov", "Des",
"Januari", "Februari", "Maret", "April", "Mei", "Juni", "Juli", "Agustus", "September", "Oktober", "November", "Desember"
],
AmPm : ["am","pm","AM","PM"],
S: function (j) {return j < 11 || j > 13 ? ['st', 'nd', 'rd', 'th'][Math.min((j - 1) % 10, 3)] : 'th';},
srcformat: 'Y-m-d',
newformat: 'n/j/Y',
parseRe : /[#%\\\/:_;.,\t\s-]/,
masks : {
// see http://php.net/manual/en/function.date.php for PHP format used in jqGrid
// and see http://docs.jquery.com/UI/Datepicker/formatDate
// and https://github.com/jquery/globalize#dates for alternative formats used frequently
// one can find on https://github.com/jquery/globalize/tree/master/lib/cultures many
// information about date, time, numbers and currency formats used in different countries
// one should just convert the information in PHP format
ISO8601Long:"Y-m-d H:i:s",
ISO8601Short:"Y-m-d",
// short date:
// n - Numeric representation of a month, without leading zeros
// j - Day of the month without leading zeros
// Y - A full numeric representation of a year, 4 digits
// example: 3/1/2012 which means 1 March 2012
ShortDate: "n/j/Y", // in jQuery UI Datepicker: "M/d/yyyy"
// long date:
// l - A full textual representation of the day of the week
// F - A full textual representation of a month
// d - Day of the month, 2 digits with leading zeros
// Y - A full numeric representation of a year, 4 digits
LongDate: "l, F d, Y", // in jQuery UI Datepicker: "dddd, MMMM dd, yyyy"
// long date with long time:
// l - A full textual representation of the day of the week
// F - A full textual representation of a month
// d - Day of the month, 2 digits with leading zeros
// Y - A full numeric representation of a year, 4 digits
// g - 12-hour format of an hour without leading zeros
// i - Minutes with leading zeros
// s - Seconds, with leading zeros
// A - Uppercase Ante meridiem and Post meridiem (AM or PM)
FullDateTime: "l, F d, Y g:i:s A", // in jQuery UI Datepicker: "dddd, MMMM dd, yyyy h:mm:ss tt"
// month day:
// F - A full textual representation of a month
// d - Day of the month, 2 digits with leading zeros
MonthDay: "F d", // in jQuery UI Datepicker: "MMMM dd"
// short time (without seconds)
// g - 12-hour format of an hour without leading zeros
// i - Minutes with leading zeros
// A - Uppercase Ante meridiem and Post meridiem (AM or PM)
ShortTime: "g:i A", // in jQuery UI Datepicker: "h:mm tt"
// long time (with seconds)
// g - 12-hour format of an hour without leading zeros
// i - Minutes with leading zeros
// s - Seconds, with leading zeros
// A - Uppercase Ante meridiem and Post meridiem (AM or PM)
LongTime: "g:i:s A", // in jQuery UI Datepicker: "h:mm:ss tt"
SortableDateTime: "Y-m-d\\TH:i:s",
UniversalSortableDateTime: "Y-m-d H:i:sO",
// month with year
// Y - A full numeric representation of a year, 4 digits
// F - A full textual representation of a month
YearMonth: "F, Y" // in jQuery UI Datepicker: "MMMM, yyyy"
},
reformatAfterEdit : false,
userLocalTime : false
},
baseLinkUrl: '',
showAction: '',
target: '',
checkbox : {disabled:true},
idName : 'id'
}
});
})(jQuery);

View file

@ -0,0 +1,135 @@
;(function($){
/**
* jqGrid Icelandic Translation
* jtm@hi.is Univercity of Iceland
* Dual licensed under the MIT and GPL licenses:
* http://www.opensource.org/licenses/mit-license.php
* http://www.gnu.org/licenses/gpl.html
**/
$.jgrid = $.jgrid || {};
$.extend($.jgrid,{
defaults : {
recordtext: "Skoða {0} - {1} af {2}",
emptyrecords: "Engar færslur",
loadtext: "Hleður...",
pgtext : "Síða {0} af {1}",
pgfirst : "First Page",
pglast : "Last Page",
pgnext : "Next Page",
pgprev : "Previous Page",
pgrecs : "Records per Page",
showhide: "Toggle Expand Collapse Grid"
},
search : {
caption: "Leita...",
Find: "Leita",
Reset: "Endursetja",
odata: [{ oper:'eq', text:"sama og"},{ oper:'ne', text:"ekki sama og"},{ oper:'lt', text:"minna en"},{ oper:'le', text:"minna eða jafnt og"},{ oper:'gt', text:"stærra en"},{ oper:'ge', text:"stærra eða jafnt og"},{ oper:'bw', text:"byrjar á"},{ oper:'bn', text:"byrjar ekki á"},{ oper:'in', text:"er í"},{ oper:'ni', text:"er ekki í"},{ oper:'ew', text:"endar á"},{ oper:'en', text:"endar ekki á"},{ oper:'cn', text:"inniheldur"},{ oper:'nc', text:"inniheldur ekki"},{ oper:'nu', text:'is null'},{ oper:'nn', text:'is not null'}],
groupOps: [ { op: "AND", text: "allt" }, { op: "OR", text: "eða" } ],
operandTitle : "Click to select search operation.",
resetTitle : "Reset Search Value"
},
edit : {
addCaption: "Bæta við færslu",
editCaption: "Breyta færslu",
bSubmit: "Vista",
bCancel: "Hætta við",
bClose: "Loka",
saveData: "Gögn hafa breyst! Vista breytingar?",
bYes : "Já",
bNo : "Nei",
bExit : "Hætta við",
msg: {
required:"Reitur er nauðsynlegur",
number:"Vinsamlega settu inn tölu",
minValue:"gildi verður að vera meira en eða jafnt og ",
maxValue:"gildi verður að vera minna en eða jafnt og ",
email: "er ekki löglegt email",
integer: "Vinsamlega settu inn tölu",
date: "Vinsamlega setti inn dagsetningu",
url: "er ekki löglegt URL. Vantar ('http://' eða 'https://')",
nodefined : " er ekki skilgreint!",
novalue : " skilagildi nauðsynlegt!",
customarray : "Fall skal skila fylki!",
customfcheck : "Fall skal vera skilgreint!"
}
},
view : {
caption: "Skoða færslu",
bClose: "Loka"
},
del : {
caption: "Eyða",
msg: "Eyða völdum færslum ?",
bSubmit: "Eyða",
bCancel: "Hætta við"
},
nav : {
edittext: " ",
edittitle: "Breyta færslu",
addtext:" ",
addtitle: "Ný færsla",
deltext: " ",
deltitle: "Eyða færslu",
searchtext: " ",
searchtitle: "Leita",
refreshtext: "",
refreshtitle: "Endurhlaða",
alertcap: "Viðvörun",
alerttext: "Vinsamlega veldu færslu",
viewtext: "",
viewtitle: "Skoða valda færslu"
},
col : {
caption: "Sýna / fela dálka",
bSubmit: "Vista",
bCancel: "Hætta við"
},
errors : {
errcap : "Villa",
nourl : "Vantar slóð",
norecords: "Engar færslur valdar",
model : "Lengd colNames <> colModel!"
},
formatter : {
integer : {thousandsSeparator: " ", defaultValue: '0'},
number : {decimalSeparator:".", thousandsSeparator: " ", decimalPlaces: 2, defaultValue: '0.00'},
currency : {decimalSeparator:".", thousandsSeparator: " ", decimalPlaces: 2, prefix: "", suffix:"", defaultValue: '0.00'},
date : {
dayNames: [
"Sun", "Mán", "Þri", "Mið", "Fim", "Fös", "Lau",
"Sunnudagur", "Mánudagur", "Þriðjudagur", "Miðvikudagur", "Fimmtudagur", "Föstudagur", "Laugardagur"
],
monthNames: [
"Jan", "Feb", "Mar", "Apr", "Maí", "Jún", "Júl", "Ágú", "Sep", "Oct", "Nóv", "Des",
"Janúar", "Febrúar", "Mars", "Apríl", "Maí", "Júný", "Júlý", "Ágúst", "September", "Október", "Nóvember", "Desember"
],
AmPm : ["am","pm","AM","PM"],
S: function (j) {return j < 11 || j > 13 ? ['st', 'nd', 'rd', 'th'][Math.min((j - 1) % 10, 3)] : 'th'},
srcformat: 'Y-m-d',
newformat: 'd/m/Y',
parseRe : /[#%\\\/:_;.,\t\s-]/,
masks : {
ISO8601Long:"Y-m-d H:i:s",
ISO8601Short:"Y-m-d",
ShortDate: "n/j/Y",
LongDate: "l, F d, Y",
FullDateTime: "l, F d, Y g:i:s A",
MonthDay: "F d",
ShortTime: "g:i A",
LongTime: "g:i:s A",
SortableDateTime: "Y-m-d\\TH:i:s",
UniversalSortableDateTime: "Y-m-d H:i:sO",
YearMonth: "F, Y"
},
reformatAfterEdit : false,
userLocalTime : false
},
baseLinkUrl: '',
showAction: '',
target: '',
checkbox : {disabled:true},
idName : 'id'
}
});
})(jQuery);

View file

@ -0,0 +1 @@
(function(a){a.jgrid = a.jgrid || {};a.extend(a.jgrid,{ defaults:{recordtext:"Visualizzati {0} - {1} di {2}",emptyrecords:"Nessun record da visualizzare",loadtext:"Caricamento...",pgtext:"Pagina {0} di {1}",pgfirst : "First Page",pglast : "Last Page",pgnext : "Next Page",pgprev : "Previous Page",pgrecs : "Records per Page",showhide: "Toggle Expand Collapse Grid"},search:{caption:"Ricerca...",Find:"Cerca",Reset:"Pulisci", odata: [{ oper:'eq', text:"uguale"},{ oper:'ne', text:"diverso"},{ oper:'lt', text:"minore"},{ oper:'le', text:"minore o uguale"},{ oper:'gt', text:"maggiore"},{ oper:'ge', text:"maggiore o uguale"},{ oper:'bw', text:"inizia con"},{ oper:'bn', text:"non inizia con"},{ oper:'in', text:"in"},{ oper:'ni', text:"non in"},{ oper:'ew', text:"termina con"},{ oper:'en', text:"non termina con"},{ oper:'cn', text:"contiene"},{ oper:'nc', text:"non contiene"},{ oper:'nu', text:'is null'},{ oper:'nn', text:'is not null'}],groupOps:[{op:"AND",text:"tutto"},{op:"OR",text:"almeno uno"}], operandTitle : "Click to select search operation.",resetTitle : "Reset Search Value"},edit:{addCaption:"Aggiungi Record",editCaption:"Modifica Record",bSubmit:"Invia",bCancel:"Chiudi",bClose:"Chiudi",saveData:"Alcuni dati modificati! Salvare i cambiamenti?",bYes:"Si",bNo:"No",bExit:"Esci",msg:{required:"Campo richiesto",number:"Per favore, inserisci un valore valido",minValue:"il valore deve essere maggiore o uguale a ",maxValue:"il valore deve essere minore o uguale a",email:"e-mail non corretta",integer:"Per favore, inserisci un numero intero valido",date:"Per favore, inserisci una data valida",url:"URL non valido. Prefisso richiesto ('http://' or 'https://')",nodefined:" non <20> definito!",novalue:" valore di ritorno richiesto!",customarray:"La function custon deve tornare un array!",customfcheck:"La function custom deve esistere per il custom checking!"}},view:{caption:"Visualizzazione Record",bClose:"Chiudi"},del:{caption:"Cancella",msg:"Cancellare record selezionato/i?",bSubmit:"Cancella",bCancel:"Annulla"},nav:{edittext:" ",edittitle:"Modifica record selezionato",addtext:" ",addtitle:"Aggiungi nuovo record",deltext:" ",deltitle:"Cancella record selezionato",searchtext:" ",searchtitle:"Ricerca record",refreshtext:"",refreshtitle:"Aggiorna griglia",alertcap:"Attenzione",alerttext:"Per favore, seleziona un record",viewtext:"",viewtitle:"Visualizza riga selezionata"},col:{caption:"Mostra/Nascondi Colonne",bSubmit:"Invia",bCancel:"Annulla"},errors:{errcap:"Errore",nourl:"Url non settata",norecords:"Nessun record da elaborare",model:"Lunghezza di colNames &lt;&gt; colModel!"},formatter:{integer:{thousandsSeparator:" ",defaultValue:"0"},number:{decimalSeparator:",",thousandsSeparator:" ",decimalPlaces:2,defaultValue:"0,00"},currency:{decimalSeparator:",",thousandsSeparator:" ",decimalPlaces:2,prefix:"",suffix:"",defaultValue:"0,00"},date:{dayNames:["Dom","Lun","Mar","Mer","Gio","Ven","Sab","Domenica","Luned<65>","Marted<65>","Mercoled<65>","Gioved<65>","Venerd<72>","Sabato"],monthNames:["Gen","Feb","Mar","Apr","Mag","Gui","Lug","Ago","Set","Ott","Nov","Dic","Genneio","Febbraio","Marzo","Aprile","Maggio","Giugno","Luglio","Agosto","Settembre","Ottobre","Movembre","Dicembre"],AmPm:["am","pm","AM","PM"],S:function(b){return b<11||b>13?["st","nd","rd","th"][Math.min((b-1)%10,3)]:"th"},srcformat:"Y-m-d",newformat:"d/m/Y",parseRe : /[#%\\\/:_;.,\t\s-]/,masks:{ISO8601Long:"Y-m-d H:i:s",ISO8601Short:"Y-m-d",ShortDate:"n/j/Y",LongDate:"l, F d, Y",FullDateTime:"l, F d, Y g:i:s A",MonthDay:"F d",ShortTime:"g:i A",LongTime:"g:i:s A",SortableDateTime:"Y-m-d\\TH:i:s",UniversalSortableDateTime:"Y-m-d H:i:sO",YearMonth:"F, Y"},reformatAfterEdit:false,userLocalTime : false},baseLinkUrl:"",showAction:"",target:"",checkbox:{disabled:true},idName:"id"}});})(jQuery);

View file

@ -0,0 +1,165 @@
;(function($){
/**
* jqGrid Japanese Translation
* OKADA Yoshitada okada.dev@sth.jp
* http://trirand.com/blog/
* Dual licensed under the MIT and GPL licenses:
* http://www.opensource.org/licenses/mit-license.php
* http://www.gnu.org/licenses/gpl.html
**/
$.jgrid = $.jgrid || {};
$.extend($.jgrid,{
defaults : {
recordtext: "{2} \u4EF6\u4E2D {0} - {1} \u3092\u8868\u793A ",
emptyrecords: "\u8868\u793A\u3059\u308B\u30EC\u30B3\u30FC\u30C9\u304C\u3042\u308A\u307E\u305B\u3093",
loadtext: "\u8aad\u307f\u8fbc\u307f\u4e2d...",
pgtext : "{1} \u30DA\u30FC\u30B8\u4E2D {0} \u30DA\u30FC\u30B8\u76EE ",
pgfirst : "First Page",
pglast : "Last Page",
pgnext : "Next Page",
pgprev : "Previous Page",
pgrecs : "Records per Page",
showhide: "Toggle Expand Collapse Grid"
},
search : {
caption: "\u691c\u7d22...",
Find: "\u691c\u7d22",
Reset: "\u30ea\u30bb\u30c3\u30c8",
odata: [{ oper:'eq', text:"\u6B21\u306B\u7B49\u3057\u3044"}, { oper:'ne', text:"\u6B21\u306B\u7B49\u3057\u304F\u306A\u3044"},
{ oper:'lt', text:"\u6B21\u3088\u308A\u5C0F\u3055\u3044"}, { oper:'le', text:"\u6B21\u306B\u7B49\u3057\u3044\u304B\u5C0F\u3055\u3044"},
{ oper:'gt', text:"\u6B21\u3088\u308A\u5927\u304D\u3044"}, { oper:'ge', text:"\u6B21\u306B\u7B49\u3057\u3044\u304B\u5927\u304D\u3044"},
{ oper:'bw', text:"\u6B21\u3067\u59CB\u307E\u308B"}, { oper:'bn', text:"\u6B21\u3067\u59CB\u307E\u3089\u306A\u3044"},
{ oper:'in', text:"\u6B21\u306B\u542B\u307E\u308C\u308B"}, { oper:'ni', text:"\u6B21\u306B\u542B\u307E\u308C\u306A\u3044"},
{ oper:'ew', text:"\u6B21\u3067\u7D42\u308F\u308B"}, { oper:'en', text:"\u6B21\u3067\u7D42\u308F\u3089\u306A\u3044"},
{ oper:'cn', text:"\u6B21\u3092\u542B\u3080"}, { oper:'nc', text:"\u6B21\u3092\u542B\u307E\u306A\u3044"},
{ oper:'nu', text:'is null'},{ oper:'nn', text:'is not null'}],
groupOps: [{
op: "AND",
text: "\u3059\u3079\u3066\u306E"
},
{
op: "OR",
text: "\u3044\u305A\u308C\u304B\u306E"
}],
operandTitle : "Click to select search operation.",
resetTitle : "Reset Search Value"
},
edit : {
addCaption: "\u30ec\u30b3\u30fc\u30c9\u8ffd\u52a0",
editCaption: "\u30ec\u30b3\u30fc\u30c9\u7de8\u96c6",
bSubmit: "\u9001\u4fe1",
bCancel: "\u30ad\u30e3\u30f3\u30bb\u30eb",
bClose: "\u9589\u3058\u308b",
saveData: "\u30C7\u30FC\u30BF\u304C\u5909\u66F4\u3055\u308C\u3066\u3044\u307E\u3059\u3002\u4FDD\u5B58\u3057\u307E\u3059\u304B\uFF1F",
bYes: "\u306F\u3044",
bNo: "\u3044\u3044\u3048",
bExit: "\u30AD\u30E3\u30F3\u30BB\u30EB",
msg: {
required:"\u3053\u306e\u9805\u76ee\u306f\u5fc5\u9808\u3067\u3059\u3002",
number:"\u6b63\u3057\u3044\u6570\u5024\u3092\u5165\u529b\u3057\u3066\u4e0b\u3055\u3044\u3002",
minValue:"\u6b21\u306e\u5024\u4ee5\u4e0a\u3067\u5165\u529b\u3057\u3066\u4e0b\u3055\u3044\u3002",
maxValue:"\u6b21\u306e\u5024\u4ee5\u4e0b\u3067\u5165\u529b\u3057\u3066\u4e0b\u3055\u3044\u3002",
email: "e-mail\u304c\u6b63\u3057\u304f\u3042\u308a\u307e\u305b\u3093\u3002",
integer: "\u6b63\u3057\u3044\u6574\u6570\u5024\u3092\u5165\u529b\u3057\u3066\u4e0b\u3055\u3044\u3002",
date: "\u6b63\u3057\u3044\u5024\u3092\u5165\u529b\u3057\u3066\u4e0b\u3055\u3044\u3002",
url: "\u306F\u6709\u52B9\u306AURL\u3067\u306F\u3042\u308A\u307E\u305B\u3093\u3002\20\u30D7\u30EC\u30D5\u30A3\u30C3\u30AF\u30B9\u304C\u5FC5\u8981\u3067\u3059\u3002 ('http://' \u307E\u305F\u306F 'https://')",
nodefined: " \u304C\u5B9A\u7FA9\u3055\u308C\u3066\u3044\u307E\u305B\u3093",
novalue: " \u623B\u308A\u5024\u304C\u5FC5\u8981\u3067\u3059",
customarray: "\u30AB\u30B9\u30BF\u30E0\u95A2\u6570\u306F\u914D\u5217\u3092\u8FD4\u3059\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059",
customfcheck: "\u30AB\u30B9\u30BF\u30E0\u691C\u8A3C\u306B\u306F\u30AB\u30B9\u30BF\u30E0\u95A2\u6570\u304C\u5FC5\u8981\u3067\u3059"
}
},
view : {
caption: "\u30EC\u30B3\u30FC\u30C9\u3092\u8868\u793A",
bClose: "\u9589\u3058\u308B"
},
del : {
caption: "\u524a\u9664",
msg: "\u9078\u629e\u3057\u305f\u30ec\u30b3\u30fc\u30c9\u3092\u524a\u9664\u3057\u307e\u3059\u304b\uff1f",
bSubmit: "\u524a\u9664",
bCancel: "\u30ad\u30e3\u30f3\u30bb\u30eb"
},
nav : {
edittext: " ",
edittitle: "\u9078\u629e\u3057\u305f\u884c\u3092\u7de8\u96c6",
addtext:" ",
addtitle: "\u884c\u3092\u65b0\u898f\u8ffd\u52a0",
deltext: " ",
deltitle: "\u9078\u629e\u3057\u305f\u884c\u3092\u524a\u9664",
searchtext: " ",
searchtitle: "\u30ec\u30b3\u30fc\u30c9\u691c\u7d22",
refreshtext: "",
refreshtitle: "\u30b0\u30ea\u30c3\u30c9\u3092\u30ea\u30ed\u30fc\u30c9",
alertcap: "\u8b66\u544a",
alerttext: "\u884c\u3092\u9078\u629e\u3057\u3066\u4e0b\u3055\u3044\u3002",
viewtext: "",
viewtitle: "\u9078\u629E\u3057\u305F\u884C\u3092\u8868\u793A"
},
col : {
caption: "\u5217\u3092\u8868\u793a\uff0f\u96a0\u3059",
bSubmit: "\u9001\u4fe1",
bCancel: "\u30ad\u30e3\u30f3\u30bb\u30eb"
},
errors : {
errcap : "\u30a8\u30e9\u30fc",
nourl : "URL\u304c\u8a2d\u5b9a\u3055\u308c\u3066\u3044\u307e\u305b\u3093\u3002",
norecords: "\u51e6\u7406\u5bfe\u8c61\u306e\u30ec\u30b3\u30fc\u30c9\u304c\u3042\u308a\u307e\u305b\u3093\u3002",
model : "colNames\u306e\u9577\u3055\u304ccolModel\u3068\u4e00\u81f4\u3057\u307e\u305b\u3093\u3002"
},
formatter : {
integer: {
thousandsSeparator: ",",
defaultValue: '0'
},
number: {
decimalSeparator: ".",
thousandsSeparator: ",",
decimalPlaces: 2,
defaultValue: '0.00'
},
currency: {
decimalSeparator: ".",
thousandsSeparator: ",",
decimalPlaces: 0,
prefix: "",
suffix: "",
defaultValue: '0'
},
date : {
dayNames: [
"\u65e5", "\u6708", "\u706b", "\u6c34", "\u6728", "\u91d1", "\u571f",
"\u65e5", "\u6708", "\u706b", "\u6c34", "\u6728", "\u91d1", "\u571f"
],
monthNames: [
"1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12",
"1\u6708", "2\u6708", "3\u6708", "4\u6708", "5\u6708", "6\u6708", "7\u6708", "8\u6708", "9\u6708", "10\u6708", "11\u6708", "12\u6708"
],
AmPm : ["am","pm","AM","PM"],
S: function (j) { return "\u756a\u76ee"; },
srcformat: 'Y-m-d',
newformat: 'd/m/Y',
parseRe : /[#%\\\/:_;.,\t\s-]/,
masks : {
ISO8601Long:"Y-m-d H:i:s",
ISO8601Short:"Y-m-d",
ShortDate: "n/j/Y",
LongDate: "l, F d, Y",
FullDateTime: "l, F d, Y g:i:s A",
MonthDay: "F d",
ShortTime: "g:i A",
LongTime: "g:i:s A",
SortableDateTime: "Y-m-d\\TH:i:s",
UniversalSortableDateTime: "Y-m-d H:i:sO",
YearMonth: "F, Y"
},
reformatAfterEdit : false,
userLocalTime : false
},
baseLinkUrl: '',
showAction: '',
target: '',
checkbox : {disabled:true},
idName : 'id'
}
});
})(jQuery);

View file

@ -0,0 +1,137 @@
;(function($){
/**
* jqGrid English Translation
* Tony Tomov tony@trirand.com
* http://trirand.com/blog/
* Dual licensed under the MIT and GPL licenses:
* http://www.opensource.org/licenses/mit-license.php
* http://www.gnu.org/licenses/gpl.html
**/
$.jgrid = $.jgrid || {};
$.extend($.jgrid,{
defaults : {
recordtext: "보기 {0} - {1} / {2}",
emptyrecords: "표시할 행이 없습니다",
loadtext: "조회중...",
pgtext : "페이지 {0} / {1}",
pgfirst : "First Page",
pglast : "Last Page",
pgnext : "Next Page",
pgprev : "Previous Page",
pgrecs : "Records per Page",
showhide: "Toggle Expand Collapse Grid"
},
search : {
caption: "검색...",
Find: "찾기",
Reset: "초기화",
odata: [{ oper:'eq', text:"같다"},{ oper:'ne', text:"같지 않다"},{ oper:'lt', text:"작다"},{ oper:'le', text:"작거나 같다"},{ oper:'gt', text:"크다"},{ oper:'ge', text:"크거나 같다"},{ oper:'bw', text:"로 시작한다"},{ oper:'bn', text:"로 시작하지 않는다"},{ oper:'in', text:"내에 있다"},{ oper:'ni', text:"내에 있지 않다"},{ oper:'ew', text:"로 끝난다"},{ oper:'en', text:"로 끝나지 않는다"},{ oper:'cn', text:"내에 존재한다"},{ oper:'nc', text:"내에 존재하지 않는다"},{ oper:'nu', text:'is null'},{ oper:'nn', text:'is not null'}],
groupOps: [ { op: "AND", text: "전부" }, { op: "OR", text: "임의" } ],
operandTitle : "Click to select search operation.",
resetTitle : "Reset Search Value"
},
edit : {
addCaption: "행 추가",
editCaption: "행 수정",
bSubmit: "전송",
bCancel: "취소",
bClose: "닫기",
saveData: "자료가 변경되었습니다! 저장하시겠습니까?",
bYes : "예",
bNo : "아니오",
bExit : "취소",
msg: {
required:"필수항목입니다",
number:"유효한 번호를 입력해 주세요",
minValue:"입력값은 크거나 같아야 합니다",
maxValue:"입력값은 작거나 같아야 합니다",
email: "유효하지 않은 이메일주소입니다",
integer: "유효한 숫자를 입력하세요",
date: "유효한 날짜를 입력하세요",
url: "은 유효하지 않은 URL입니다. 문장앞에 다음단어가 필요합니다('http://' or 'https://')",
nodefined : " 은 정의도지 않았습니다!",
novalue : " 반환값이 필요합니다!",
customarray : "사용자정의 함수는 배열을 반환해야 합니다!",
customfcheck : "Custom function should be present in case of custom checking!"
}
},
view : {
caption: "행 조회",
bClose: "닫기"
},
del : {
caption: "삭제",
msg: "선택된 행을 삭제하시겠습니까?",
bSubmit: "삭제",
bCancel: "취소"
},
nav : {
edittext: "",
edittitle: "선택된 행 편집",
addtext:"",
addtitle: "행 삽입",
deltext: "",
deltitle: "선택된 행 삭제",
searchtext: "",
searchtitle: "행 찾기",
refreshtext: "",
refreshtitle: "그리드 갱신",
alertcap: "경고",
alerttext: "행을 선택하세요",
viewtext: "",
viewtitle: "선택된 행 조회"
},
col : {
caption: "열을 선택하세요",
bSubmit: "확인",
bCancel: "취소"
},
errors : {
errcap : "오류",
nourl : "설정된 url이 없습니다",
norecords: "처리할 행이 없습니다",
model : "colNames의 길이가 colModel과 일치하지 않습니다!"
},
formatter : {
integer : {thousandsSeparator: ",", defaultValue: '0'},
number : {decimalSeparator:".", thousandsSeparator: ",", decimalPlaces: 2, defaultValue: '0.00'},
currency : {decimalSeparator:".", thousandsSeparator: ",", decimalPlaces: 2, prefix: "", suffix:"", defaultValue: '0.00'},
date : {
dayNames: [
"Sun", "Mon", "Tue", "Wed", "Thr", "Fri", "Sat",
"일", "월", "화", "수", "목", "금", "토"
],
monthNames: [
"Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec",
"1월", "2월", "3월", "4월", "5월", "6월", "7월", "8월", "9월", "10월", "11월", "12월"
],
AmPm : ["am","pm","AM","PM"],
S: function (j) {return j < 11 || j > 13 ? ['st', 'nd', 'rd', 'th'][Math.min((j - 1) % 10, 3)] : 'th'},
srcformat: 'Y-m-d',
newformat: 'm-d-Y',
parseRe : /[#%\\\/:_;.,\t\s-]/,
masks : {
ISO8601Long:"Y-m-d H:i:s",
ISO8601Short:"Y-m-d",
ShortDate: "Y/j/n",
LongDate: "l, F d, Y",
FullDateTime: "l, F d, Y g:i:s A",
MonthDay: "F d",
ShortTime: "g:i A",
LongTime: "g:i:s A",
SortableDateTime: "Y-m-d\\TH:i:s",
UniversalSortableDateTime: "Y-m-d H:i:sO",
YearMonth: "F, Y"
},
reformatAfterEdit : false,
userLocalTime : false
},
baseLinkUrl: '',
showAction: '',
target: '',
checkbox : {disabled:true},
idName : 'id'
}
});
})(jQuery);

View file

@ -0,0 +1,137 @@
;(function($){
/**
* jqGrid Lithuanian Translation
* aur1mas aur1mas@devnet.lt
* http://aur1mas.devnet.lt
* Dual licensed under the MIT and GPL licenses:
* http://www.opensource.org/licenses/mit-license.php
* http://www.gnu.org/licenses/gpl.html
**/
$.jgrid = $.jgrid || {};
$.extend($.jgrid,{
defaults : {
recordtext: "Peržiūrima {0} - {1} iš {2}",
emptyrecords: "Įrašų nėra",
loadtext: "Kraunama...",
pgtext : "Puslapis {0} iš {1}",
pgfirst : "First Page",
pglast : "Last Page",
pgnext : "Next Page",
pgprev : "Previous Page",
pgrecs : "Records per Page",
showhide: "Toggle Expand Collapse Grid"
},
search : {
caption: "Paieška...",
Find: "Ieškoti",
Reset: "Atstatyti",
odata: [{ oper:'eq', text:"lygu"},{ oper:'ne', text:"nelygu"},{ oper:'lt', text:"mažiau"},{ oper:'le', text:"mažiau arba lygu"},{ oper:'gt', text:"daugiau"},{ oper:'ge', text:"daugiau arba lygu"},{ oper:'bw', text:"prasideda"},{ oper:'bn', text:"neprasideda"},{ oper:'in', text:"reikšmė yra"},{ oper:'ni', text:"reikšmės nėra"},{ oper:'ew', text:"baigiasi"},{ oper:'en', text:"nesibaigia"},{ oper:'cn', text:"yra sudarytas"},{ oper:'nc', text:"nėra sudarytas"},{ oper:'nu', text:'is null'},{ oper:'nn', text:'is not null'}],
groupOps: [ { op: "AND", text: "visi" }, { op: "OR", text: "bet kuris" } ],
operandTitle : "Click to select search operation.",
resetTitle : "Reset Search Value"
},
edit : {
addCaption: "Sukurti įrašą",
editCaption: "Redaguoti įrašą",
bSubmit: "Išsaugoti",
bCancel: "Atšaukti",
bClose: "Uždaryti",
saveData: "Duomenys buvo pakeisti! Išsaugoti pakeitimus?",
bYes : "Taip",
bNo : "Ne",
bExit : "Atšaukti",
msg: {
required:"Privalomas laukas",
number:"Įveskite tinkamą numerį",
minValue:"reikšmė turi būti didesnė arba lygi ",
maxValue:"reikšmė turi būti mažesnė arba lygi",
email: "neteisingas el. pašto adresas",
integer: "Įveskite teisingą sveikąjį skaičių",
date: "Įveskite teisingą datą",
url: "blogas adresas. Nepamirškite pridėti ('http://' arba 'https://')",
nodefined : " nėra apibrėžta!",
novalue : " turi būti gražinama kokia nors reikšmė!",
customarray : "Custom f-ja turi grąžinti masyvą!",
customfcheck : "Custom f-ja tūrėtų būti sukurta, prieš bandant ją naudoti!"
}
},
view : {
caption: "Peržiūrėti įrašus",
bClose: "Uždaryti"
},
del : {
caption: "Ištrinti",
msg: "Ištrinti pažymėtus įrašus(-ą)?",
bSubmit: "Ištrinti",
bCancel: "Atšaukti"
},
nav : {
edittext: "",
edittitle: "Redaguoti pažymėtą eilutę",
addtext:"",
addtitle: "Pridėti naują eilutę",
deltext: "",
deltitle: "Ištrinti pažymėtą eilutę",
searchtext: "",
searchtitle: "Rasti įrašus",
refreshtext: "",
refreshtitle: "Perkrauti lentelę",
alertcap: "Įspėjimas",
alerttext: "Pasirinkite eilutę",
viewtext: "",
viewtitle: "Peržiūrėti pasirinktą eilutę"
},
col : {
caption: "Pasirinkti stulpelius",
bSubmit: "Gerai",
bCancel: "Atšaukti"
},
errors : {
errcap : "Klaida",
nourl : "Url reikšmė turi būti perduota",
norecords: "Nėra įrašų, kuriuos būtų galima apdoroti",
model : "colNames skaičius <> colModel skaičiui!"
},
formatter : {
integer : {thousandsSeparator: "", defaultValue: '0'},
number : {decimalSeparator:",", thousandsSeparator: "", decimalPlaces: 2, defaultValue: '0.00'},
currency : {decimalSeparator:",", thousandsSeparator: "", decimalPlaces: 2, prefix: "", suffix:"", defaultValue: '0.00'},
date : {
dayNames: [
"Sek", "Pir", "Ant", "Tre", "Ket", "Pen", "Šeš",
"Sekmadienis", "Pirmadienis", "Antradienis", "Trečiadienis", "Ketvirtadienis", "Penktadienis", "Šeštadienis"
],
monthNames: [
"Sau", "Vas", "Kov", "Bal", "Geg", "Bir", "Lie", "Rugj", "Rugs", "Spa", "Lap", "Gru",
"Sausis", "Vasaris", "Kovas", "Balandis", "Gegužė", "Birželis", "Liepa", "Rugpjūtis", "Rugsėjis", "Spalis", "Lapkritis", "Gruodis"
],
AmPm : ["am","pm","AM","PM"],
S: function (j) {return j < 11 || j > 13 ? ['st', 'nd', 'rd', 'th'][Math.min((j - 1) % 10, 3)] : 'th'},
srcformat: 'Y-m-d',
newformat: 'd/m/Y',
parseRe : /[#%\\\/:_;.,\t\s-]/,
masks : {
ISO8601Long:"Y-m-d H:i:s",
ISO8601Short:"Y-m-d",
ShortDate: "n/j/Y",
LongDate: "l, F d, Y",
FullDateTime: "l, F d, Y g:i:s A",
MonthDay: "F d",
ShortTime: "g:i A",
LongTime: "g:i:s A",
SortableDateTime: "Y-m-d\\TH:i:s",
UniversalSortableDateTime: "Y-m-d H:i:sO",
YearMonth: "F, Y"
},
reformatAfterEdit : false,
userLocalTime : false
},
baseLinkUrl: '',
showAction: '',
target: '',
checkbox : {disabled:true},
idName : 'id'
}
});
})(jQuery);

View file

@ -0,0 +1,137 @@
;(function($){
/**
* jqGrid Montenegrian Translation
* Bild Studio info@bild-studio.net
* http://www.bild-studio.com
* Dual licensed under the MIT and GPL licenses:
* http://www.opensource.org/licenses/mit-license.php
* http://www.gnu.org/licenses/gpl.html
**/
$.jgrid = $.jgrid || {};
$.extend($.jgrid,{
defaults : {
recordtext: "Pregled {0} - {1} od {2}",
emptyrecords: "Ne postoji nijedan zapis",
loadtext: "Učitivanje...",
pgtext : "Strana {0} od {1}",
pgfirst : "First Page",
pglast : "Last Page",
pgnext : "Next Page",
pgprev : "Previous Page",
pgrecs : "Records per Page",
showhide: "Toggle Expand Collapse Grid"
},
search : {
caption: "Traženje...",
Find: "Traži",
Reset: "Resetuj",
odata: [{ oper:'eq', text:"jednako"},{ oper:'ne', text:"nije jednako"},{ oper:'lt', text:"manje"},{ oper:'le', text:"manje ili jednako"},{ oper:'gt', text:"veće"},{ oper:'ge', text:"veće ili jednako"},{ oper:'bw', text:"počinje sa"},{ oper:'bn', text:"ne počinje sa"},{ oper:'in', text:"je u"},{ oper:'ni', text:"nije u"},{ oper:'ew', text:"završava sa"},{ oper:'en', text:"ne završava sa"},{ oper:'cn', text:"sadrži"},{ oper:'nc', text:"ne sadrži"},{ oper:'nu', text:'is null'},{ oper:'nn', text:'is not null'}],
groupOps: [ { op: "AND", text: "sva" }, { op: "OR", text: "bilo koje" } ],
operandTitle : "Click to select search operation.",
resetTitle : "Reset Search Value"
},
edit : {
addCaption: "Dodaj zapis",
editCaption: "Izmjeni zapis",
bSubmit: "Pošalji",
bCancel: "Odustani",
bClose: "Zatvori",
saveData: "Podatak je izmjenjen! Sačuvaj izmjene?",
bYes : "Da",
bNo : "Ne",
bExit : "Odustani",
msg: {
required:"Polje je obavezno",
number:"Unesite ispravan broj",
minValue:"vrijednost mora biti veća od ili jednaka sa ",
maxValue:"vrijednost mora biti manja ili jednaka sa",
email: "nije ispravna email adresa, nije valjda da ne umiješ ukucati mail!?",
integer: "Ne zajebaji se unesi cjelobrojnu vrijednost ",
date: "Unesite ispravan datum",
url: "nije ispravan URL. Potreban je prefiks ('http://' or 'https://')",
nodefined : " nije definisan!",
novalue : " zahtjevana je povratna vrijednost!",
customarray : "Prilagođena funkcija treba da vrati niz!",
customfcheck : "Prilagođena funkcija treba da bude prisutana u slučaju prilagođene provjere!"
}
},
view : {
caption: "Pogledaj zapis",
bClose: "Zatvori"
},
del : {
caption: "Izbrisi",
msg: "Izbrisi izabran(e) zapise(e)?",
bSubmit: "Izbriši",
bCancel: "Odbaci"
},
nav : {
edittext: "",
edittitle: "Izmjeni izabrani red",
addtext:"",
addtitle: "Dodaj novi red",
deltext: "",
deltitle: "Izbriši izabran red",
searchtext: "",
searchtitle: "Nađi zapise",
refreshtext: "",
refreshtitle: "Ponovo učitaj podatke",
alertcap: "Upozorenje",
alerttext: "Izaberite red",
viewtext: "",
viewtitle: "Pogledaj izabrani red"
},
col : {
caption: "Izaberi kolone",
bSubmit: "OK",
bCancel: "Odbaci"
},
errors : {
errcap : "Greška",
nourl : "Nije postavljen URL",
norecords: "Nema zapisa za obradu",
model : "Dužina modela colNames <> colModel!"
},
formatter : {
integer : {thousandsSeparator: " ", defaultValue: '0'},
number : {decimalSeparator:".", thousandsSeparator: " ", decimalPlaces: 2, defaultValue: '0.00'},
currency : {decimalSeparator:".", thousandsSeparator: " ", decimalPlaces: 2, prefix: "", suffix:"", defaultValue: '0.00'},
date : {
dayNames: [
"Ned", "Pon", "Uto", "Sre", "Čet", "Pet", "Sub",
"Nedelja", "Ponedeljak", "Utorak", "Srijeda", "Četvrtak", "Petak", "Subota"
],
monthNames: [
"Jan", "Feb", "Mar", "Apr", "Maj", "Jun", "Jul", "Avg", "Sep", "Okt", "Nov", "Dec",
"Januar", "Februar", "Mart", "April", "Maj", "Jun", "Jul", "Avgust", "Septembar", "Oktobar", "Novembar", "Decembar"
],
AmPm : ["am","pm","AM","PM"],
S: function (j) {return j < 11 || j > 13 ? ['st', 'nd', 'rd', 'th'][Math.min((j - 1) % 10, 3)] : 'th'},
srcformat: 'Y-m-d',
newformat: 'd/m/Y',
parseRe : /[#%\\\/:_;.,\t\s-]/,
masks : {
ISO8601Long:"Y-m-d H:i:s",
ISO8601Short:"Y-m-d",
ShortDate: "n/j/Y",
LongDate: "l, F d, Y",
FullDateTime: "l, F d, Y g:i:s A",
MonthDay: "F d",
ShortTime: "g:i A",
LongTime: "g:i:s A",
SortableDateTime: "Y-m-d\\TH:i:s",
UniversalSortableDateTime: "Y-m-d H:i:sO",
YearMonth: "F, Y"
},
reformatAfterEdit : false,
userLocalTime : false
},
baseLinkUrl: '',
showAction: '',
target: '',
checkbox : {disabled:true},
idName : 'id'
}
});
})(jQuery);

View file

@ -0,0 +1,157 @@
(function(a) {
a.jgrid = a.jgrid || {};
a.extend(a.jgrid,{
defaults:
{
recordtext: "regels {0} - {1} van {2}",
emptyrecords: "Geen data gevonden.",
loadtext: "laden...",
pgtext: "pagina {0} van {1}",
pgfirst : "First Page",
pglast : "Last Page",
pgnext : "Next Page",
pgprev : "Previous Page",
pgrecs : "Records per Page",
showhide: "Toggle Expand Collapse Grid"
},
search:
{
caption: "Zoeken...",
Find: "Zoek",
Reset: "Herstellen",
odata: [{ oper:'eq', text:"gelijk aan"},{ oper:'ne', text:"niet gelijk aan"},{ oper:'lt', text:"kleiner dan"},{ oper:'le', text:"kleiner dan of gelijk aan"},{ oper:'gt', text:"groter dan"},{ oper:'ge', text:"groter dan of gelijk aan"},{ oper:'bw', text:"begint met"},{ oper:'bn', text:"begint niet met"},{ oper:'in', text:"is in"},{ oper:'ni', text:"is niet in"},{ oper:'ew', text:"eindigd met"},{ oper:'en', text:"eindigd niet met"},{ oper:'cn', text:"bevat"},{ oper:'nc', text:"bevat niet"},{ oper:'nu', text:'is null'},{ oper:'nn', text:'is not null'}],
groupOps: [{ op: "AND", text: "alle" }, { op: "OR", text: "een van de"}],
operandTitle : "Click to select search operation.",
resetTitle : "Reset Search Value"
},
edit:
{
addCaption: "Nieuw",
editCaption: "Bewerken",
bSubmit: "Opslaan",
bCancel: "Annuleren",
bClose: "Sluiten",
saveData: "Er is data aangepast! Wijzigingen opslaan?",
bYes: "Ja",
bNo: "Nee",
bExit: "Sluiten",
msg:
{
required: "Veld is verplicht",
number: "Voer a.u.b. geldig nummer in",
minValue: "Waarde moet groter of gelijk zijn aan ",
maxValue: "Waarde moet kleiner of gelijks zijn aan",
email: "is geen geldig e-mailadres",
integer: "Voer a.u.b. een geldig getal in",
date: "Voer a.u.b. een geldige waarde in",
url: "is geen geldige URL. Prefix is verplicht ('http://' or 'https://')",
nodefined : " is not defined!",
novalue : " return value is required!",
customarray : "Custom function should return array!",
customfcheck : "Custom function should be present in case of custom checking!"
}
},
view:
{
caption: "Tonen",
bClose: "Sluiten"
},
del:
{
caption: "Verwijderen",
msg: "Verwijder geselecteerde regel(s)?",
bSubmit: "Verwijderen",
bCancel: "Annuleren"
},
nav:
{
edittext: "",
edittitle: "Bewerken",
addtext: "",
addtitle: "Nieuw",
deltext: "",
deltitle: "Verwijderen",
searchtext: "",
searchtitle: "Zoeken",
refreshtext: "",
refreshtitle: "Vernieuwen",
alertcap: "Waarschuwing",
alerttext: "Selecteer a.u.b. een regel",
viewtext: "",
viewtitle: "Openen"
},
col:
{
caption: "Tonen/verbergen kolommen",
bSubmit: "OK",
bCancel: "Annuleren"
},
errors:
{
errcap: "Fout",
nourl: "Er is geen URL gedefinieerd",
norecords: "Geen data om te verwerken",
model: "Lengte van 'colNames' is niet gelijk aan 'colModel'!"
},
formatter:
{
integer:
{
thousandsSeparator: ".",
defaultValue: "0"
},
number:
{
decimalSeparator: ",",
thousandsSeparator: ".",
decimalPlaces: 2,
defaultValue: "0.00"
},
currency:
{
decimalSeparator: ",",
thousandsSeparator: ".",
decimalPlaces: 2,
prefix: "EUR ",
suffix: "",
defaultValue: "0.00"
},
date:
{
dayNames: ["Zo", "Ma", "Di", "Wo", "Do", "Vr", "Za", "Zondag", "Maandag", "Dinsdag", "Woensdag", "Donderdag", "Vrijdag", "Zaterdag"],
monthNames: ["Jan", "Feb", "Maa", "Apr", "Mei", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec", "Januari", "Februari", "Maart", "April", "Mei", "Juni", "Juli", "Augustus", "September", "October", "November", "December"],
AmPm: ["am", "pm", "AM", "PM"],
S: function(b) {
return b < 11 || b > 13 ? ["st", "nd", "rd", "th"][Math.min((b - 1) % 10, 3)] : "th"
},
srcformat: "Y-m-d",
newformat: "d/m/Y",
parseRe : /[#%\\\/:_;.,\t\s-]/,
masks:
{
ISO8601Long: "Y-m-d H:i:s",
ISO8601Short: "Y-m-d",
ShortDate: "n/j/Y",
LongDate: "l, F d, Y",
FullDateTime: "l d F Y G:i:s",
MonthDay: "d F",
ShortTime: "G:i",
LongTime: "G:i:s",
SortableDateTime: "Y-m-d\\TH:i:s",
UniversalSortableDateTime: "Y-m-d H:i:sO",
YearMonth: "F, Y"
},
reformatAfterEdit: false,
userLocalTime : false
},
baseLinkUrl: "",
showAction: "",
target: "",
checkbox:
{
disabled: true
},
idName: "id"
}
});
})(jQuery);

View file

@ -0,0 +1 @@
(function(a){a.jgrid= a.jgrid || {};a.jgrid.defaults={recordtext:"Rad {0} - {1}, totalt {2}",loadtext:"Laster...",pgtext:"Side {0} av {1}",pgfirst : "First Page",pglast : "Last Page",pgnext : "Next Page",pgprev : "Previous Page",pgrecs : "Records per Page",showhide: "Toggle Expand Collapse Grid"};a.jgrid.search={caption:"S<>k...",Find:"Finn",Reset:"Nullstill",odata:[{oper:'eq', text:"lik"},{oper:'ne', text:"forskjellig fra"},{oper:'lt', text:"mindre enn"},{oper:'le', text:"mindre eller lik"},{oper:'gt', text:"st<73>rre enn"},{oper:'ge', text:" st<73>rre eller lik"},{oper:'bw', text:"starter med"},{oper:'ew', text:"slutter med"},{oper:'cn', text:"inneholder"},{ oper:'nu', text:'is null'},{ oper:'nn', text:'is not null'}],operandTitle : "Click to select search operation.",resetTitle : "Reset Search Value"};a.jgrid.edit={addCaption:"Ny rad",editCaption:"Rediger",bSubmit:"Send",bCancel:"Avbryt",bClose:"Lukk",processData:"Laster...",msg:{required:"Felt er obligatorisk",number:"Legg inn et gyldig tall",minValue:"verdi m<> v<>re st<73>rre enn eller lik",maxValue:"verdi m<> v<>re mindre enn eller lik",email:"er ikke en gyldig e-post adresse",integer:"Legg inn et gyldig heltall",date:"Legg inn en gyldig dato",url:"er ikke en gyldig URL. Prefiks p<>krevd ('http://' eller 'https://')",nodefined:" er ikke definert!",novalue:" returverdi er p<>krevd!",customarray:"Tilpasset funksjon m<> returnere en tabell!",customfcheck:"Tilpasset funksjon m<> eksistere!"}};a.jgrid.view={caption:"<22>pne post",bClose:"Lukk"};a.jgrid.del={caption:"Slett",msg:"Slett valgte rad(er)?",bSubmit:"Slett",bCancel:"Avbryt",processData:"Behandler..."};a.jgrid.nav={edittext:" ",edittitle:"Rediger valgte rad(er)",addtext:" ",addtitle:"Legg til ny rad",deltext:" ",deltitle:"Slett valgte rad(er)",searchtext:" ",searchtitle:"S<>k",refreshtext:"",refreshtitle:"Oppdater tabell",alertcap:"Advarsel",alerttext:"Velg rad",viewtext:" ",viewtitle:"<22>pne valgt rad"};a.jgrid.col={caption:"Vis/skjul kolonner",bSubmit:"Utf<74>r",bCancel:"Avbryt"};a.jgrid.errors={errcap:"Feil",nourl:"Ingen url er satt",norecords:"Ingen poster <20> behandle",model:"colNames og colModel har forskjellig lengde!"};a.jgrid.formatter={integer:{thousandsSeparator:" ",defaultValue:0},number:{decimalSeparator:",",thousandsSeparator:" ",decimalPlaces:2,defaulValue:0},currency:{decimalSeparator:",",thousandsSeparator:" ",decimalPlaces:2,prefix:"",suffix:"",defaulValue:0},date:{dayNames:["s<>.","ma.","ti.","on.","to.","fr.","l<>.","S<>ndag","Mandag","Tirsdag","Onsdag","Torsdag","Fredag","L<>rdag"],monthNames:["jan.","feb.","mars","april","mai","juni","juli","aug.","sep.","okt.","nov.","des.","januar","februar","mars","april","mai","juni","juli","august","september","oktober","november","desember"],AmPm:["","","",""],S:function(b){return"."},srcformat:"Y-m-d H:i:s",newformat:"Y-m-d H:i:s",parseRe : /[#%\\\/:_;.,\t\s-]/,masks:{ISO8601Long:"Y-m-d H:i:s",ISO8601Short:"Y-m-d",ShortDate:"j.n.Y",LongDate:"l j. F Y",FullDateTime:"l j. F Y kl. G.i.s",MonthDay:"j. F",ShortTime:"H:i",LongTime:"H:i:s",SortableDateTime:"Y-m-d\\TH:i:s",UniversalSortableDateTime:"Y-m-d H:i:sO",YearMonth:"F Y"},reformatAfterEdit:false,userLocalTime : false},baseLinkUrl:"",showAction:"show",addParam:"",checkbox:{disabled:true}}})(jQuery);

View file

@ -0,0 +1,141 @@
;(function($){
/**
* jqGrid Polish Translation
* Łukasz Schab lukasz@freetree.pl
* http://FreeTree.pl
*
* Updated names, abbreviations, currency and date/time formats for Polish norms (also corresponding with CLDR v21.0.1 --> http://cldr.unicode.org/index)
* Tomasz Pęczek tpeczek@gmail.com
* http://tpeczek.blogspot.com; http://tpeczek.codeplex.com
*
* Dual licensed under the MIT and GPL licenses:
* http://www.opensource.org/licenses/mit-license.php
* http://www.gnu.org/licenses/gpl.html
**/
$.jgrid = $.jgrid || {};
$.extend($.jgrid,{
defaults : {
recordtext: "Pokaż {0} - {1} z {2}",
emptyrecords: "Brak rekordów do pokazania",
loadtext: "Ładowanie...",
pgtext : "Strona {0} z {1}",
pgfirst : "First Page",
pglast : "Last Page",
pgnext : "Next Page",
pgprev : "Previous Page",
pgrecs : "Records per Page",
showhide: "Toggle Expand Collapse Grid"
},
search : {
caption: "Wyszukiwanie...",
Find: "Szukaj",
Reset: "Czyść",
odata: [{ oper:'eq', text:"dokładnie"},{ oper:'ne', text:"różne od"},{ oper:'lt', text:"mniejsze od"},{ oper:'le', text:"mniejsze lub równe"},{ oper:'gt', text:"większe od"},{ oper:'ge', text:"większe lub równe"},{ oper:'bw', text:"zaczyna się od"},{ oper:'bn', text:"nie zaczyna się od"},{ oper:'in', text:"jest w"},{ oper:'ni', text:"nie jest w"},{ oper:'ew', text:"kończy się na"},{ oper:'en', text:"nie kończy się na"},{ oper:'cn', text:"zawiera"},{ oper:'nc', text:"nie zawiera"},{ oper:'nu', text:'is null'},{ oper:'nn', text:'is not null'}],
groupOps: [ { op: "AND", text: "oraz" }, { op: "OR", text: "lub" } ],
operandTitle : "Click to select search operation.",
resetTitle : "Reset Search Value"
},
edit : {
addCaption: "Dodaj rekord",
editCaption: "Edytuj rekord",
bSubmit: "Zapisz",
bCancel: "Anuluj",
bClose: "Zamknij",
saveData: "Dane zostały zmienione! Zapisać zmiany?",
bYes: "Tak",
bNo: "Nie",
bExit: "Anuluj",
msg: {
required: "Pole jest wymagane",
number: "Proszę wpisać poprawną liczbę",
minValue: "wartość musi być większa lub równa od",
maxValue: "wartość musi być mniejsza lub równa od",
email: "nie jest poprawnym adresem e-mail",
integer: "Proszę wpisać poprawną liczbę",
date: "Proszę podaj poprawną datę",
url: "jest niewłaściwym adresem URL. Pamiętaj o prefiksie ('http://' lub 'https://')",
nodefined: " niezdefiniowane!",
novalue: " wymagana jest wartość zwracana!",
customarray: "Funkcja niestandardowa powinna zwracać tablicę!",
customfcheck: "Funkcja niestandardowa powinna być obecna w przypadku niestandardowego sprawdzania!"
}
},
view : {
caption: "Pokaż rekord",
bClose: "Zamknij"
},
del : {
caption: "Usuń",
msg: "Czy usunąć wybrany rekord(y)?",
bSubmit: "Usuń",
bCancel: "Anuluj"
},
nav : {
edittext: "",
edittitle: "Edytuj wybrany wiersz",
addtext: "",
addtitle: "Dodaj nowy wiersz",
deltext: "",
deltitle: "Usuń wybrany wiersz",
searchtext: "",
searchtitle: "Wyszukaj rekord",
refreshtext: "",
refreshtitle: "Przeładuj",
alertcap: "Uwaga",
alerttext: "Proszę wybrać wiersz",
viewtext: "",
viewtitle: "Pokaż wybrany wiersz"
},
col : {
caption: "Pokaż/Ukryj kolumny",
bSubmit: "Zatwierdź",
bCancel: "Anuluj"
},
errors : {
errcap: "Błąd",
nourl: "Brak adresu url",
norecords: "Brak danych",
model : "Długość colNames <> colModel!"
},
formatter : {
integer : {thousandsSeparator: " ", defaultValue: '0'},
number : {decimalSeparator:",", thousandsSeparator: " ", decimalPlaces: 2, defaultValue: '0,00'},
currency : {decimalSeparator:",", thousandsSeparator: " ", decimalPlaces: 2, prefix: "", suffix:" zł", defaultValue: '0,00'},
date : {
dayNames: [
"niedz.", "pon.", "wt.", "śr.", "czw.", "pt.", "sob.",
"niedziela", "poniedziałek", "wtorek", "środa", "czwartek", "piątek", "sobota"
],
monthNames: [
"sty", "lut", "mar", "kwi", "maj", "cze", "lip", "sie", "wrz", "paź", "lis", "gru",
"styczeń", "luty", "marzec", "kwiecień", "maj", "czerwiec", "lipiec", "sierpień", "wrzesień", "październik", "listopad", "grudzień"
],
AmPm : ["","","",""],
S: function (j) {return '';},
srcformat: 'Y-m-d',
newformat: 'd.m.Y',
parseRe : /[#%\\\/:_;.,\t\s-]/,
masks : {
ISO8601Long: "Y-m-d H:i:s",
ISO8601Short: "Y-m-d",
ShortDate: "d.m.y",
LongDate: "l, j F Y",
FullDateTime: "l, j F Y H:i:s",
MonthDay: "j F",
ShortTime: "H:i",
LongTime: "H:i:s",
SortableDateTime: "Y-m-d\\TH:i:s",
UniversalSortableDateTime: "Y-m-d H:i:sO",
YearMonth: "F Y"
},
reformatAfterEdit : false,
userLocalTime : false
},
baseLinkUrl: '',
showAction: '',
target: '',
checkbox : {disabled:true},
idName : 'id'
}
});
})(jQuery);

View file

@ -0,0 +1,144 @@
;(function($){
/**
* jqGrid Brazilian-Portuguese Translation
* Sergio Righi sergio.righi@gmail.com
* http://curve.com.br
*
* Updated by Jonnas Fonini
* http://fonini.net
*
*
* Updated by Fabio Ferreira da Silva fabio_ferreiradasilva@yahoo.com.br
*
*
* Dual licensed under the MIT and GPL licenses:
* http://www.opensource.org/licenses/mit-license.php
* http://www.gnu.org/licenses/gpl.html
**/
$.jgrid = $.jgrid || {};
$.extend($.jgrid,{
defaults : {
recordtext: "Ver {0} - {1} de {2}",
emptyrecords: "Nenhum registro para visualizar",
loadtext: "Carregando...",
pgtext : "Página {0} de {1}",
pgfirst : "First Page",
pglast : "Last Page",
pgnext : "Next Page",
pgprev : "Previous Page",
pgrecs : "Records per Page",
showhide: "Toggle Expand Collapse Grid"
},
search : {
caption: "Procurar...",
Find: "Procurar",
Reset: "Resetar",
odata: [{ oper:'eq', text:"igual"},{ oper:'ne', text:"diferente"},{ oper:'lt', text:"menor"},{ oper:'le', text:"menor ou igual"},{ oper:'gt', text:"maior"},{ oper:'ge', text:"maior ou igual"},{ oper:'bw', text:"inicia com"},{ oper:'bn', text:"não inicia com"},{ oper:'in', text:"está em"},{ oper:'ni', text:"não está em"},{ oper:'ew', text:"termina com"},{ oper:'en', text:"não termina com"},{ oper:'cn', text:"contém"},{ oper:'nc', text:"não contém"},{ oper:'nu', text:"nulo"},{ oper:'nn', text:"não nulo"}],
groupOps: [ { op: "AND", text: "todos" },{ op: "OR", text: "qualquer um" } ],
operandTitle : "Click to select search operation.",
resetTitle : "Reset Search Value"
},
edit : {
addCaption: "Incluir",
editCaption: "Alterar",
bSubmit: "Enviar",
bCancel: "Cancelar",
bClose: "Fechar",
saveData: "Os dados foram alterados! Salvar alterações?",
bYes : "Sim",
bNo : "Não",
bExit : "Cancelar",
msg: {
required:"Campo obrigatório",
number:"Por favor, informe um número válido",
minValue:"valor deve ser igual ou maior que ",
maxValue:"valor deve ser menor ou igual a",
email: "este e-mail não é válido",
integer: "Por favor, informe um valor inteiro",
date: "Por favor, informe uma data válida",
url: "não é uma URL válida. Prefixo obrigatório ('http://' or 'https://')",
nodefined : " não está definido!",
novalue : " um valor de retorno é obrigatório!",
customarray : "Função customizada deve retornar um array!",
customfcheck : "Função customizada deve estar presente em caso de validação customizada!"
}
},
view : {
caption: "Ver Registro",
bClose: "Fechar"
},
del : {
caption: "Apagar",
msg: "Apagar registro(s) selecionado(s)?",
bSubmit: "Apagar",
bCancel: "Cancelar"
},
nav : {
edittext: " ",
edittitle: "Alterar registro selecionado",
addtext:" ",
addtitle: "Incluir novo registro",
deltext: " ",
deltitle: "Apagar registro selecionado",
searchtext: " ",
searchtitle: "Procurar registros",
refreshtext: "",
refreshtitle: "Recarregando tabela",
alertcap: "Aviso",
alerttext: "Por favor, selecione um registro",
viewtext: "",
viewtitle: "Ver linha selecionada"
},
col : {
caption: "Mostrar/Esconder Colunas",
bSubmit: "Enviar",
bCancel: "Cancelar"
},
errors : {
errcap : "Erro",
nourl : "Nenhuma URL definida",
norecords: "Sem registros para exibir",
model : "Comprimento de colNames <> colModel!"
},
formatter : {
integer : {thousandsSeparator: " ", defaultValue: '0'},
number : {decimalSeparator:",", thousandsSeparator: " ", decimalPlaces: 2, defaultValue: '0,00'},
currency : {decimalSeparator:",", thousandsSeparator: ".", decimalPlaces: 2, prefix: "R$ ", suffix:"", defaultValue: '0,00'},
date : {
dayNames: [
"Dom", "Seg", "Ter", "Qua", "Qui", "Sex", "Sáb",
"Domingo", "Segunda", "Terça", "Quarta", "Quinta", "Sexta", "Sábado"
],
monthNames: [
"Jan", "Fev", "Mar", "Abr", "Mai", "Jun", "Jul", "Ago", "Set", "Out", "Nov", "Dez",
"Janeiro", "Fevereiro", "Março", "Abril", "Maio", "Junho", "Julho", "Agosto", "Setembro", "Outubro", "Novembro", "Dezembro"
],
AmPm : ["am","pm","AM","PM"],
S: function (j) {return j < 11 || j > 13 ? ['º', 'º', 'º', 'º'][Math.min((j - 1) % 10, 3)] : 'º'},
srcformat: 'Y-m-d',
newformat: 'd/m/Y',
parseRe : /[#%\\\/:_;.,\t\s-]/,
masks : {
ISO8601Long:"Y-m-d H:i:s",
ISO8601Short:"Y-m-d",
ShortDate: "n/j/Y",
LongDate: "l, F d, Y",
FullDateTime: "l, F d, Y g:i:s A",
MonthDay: "F d",
ShortTime: "g:i A",
LongTime: "g:i:s A",
SortableDateTime: "Y-m-d\\TH:i:s",
UniversalSortableDateTime: "Y-m-d H:i:sO",
YearMonth: "F, Y"
},
reformatAfterEdit : false,
userLocalTime : false
},
baseLinkUrl: '',
showAction: '',
target: '',
checkbox : {disabled:true},
idName : 'id'
}
});
})(jQuery);

View file

@ -0,0 +1,134 @@
;(function($){
/**
* jqGrid Portuguese Translation
* Tradu<EFBFBD><EFBFBD>o da jqGrid em Portugues por Frederico Carvalho, http://www.eyeviewdesign.pt
* Dual licensed under the MIT and GPL licenses:
* http://www.opensource.org/licenses/mit-license.php
* http://www.gnu.org/licenses/gpl.html
**/
$.jgrid = $.jgrid || {};
$.extend($.jgrid,{
defaults : {
recordtext: "View {0} - {1} of {2}",
emptyrecords: "No records to view",
loadtext: "A carregar...",
pgtext : "Página {0} de {1}",
pgfirst : "First Page",
pglast : "Last Page",
pgnext : "Next Page",
pgprev : "Previous Page",
pgrecs : "Records per Page",
showhide: "Toggle Expand Collapse Grid"
},
search : {
caption: "Busca...",
Find: "Procurar",
Reset: "Limpar",
odata: [{ oper:'eq', text:'equal'},{ oper:'ne', text:'not equal'},{ oper:'lt', text:'less'},{ oper:'le', text:'less or equal'},{ oper:'gt', text:'greater'},{ oper:'ge', text:'greater or equal'},{ oper:'bw', text:'begins with'},{ oper:'bn', text:'does not begin with'},{ oper:'in', text:'is in'},{ oper:'ni', text:'is not in'},{ oper:'ew', text:'ends with'},{ oper:'en', text:'does not end with'},{ oper:'cn', text:'contains'},{ oper:'nc', text:'does not contain'},{ oper:'nu', text:'is null'},{ oper:'nn', text:'is not null'}],
groupOps: [ { op: "AND", text: "all" }, { op: "OR", text: "any" } ],
operandTitle : "Click to select search operation.",
resetTitle : "Reset Search Value"
},
edit : {
addCaption: "Adicionar Registo",
editCaption: "Modificar Registo",
bSubmit: "Submeter",
bCancel: "Cancelar",
bClose: "Fechar",
saveData: "Data has been changed! Save changes?",
bYes : "Yes",
bNo : "No",
bExit : "Cancel",
msg: {
required:"Campo obrigat<61>rio",
number:"Por favor, introduza um numero",
minValue:"O valor deve ser maior ou igual que",
maxValue:"O valor deve ser menor ou igual a",
email: "N<>o <20> um endere<72>o de email v<>lido",
integer: "Por favor, introduza um numero inteiro",
url: "is not a valid URL. Prefix required ('http://' or 'https://')",
nodefined : " is not defined!",
novalue : " return value is required!",
customarray : "Custom function should return array!",
customfcheck : "Custom function should be present in case of custom checking!"
}
},
view : {
caption: "View Record",
bClose: "Close"
},
del : {
caption: "Eliminar",
msg: "Deseja eliminar o(s) registo(s) seleccionado(s)?",
bSubmit: "Eliminar",
bCancel: "Cancelar"
},
nav : {
edittext: " ",
edittitle: "Modificar registo seleccionado",
addtext:" ",
addtitle: "Adicionar novo registo",
deltext: " ",
deltitle: "Eliminar registo seleccionado",
searchtext: " ",
searchtitle: "Procurar",
refreshtext: "",
refreshtitle: "Actualizar",
alertcap: "Aviso",
alerttext: "Por favor, seleccione um registo",
viewtext: "",
viewtitle: "View selected row"
},
col : {
caption: "Mostrar/Ocultar Colunas",
bSubmit: "Enviar",
bCancel: "Cancelar"
},
errors : {
errcap : "Erro",
nourl : "N<>o especificou um url",
norecords: "N<>o existem dados para processar",
model : "Tamanho do colNames <> colModel!"
},
formatter : {
integer : {thousandsSeparator: " ", defaultValue: '0'},
number : {decimalSeparator:".", thousandsSeparator: " ", decimalPlaces: 2, defaultValue: '0.00'},
currency : {decimalSeparator:".", thousandsSeparator: " ", decimalPlaces: 2, prefix: "", suffix:"", defaultValue: '0.00'},
date : {
dayNames: [
"Dom", "Seg", "Ter", "Qua", "Qui", "Sex", "Sab",
"Domingo", "Segunda-Feira", "Ter<65>a-Feira", "Quarta-Feira", "Quinta-Feira", "Sexta-Feira", "S<>bado"
],
monthNames: [
"Jan", "Fev", "Mar", "Abr", "Mai", "Jun", "Jul", "Ago", "Set", "Out", "Nov", "Dez",
"Janeiro", "Fevereiro", "Mar<61>o", "Abril", "Maio", "Junho", "Julho", "Agosto", "Setembro", "Outubro", "Novembro", "Dezembro"
],
AmPm : ["am","pm","AM","PM"],
S: function (j) {return j < 11 || j > 13 ? ['<27>', '<27>', '<27>', '<27>'][Math.min((j - 1) % 10, 3)] : '<27>'},
srcformat: 'Y-m-d',
newformat: 'd/m/Y',
parseRe : /[#%\\\/:_;.,\t\s-]/,
masks : {
ISO8601Long:"Y-m-d H:i:s",
ISO8601Short:"Y-m-d",
ShortDate: "n/j/Y",
LongDate: "l, F d, Y",
FullDateTime: "l, F d, Y g:i:s A",
MonthDay: "F d",
ShortTime: "g:i A",
LongTime: "g:i:s A",
SortableDateTime: "Y-m-d\\TH:i:s",
UniversalSortableDateTime: "Y-m-d H:i:sO",
YearMonth: "F, Y"
},
reformatAfterEdit : false,
userLocalTime : false
},
baseLinkUrl: '',
showAction: '',
target: '',
checkbox : {disabled:true},
idName : 'id'
}
});
})(jQuery);

View file

@ -0,0 +1,148 @@
;(function($){
/**
* jqGrid Romanian Translation
* Alexandru Emil Lupu contact@alecslupu.ro
* http://www.alecslupu.ro/
* Dual licensed under the MIT and GPL licenses:
* http://www.opensource.org/licenses/mit-license.php
* http://www.gnu.org/licenses/gpl.html
**/
$.jgrid = $.jgrid || {};
$.extend($.jgrid,{
defaults : {
recordtext: "Vizualizare {0} - {1} din {2}",
emptyrecords: "Nu există înregistrări de vizualizat",
loadtext: "Încărcare...",
pgtext : "Pagina {0} din {1}",
pgfirst : "First Page",
pglast : "Last Page",
pgnext : "Next Page",
pgprev : "Previous Page",
pgrecs : "Records per Page",
showhide: "Toggle Expand Collapse Grid"
},
search : {
caption: "Caută...",
Find: "Caută",
Reset: "Resetare",
odata: [{ oper:'eq', text:"egal"},{ oper:'ne', text:"diferit"},{ oper:'lt', text:"mai mic"},{ oper:'le', text:"mai mic sau egal"},{ oper:'gt', text:"mai mare"},{ oper:'ge', text:"mai mare sau egal"},{ oper:'bw', text:"începe cu"},{ oper:'bn', text:"nu începe cu"},{ oper:'in', text:"se găsește în"},{ oper:'ni', text:"nu se găsește în"},{ oper:'ew', text:"se termină cu"},{ oper:'en', text:"nu se termină cu"},{ oper:'cn', text:"conține"},{ oper:'nc', text:""},{ oper:'nu', text:'is null'},{ oper:'nn', text:'is not null'}],
groupOps: [ { op: "AND", text: "toate" }, { op: "OR", text: "oricare" } ],
operandTitle : "Click to select search operation.",
resetTitle : "Reset Search Value"
},
edit : {
addCaption: "Adăugare înregistrare",
editCaption: "Modificare înregistrare",
bSubmit: "Salvează",
bCancel: "Anulare",
bClose: "Închide",
saveData: "Informațiile au fost modificate! Salvați modificările?",
bYes : "Da",
bNo : "Nu",
bExit : "Anulare",
msg: {
required:"Câmpul este obligatoriu",
number:"Vă rugăm introduceți un număr valid",
minValue:"valoarea trebuie sa fie mai mare sau egală cu",
maxValue:"valoarea trebuie sa fie mai mică sau egală cu",
email: "nu este o adresă de e-mail validă",
integer: "Vă rugăm introduceți un număr valid",
date: "Vă rugăm să introduceți o dată validă",
url: "Nu este un URL valid. Prefixul este necesar('http://' or 'https://')",
nodefined : " is not defined!",
novalue : " return value is required!",
customarray : "Custom function should return array!",
customfcheck : "Custom function should be present in case of custom checking!"
}
},
view : {
caption: "Vizualizare înregistrare",
bClose: "Închidere"
},
del : {
caption: "Ștegere",
msg: "Ștergeți înregistrarea (înregistrările) selectate?",
bSubmit: "Șterge",
bCancel: "Anulare"
},
nav : {
edittext: "",
edittitle: "Modifică rândul selectat",
addtext:"",
addtitle: "Adaugă rând nou",
deltext: "",
deltitle: "Șterge rândul selectat",
searchtext: "",
searchtitle: "Căutare înregistrări",
refreshtext: "",
refreshtitle: "Reîncarcare Grid",
alertcap: "Avertisment",
alerttext: "Vă rugăm să selectați un rând",
viewtext: "",
viewtitle: "Vizualizează rândul selectat"
},
col : {
caption: "Arată/Ascunde coloanele",
bSubmit: "Salvează",
bCancel: "Anulare"
},
errors : {
errcap : "Eroare",
nourl : "Niciun url nu este setat",
norecords: "Nu sunt înregistrări de procesat",
model : "Lungimea colNames <> colModel!"
},
formatter : {
integer : {thousandsSeparator: " ", defaultValue: '0'},
number : {decimalSeparator:",", thousandsSeparator: " ", decimalPlaces: 2, defaultValue: '0,00'},
currency : {decimalSeparator:",", thousandsSeparator: " ", decimalPlaces: 2, prefix: "", suffix:"", defaultValue: '0,00'},
date : {
dayNames: [
"Dum", "Lun", "Mar", "Mie", "Joi", "Vin", "Sâm",
"Duminică", "Luni", "Marți", "Miercuri", "Joi", "Vineri", "Sâmbătă"
],
monthNames: [
"Ian", "Feb", "Mar", "Apr", "Mai", "Iun", "Iul", "Aug", "Sep", "Oct", "Noi", "Dec",
"Ianuarie", "Februarie", "Martie", "Aprilie", "Mai", "Iunie", "Iulie", "August", "Septembrie", "Octombrie", "Noiembrie", "Decembrie"
],
AmPm : ["am","pm","AM","PM"],
/*
Here is a problem in romanian:
M / F
1st = primul / prima
2nd = Al doilea / A doua
3rd = Al treilea / A treia
4th = Al patrulea/ A patra
5th = Al cincilea / A cincea
6th = Al șaselea / A șasea
7th = Al șaptelea / A șaptea
....
*/
S: function (j) {return j < 11 || j > 13 ? ['st', 'nd', 'rd', 'th'][Math.min((j - 1) % 10, 3)] : 'th'},
srcformat: 'Y-m-d',
newformat: 'd/m/Y',
parseRe : /[#%\\\/:_;.,\t\s-]/,
masks : {
ISO8601Long:"Y-m-d H:i:s",
ISO8601Short:"Y-m-d",
ShortDate: "n/j/Y",
LongDate: "l, F d, Y",
FullDateTime: "l, F d, Y g:i:s A",
MonthDay: "F d",
ShortTime: "g:i A",
LongTime: "g:i:s A",
SortableDateTime: "Y-m-d\\TH:i:s",
UniversalSortableDateTime: "Y-m-d H:i:sO",
YearMonth: "F, Y"
},
reformatAfterEdit : false,
userLocalTime : false
},
baseLinkUrl: '',
showAction: '',
target: '',
checkbox : {disabled:true},
idName : 'id'
}
});
})(jQuery);

View file

@ -0,0 +1,136 @@
;(function($){
/**
* jqGrid Russian Translation v1.0 02.07.2009 (based on translation by Alexey Kanaev v1.1 21.01.2009, http://softcore.com.ru)
* Sergey Dyagovchenko
* http://d.sumy.ua
* Dual licensed under the MIT and GPL licenses:
* http://www.opensource.org/licenses/mit-license.php
* http://www.gnu.org/licenses/gpl.html
**/
$.jgrid = $.jgrid || {};
$.extend($.jgrid,{
defaults : {
recordtext: "Просмотр {0} - {1} из {2}",
emptyrecords: "Нет записей для просмотра",
loadtext: "Загрузка...",
pgtext : "Стр. {0} из {1}",
pgfirst : "First Page",
pglast : "Last Page",
pgnext : "Next Page",
pgprev : "Previous Page",
pgrecs : "Records per Page",
showhide: "Toggle Expand Collapse Grid"
},
search : {
caption: "Поиск...",
Find: "Найти",
Reset: "Сброс",
odata: [{ oper:'eq', text:"равно"},{ oper:'ne', text:"не равно"},{ oper:'lt', text:"меньше"},{ oper:'le', text:"меньше или равно"},{ oper:'gt', text:"больше"},{ oper:'ge', text:"больше или равно"},{ oper:'bw', text:"начинается с"},{ oper:'bn', text:"не начинается с"},{ oper:'in', text:"находится в"},{ oper:'ni', text:"не находится в"},{ oper:'ew', text:"заканчивается на"},{ oper:'en', text:"не заканчивается на"},{ oper:'cn', text:"содержит"},{ oper:'nc', text:"не содержит"},{ oper:'nu', text:"равно NULL"},{ oper:'nn', text:"не равно NULL"}],
groupOps: [ { op: "AND", text: "все" }, { op: "OR", text: "любой" }],
operandTitle : "Click to select search operation.",
resetTitle : "Reset Search Value"
},
edit : {
addCaption: "Добавить запись",
editCaption: "Редактировать запись",
bSubmit: "Сохранить",
bCancel: "Отмена",
bClose: "Закрыть",
saveData: "Данные были измененны! Сохранить изменения?",
bYes : "Да",
bNo : "Нет",
bExit : "Отмена",
msg: {
required:"Поле является обязательным",
number:"Пожалуйста, введите правильное число",
minValue:"значение должно быть больше либо равно",
maxValue:"значение должно быть меньше либо равно",
email: "некорректное значение e-mail",
integer: "Пожалуйста, введите целое число",
date: "Пожалуйста, введите правильную дату",
url: "неверная ссылка. Необходимо ввести префикс ('http://' или 'https://')",
nodefined : " не определено!",
novalue : " возвращаемое значение обязательно!",
customarray : "Пользовательская функция должна возвращать массив!",
customfcheck : "Пользовательская функция должна присутствовать в случаи пользовательской проверки!"
}
},
view : {
caption: "Просмотр записи",
bClose: "Закрыть"
},
del : {
caption: "Удалить",
msg: "Удалить выбранную запись(и)?",
bSubmit: "Удалить",
bCancel: "Отмена"
},
nav : {
edittext: " ",
edittitle: "Редактировать выбранную запись",
addtext:" ",
addtitle: "Добавить новую запись",
deltext: " ",
deltitle: "Удалить выбранную запись",
searchtext: " ",
searchtitle: "Найти записи",
refreshtext: "",
refreshtitle: "Обновить таблицу",
alertcap: "Внимание",
alerttext: "Пожалуйста, выберите запись",
viewtext: "",
viewtitle: "Просмотреть выбранную запись"
},
col : {
caption: "Показать/скрыть столбцы",
bSubmit: "Сохранить",
bCancel: "Отмена"
},
errors : {
errcap : "Ошибка",
nourl : "URL не установлен",
norecords: "Нет записей для обработки",
model : "Число полей не соответствует числу столбцов таблицы!"
},
formatter : {
integer : {thousandsSeparator: " ", defaultValue: '0'},
number : {decimalSeparator:",", thousandsSeparator: " ", decimalPlaces: 2, defaultValue: '0,00'},
currency : {decimalSeparator:",", thousandsSeparator: " ", decimalPlaces: 2, prefix: "", suffix:"", defaultValue: '0,00'},
date : {
dayNames: [
"Вс", "Пн", "Вт", "Ср", "Чт", "Пт", "Сб",
"Воскресение", "Понедельник", "Вторник", "Среда", "Четверг", "Пятница", "Суббота"
],
monthNames: [
"Янв", "Фев", "Мар", "Апр", "Май", "Июн", "Июл", "Авг", "Сен", "Окт", "Ноя", "Дек",
"Январь", "Февраль", "Март", "Апрель", "Май", "Июнь", "Июль", "Август", "Сентябрь", "Октябрь", "Ноябрь", "Декабрь"
],
AmPm : ["am","pm","AM","PM"],
S: function (j) {return j < 11 || j > 13 ? ['st', 'nd', 'rd', 'th'][Math.min((j - 1) % 10, 3)] : 'th';},
srcformat: 'Y-m-d',
newformat: 'd.m.Y',
parseRe : /[#%\\\/:_;.,\t\s-]/,
masks : {
ISO8601Long:"Y-m-d H:i:s",
ISO8601Short:"Y-m-d",
ShortDate: "n.j.Y",
LongDate: "l, F d, Y",
FullDateTime: "l, F d, Y G:i:s",
MonthDay: "F d",
ShortTime: "G:i",
LongTime: "G:i:s",
SortableDateTime: "Y-m-d\\TH:i:s",
UniversalSortableDateTime: "Y-m-d H:i:sO",
YearMonth: "F, Y"
},
reformatAfterEdit : false,
userLocalTime : false
},
baseLinkUrl: '',
showAction: '',
target: '',
checkbox : {disabled:true},
idName : 'id'
}
});
})(jQuery);

View file

@ -0,0 +1,136 @@
;(function($){
/**
* jqGrid Slovak Translation
* Milan Cibulka
* http://trirand.com/blog/
* Dual licensed under the MIT and GPL licenses:
* http://www.opensource.org/licenses/mit-license.php
* http://www.gnu.org/licenses/gpl.html
**/
$.jgrid = $.jgrid || {};
$.extend($.jgrid,{
defaults : {
recordtext: "Zobrazených {0} - {1} z {2} záznamov",
emptyrecords: "Neboli nájdené žiadne záznamy",
loadtext: "Načítám...",
pgtext : "Strana {0} z {1}",
pgfirst : "First Page",
pglast : "Last Page",
pgnext : "Next Page",
pgprev : "Previous Page",
pgrecs : "Records per Page",
showhide: "Toggle Expand Collapse Grid"
},
search : {
caption: "Vyhľadávam...",
Find: "Hľadať",
Reset: "Reset",
odata: [{ oper:'eq', text:"rovná sa"},{ oper:'ne', text:"nerovná sa"},{ oper:'lt', text:"menšie"},{ oper:'le', text:"menšie alebo rovnajúce sa"},{ oper:'gt', text:"väčšie"},{ oper:'ge', text:"väčšie alebo rovnajúce sa"},{ oper:'bw', text:"začína s"},{ oper:'bn', text:"nezačína s"},{ oper:'in', text:"je v"},{ oper:'ni', text:"nie je v"},{ oper:'ew', text:"končí s"},{ oper:'en', text:"nekončí s"},{ oper:'cn', text:"obahuje"},{ oper:'nc', text:"neobsahuje"},{ oper:'nu', text:'is null'},{ oper:'nn', text:'is not null'}],
groupOps: [ { op: "AND", text: "všetkých" }, { op: "OR", text: "niektorého z" } ],
operandTitle : "Click to select search operation.",
resetTitle : "Reset Search Value"
},
edit : {
addCaption: "Pridať záznam",
editCaption: "Editácia záznamov",
bSubmit: "Uložiť",
bCancel: "Storno",
bClose: "Zavrieť",
saveData: "Údaje boli zmenené! Uložiť zmeny?",
bYes : "Ano",
bNo : "Nie",
bExit : "Zrušiť",
msg: {
required:"Pole je požadované",
number:"Prosím, vložte valídne číslo",
minValue:"hodnota musí býť väčšia ako alebo rovná ",
maxValue:"hodnota musí býť menšia ako alebo rovná ",
email: "nie je valídny e-mail",
integer: "Prosím, vložte celé číslo",
date: "Prosím, vložte valídny dátum",
url: "nie je platnou URL. Požadovaný prefix ('http://' alebo 'https://')",
nodefined : " nie je definovaný!",
novalue : " je vyžadovaná návratová hodnota!",
customarray : "Custom function mala vrátiť pole!",
customfcheck : "Custom function by mala byť prítomná v prípade custom checking!"
}
},
view : {
caption: "Zobraziť záznam",
bClose: "Zavrieť"
},
del : {
caption: "Zmazať",
msg: "Zmazať vybraný(é) záznam(y)?",
bSubmit: "Zmazať",
bCancel: "Storno"
},
nav : {
edittext: " ",
edittitle: "Editovať vybraný riadok",
addtext:" ",
addtitle: "Pridať nový riadek",
deltext: " ",
deltitle: "Zmazať vybraný záznam ",
searchtext: " ",
searchtitle: "Nájsť záznamy",
refreshtext: "",
refreshtitle: "Obnoviť tabuľku",
alertcap: "Varovanie",
alerttext: "Prosím, vyberte riadok",
viewtext: "",
viewtitle: "Zobraziť vybraný riadok"
},
col : {
caption: "Zobrazit/Skrýť stĺpce",
bSubmit: "Uložiť",
bCancel: "Storno"
},
errors : {
errcap : "Chyba",
nourl : "Nie je nastavená url",
norecords: "Žiadne záznamy k spracovaniu",
model : "Dĺžka colNames <> colModel!"
},
formatter : {
integer : {thousandsSeparator: " ", defaultValue: '0'},
number : {decimalSeparator:".", thousandsSeparator: " ", decimalPlaces: 2, defaultValue: '0.00'},
currency : {decimalSeparator:".", thousandsSeparator: " ", decimalPlaces: 2, prefix: "", suffix:"", defaultValue: '0.00'},
date : {
dayNames: [
"Ne", "Po", "Ut", "St", "Št", "Pi", "So",
"Nedela", "Pondelok", "Utorok", "Streda", "Štvrtok", "Piatek", "Sobota"
],
monthNames: [
"Jan", "Feb", "Mar", "Apr", "Máj", "Jún", "Júl", "Aug", "Sep", "Okt", "Nov", "Dec",
"Január", "Február", "Marec", "Apríl", "Máj", "Jún", "Júl", "August", "September", "Október", "November", "December"
],
AmPm : ["do","od","DO","OD"],
S: function (j) {return j < 11 || j > 13 ? ['st', 'nd', 'rd', 'th'][Math.min((j - 1) % 10, 3)] : 'th'},
srcformat: 'Y-m-d',
newformat: 'd/m/Y',
parseRe : /[#%\\\/:_;.,\t\s-]/,
masks : {
ISO8601Long:"Y-m-d H:i:s",
ISO8601Short:"Y-m-d",
ShortDate: "n/j/Y",
LongDate: "l, F d, Y",
FullDateTime: "l, F d, Y g:i:s A",
MonthDay: "F d",
ShortTime: "g:i A",
LongTime: "g:i:s A",
SortableDateTime: "Y-m-d\\TH:i:s",
UniversalSortableDateTime: "Y-m-d H:i:sO",
YearMonth: "F, Y"
},
reformatAfterEdit : false,
userLocalTime : false
},
baseLinkUrl: '',
showAction: '',
target: '',
checkbox : {disabled:true},
idName : 'id'
}
});
})(jQuery);

View file

@ -0,0 +1,137 @@
;(function($){
/**
* jqGrid Serbian latin Translation
* Bild Studio info@bild-studio.net
* http://www.bild-studio.com
* Dual licensed under the MIT and GPL licenses:
* http://www.opensource.org/licenses/mit-license.php
* http://www.gnu.org/licenses/gpl.html
**/
$.jgrid = $.jgrid || {};
$.extend($.jgrid,{
defaults : {
recordtext: "Pregled {0} - {1} od {2}",
emptyrecords: "Ne postoji nijedan zapis",
loadtext: "Učitavanje…",
pgtext : "Strana {0} od {1}",
pgfirst : "First Page",
pglast : "Last Page",
pgnext : "Next Page",
pgprev : "Previous Page",
pgrecs : "Records per Page",
showhide: "Toggle Expand Collapse Grid"
},
search : {
caption: "Traženje...",
Find: "Traži",
Reset: "Resetuj",
odata: [{ oper:'eq', text:"jednako"},{ oper:'ne', text:"nije jednako"},{ oper:'lt', text:"manje"},{ oper:'le', text:"manje ili jednako"},{ oper:'gt', text:"veće"},{ oper:'ge', text:"veće ili jednako"},{ oper:'bw', text:"počinje sa"},{ oper:'bn', text:"ne počinje sa"},{ oper:'in', text:"je u"},{ oper:'ni', text:"nije u"},{ oper:'ew', text:"završava sa"},{ oper:'en', text:"ne završava sa"},{ oper:'cn', text:"sadrži"},{ oper:'nc', text:"ne sadrži"},{ oper:'nu', text:'is null'},{ oper:'nn', text:'is not null'}],
groupOps: [ { op: "AND", text: "sva" }, { op: "OR", text: "bilo koje" } ],
operandTitle : "Click to select search operation.",
resetTitle : "Reset Search Value"
},
edit : {
addCaption: "Dodaj zapis",
editCaption: "Izmeni zapis",
bSubmit: "Pošalji",
bCancel: "Odustani",
bClose: "Zatvori",
saveData: "Podatak je izmenjen! Sačuvaj izmene?",
bYes : "Da",
bNo : "Ne",
bExit : "Odustani",
msg: {
required: "Polje je obavezno",
number: "Unesite ispravan broj",
minValue: "vrednost mora biti veća od ili jednaka sa ",
maxValue: "vrednost mora biti manja ili jednaka sa",
email: "nije ispravna email adresa, nije valjda da ne umeš ukucati mail!?",
integer: "Unesi celobrojnu vrednost ",
date: "Unesite ispravan datum",
url: "nije ispravan URL. Potreban je prefiks ('http://' or 'https://')",
nodefined : " nije definisan!",
novalue : " zahtevana je povratna vrednost!",
customarray : "Prilagođena funkcija treba da vrati niz!",
customfcheck : "Prilagođena funkcija treba da bude prisutana u slučaju prilagođene provere!"
}
},
view : {
caption: "Pogledaj zapis",
bClose: "Zatvori"
},
del : {
caption: "Izbrisi",
msg: "Izbrisi izabran(e) zapise(e)?",
bSubmit: "Izbriši",
bCancel: "Odbaci"
},
nav : {
edittext: "",
edittitle: "Izmeni izabrani red",
addtext:"",
addtitle: "Dodaj novi red",
deltext: "",
deltitle: "Izbriši izabran red",
searchtext: "",
searchtitle: "Nađi zapise",
refreshtext: "",
refreshtitle: "Ponovo učitaj podatke",
alertcap: "Upozorenje",
alerttext: "Izaberite red",
viewtext: "",
viewtitle: "Pogledaj izabrani red"
},
col : {
caption: "Izaberi kolone",
bSubmit: "OK",
bCancel: "Odbaci"
},
errors : {
errcap : "Greška",
nourl : "Nije postavljen URL",
norecords: "Nema zapisa za obradu",
model : "Dužina modela colNames <> colModel!"
},
formatter : {
integer : {thousandsSeparator: " ", defaultValue: '0'},
number : {decimalSeparator:".", thousandsSeparator: " ", decimalPlaces: 2, defaultValue: '0.00'},
currency : {decimalSeparator:".", thousandsSeparator: " ", decimalPlaces: 2, prefix: "", suffix:"", defaultValue: '0.00'},
date : {
dayNames: [
"Ned", "Pon", "Uto", "Sre", "Čet", "Pet", "Sub",
"Nedelja", "Ponedeljak", "Utorak", "Srijeda", "Četvrtak", "Petak", "Subota"
],
monthNames: [
"Jan", "Feb", "Mar", "Apr", "Maj", "Jun", "Jul", "Avg", "Sep", "Okt", "Nov", "Dec",
"Januar", "Februar", "Mart", "April", "Maj", "Jun", "Jul", "Avgust", "Septembar", "Oktobar", "Novembar", "Decembar"
],
AmPm : ["am","pm","AM","PM"],
S: function (j) {return j < 11 || j > 13 ? ['st', 'nd', 'rd', 'th'][Math.min((j - 1) % 10, 3)] : 'th'},
srcformat: 'Y-m-d',
newformat: 'd/m/Y',
parseRe : /[#%\\\/:_;.,\t\s-]/,
masks : {
ISO8601Long:"Y-m-d H:i:s",
ISO8601Short:"Y-m-d",
ShortDate: "n/j/Y",
LongDate: "l, F d, Y",
FullDateTime: "l, F d, Y g:i:s A",
MonthDay: "F d",
ShortTime: "g:i A",
LongTime: "g:i:s A",
SortableDateTime: "Y-m-d\\TH:i:s",
UniversalSortableDateTime: "Y-m-d H:i:sO",
YearMonth: "F, Y"
},
reformatAfterEdit : false,
userLocalTime : false
},
baseLinkUrl: '',
showAction: '',
target: '',
checkbox : {disabled:true},
idName : 'id'
}
});
})(jQuery);

View file

@ -0,0 +1,137 @@
;(function($){
/**
* jqGrid Serbian Translation
* Александар Миловац(Aleksandar Milovac) aleksandar.milovac@gmail.com
* http://trirand.com/blog/
* Dual licensed under the MIT and GPL licenses:
* http://www.opensource.org/licenses/mit-license.php
* http://www.gnu.org/licenses/gpl.html
**/
$.jgrid = $.jgrid || {};
$.extend($.jgrid,{
defaults : {
recordtext: "Преглед {0} - {1} од {2}",
emptyrecords: "Не постоји ниједан запис",
loadtext: "Учитавање...",
pgtext : "Страна {0} од {1}",
pgfirst : "First Page",
pglast : "Last Page",
pgnext : "Next Page",
pgprev : "Previous Page",
pgrecs : "Records per Page",
showhide: "Toggle Expand Collapse Grid"
},
search : {
caption: "Тражење...",
Find: "Тражи",
Reset: "Ресетуј",
odata: [{ oper:'eq', text:"једнако"},{ oper:'ne', text:"није једнако"},{ oper:'lt', text:"мање"},{ oper:'le', text:"мање или једнако"},{ oper:'gt', text:"веће"},{ oper:'ge', text:"веће или једнако"},{ oper:'bw', text:"почиње са"},{ oper:'bn', text:"не почиње са"},{ oper:'in', text:"је у"},{ oper:'ni', text:"није у"},{ oper:'ew', text:"завршава са"},{ oper:'en', text:"не завршава са"},{ oper:'cn', text:"садржи"},{ oper:'nc', text:"не садржи"},{ oper:'nu', text:'is null'},{ oper:'nn', text:'is not null'}],
groupOps: [ { op: "И", text: "сви" }, { op: "ИЛИ", text: "сваки" } ],
operandTitle : "Click to select search operation.",
resetTitle : "Reset Search Value"
},
edit : {
addCaption: "Додај запис",
editCaption: "Измени запис",
bSubmit: "Пошаљи",
bCancel: "Одустани",
bClose: "Затвори",
saveData: "Податак је измењен! Сачувај измене?",
bYes : "Да",
bNo : "Не",
bExit : "Одустани",
msg: {
required:"Поље је обавезно",
number:"Молим, унесите исправан број",
minValue:"вредност мора бити већа од или једнака са ",
maxValue:"вредност мора бити мања од или једнака са",
email: "није исправна имејл адреса",
integer: "Молим, унесите исправну целобројну вредност ",
date: "Молим, унесите исправан датум",
url: "није исправан УРЛ. Потребан је префикс ('http://' or 'https://')",
nodefined : " није дефинисан!",
novalue : " захтевана је повратна вредност!",
customarray : "Custom function should return array!",
customfcheck : "Custom function should be present in case of custom checking!"
}
},
view : {
caption: "Погледај запис",
bClose: "Затвори"
},
del : {
caption: "Избриши",
msg: "Избриши изабран(е) запис(е)?",
bSubmit: "Ибриши",
bCancel: "Одбаци"
},
nav : {
edittext: "",
edittitle: "Измени изабрани ред",
addtext:"",
addtitle: "Додај нови ред",
deltext: "",
deltitle: "Избриши изабран ред",
searchtext: "",
searchtitle: "Нађи записе",
refreshtext: "",
refreshtitle: "Поново учитај податке",
alertcap: "Упозорење",
alerttext: "Молим, изаберите ред",
viewtext: "",
viewtitle: "Погледај изабрани ред"
},
col : {
caption: "Изабери колоне",
bSubmit: "ОК",
bCancel: "Одбаци"
},
errors : {
errcap : "Грешка",
nourl : "Није постављен URL",
norecords: "Нема записа за обраду",
model : "Дужина модела colNames <> colModel!"
},
formatter : {
integer : {thousandsSeparator: " ", defaultValue: '0'},
number : {decimalSeparator:".", thousandsSeparator: " ", decimalPlaces: 2, defaultValue: '0.00'},
currency : {decimalSeparator:".", thousandsSeparator: " ", decimalPlaces: 2, prefix: "", suffix:"", defaultValue: '0.00'},
date : {
dayNames: [
"Нед", "Пон", "Уто", "Сре", "Чет", "Пет", "Суб",
"Недеља", "Понедељак", "Уторак", "Среда", "Четвртак", "Петак", "Субота"
],
monthNames: [
"Јан", "Феб", "Мар", "Апр", "Мај", "Јун", "Јул", "Авг", "Сеп", "Окт", "Нов", "Дец",
"Јануар", "Фебруар", "Март", "Април", "Мај", "Јун", "Јул", "Август", "Септембар", "Октобар", "Новембар", "Децембар"
],
AmPm : ["am","pm","AM","PM"],
S: function (j) {return j < 11 || j > 13 ? ['st', 'nd', 'rd', 'th'][Math.min((j - 1) % 10, 3)] : 'th'},
srcformat: 'Y-m-d',
newformat: 'd/m/Y',
parseRe : /[#%\\\/:_;.,\t\s-]/,
masks : {
ISO8601Long:"Y-m-d H:i:s",
ISO8601Short:"Y-m-d",
ShortDate: "n/j/Y",
LongDate: "l, F d, Y",
FullDateTime: "l, F d, Y g:i:s A",
MonthDay: "F d",
ShortTime: "g:i A",
LongTime: "g:i:s A",
SortableDateTime: "Y-m-d\\TH:i:s",
UniversalSortableDateTime: "Y-m-d H:i:sO",
YearMonth: "F, Y"
},
reformatAfterEdit : false,
userLocalTime : false
},
baseLinkUrl: '',
showAction: '',
target: '',
checkbox : {disabled:true},
idName : 'id'
}
});
})(jQuery);

View file

@ -0,0 +1,136 @@
;(function($){
/**
* jqGrid Swedish Translation
* Harald Normann harald.normann@wts.se, harald.normann@gmail.com
* http://www.worldteamsoftware.com
* Dual licensed under the MIT and GPL licenses:
* http://www.opensource.org/licenses/mit-license.php
* http://www.gnu.org/licenses/gpl.html
**/
$.jgrid = $.jgrid || {};
$.extend($.jgrid,{
defaults : {
recordtext: "Visar {0} - {1} av {2}",
emptyrecords: "Det finns inga poster att visa",
loadtext: "Laddar...",
pgtext : "Sida {0} av {1}",
pgfirst : "First Page",
pglast : "Last Page",
pgnext : "Next Page",
pgprev : "Previous Page",
pgrecs : "Records per Page",
showhide: "Toggle Expand Collapse Grid"
},
search : {
caption: "Sök Poster - Ange sökvillkor",
Find: "Sök",
Reset: "Nollställ Villkor",
odata: [{ oper:'eq', text:"lika"},{ oper:'ne', text:"ej lika"},{ oper:'lt', text:"mindre"},{ oper:'le', text:"mindre eller lika"},{ oper:'gt', text:"större"},{ oper:'ge', text:"större eller lika"},{ oper:'bw', text:"börjar med"},{ oper:'bn', text:"börjar inte med"},{ oper:'in', text:"tillhör"},{ oper:'ni', text:"tillhör inte"},{ oper:'ew', text:"slutar med"},{ oper:'en', text:"slutar inte med"},{ oper:'cn', text:"innehåller"},{ oper:'nc', text:"innehåller inte"},{ oper:'nu', text:'is null'},{ oper:'nn', text:'is not null'}],
groupOps: [ { op: "AND", text: "alla" }, { op: "OR", text: "eller" } ],
operandTitle : "Click to select search operation.",
resetTitle : "Reset Search Value"
},
edit : {
addCaption: "Ny Post",
editCaption: "Redigera Post",
bSubmit: "Spara",
bCancel: "Avbryt",
bClose: "Stäng",
saveData: "Data har ändrats! Spara förändringar?",
bYes : "Ja",
bNo : "Nej",
bExit : "Avbryt",
msg: {
required:"Fältet är obligatoriskt",
number:"Välj korrekt nummer",
minValue:"värdet måste vara större än eller lika med",
maxValue:"värdet måste vara mindre än eller lika med",
email: "är inte korrekt e-post adress",
integer: "Var god ange korrekt heltal",
date: "Var god ange korrekt datum",
url: "är inte en korrekt URL. Prefix måste anges ('http://' or 'https://')",
nodefined : " är inte definierad!",
novalue : " returvärde måste anges!",
customarray : "Custom funktion måste returnera en vektor!",
customfcheck : "Custom funktion måste finnas om Custom kontroll sker!"
}
},
view : {
caption: "Visa Post",
bClose: "Stäng"
},
del : {
caption: "Radera",
msg: "Radera markerad(e) post(er)?",
bSubmit: "Radera",
bCancel: "Avbryt"
},
nav : {
edittext: "",
edittitle: "Redigera markerad rad",
addtext:"",
addtitle: "Skapa ny post",
deltext: "",
deltitle: "Radera markerad rad",
searchtext: "",
searchtitle: "Sök poster",
refreshtext: "",
refreshtitle: "Uppdatera data",
alertcap: "Varning",
alerttext: "Ingen rad är markerad",
viewtext: "",
viewtitle: "Visa markerad rad"
},
col : {
caption: "Välj Kolumner",
bSubmit: "OK",
bCancel: "Avbryt"
},
errors : {
errcap : "Fel",
nourl : "URL saknas",
norecords: "Det finns inga poster att bearbeta",
model : "Antal colNames <> colModel!"
},
formatter : {
integer : {thousandsSeparator: " ", defaultValue: '0'},
number : {decimalSeparator:",", thousandsSeparator: " ", decimalPlaces: 2, defaultValue: '0,00'},
currency : {decimalSeparator:",", thousandsSeparator: " ", decimalPlaces: 2, prefix: "", suffix:"Kr", defaultValue: '0,00'},
date : {
dayNames: [
"Sön", "Mån", "Tis", "Ons", "Tor", "Fre", "Lör",
"Söndag", "Måndag", "Tisdag", "Onsdag", "Torsdag", "Fredag", "Lördag"
],
monthNames: [
"Jan", "Feb", "Mar", "Apr", "Maj", "Jun", "Jul", "Aug", "Sep", "Okt", "Nov", "Dec",
"Januari", "Februari", "Mars", "April", "Maj", "Juni", "Juli", "Augusti", "September", "Oktober", "November", "December"
],
AmPm : ["fm","em","FM","EM"],
S: function (j) {return j < 11 || j > 13 ? ['st', 'nd', 'rd', 'th'][Math.min((j - 1) % 10, 3)] : 'th'},
srcformat: 'Y-m-d',
newformat: 'Y-m-d',
parseRe : /[#%\\\/:_;.,\t\s-]/,
masks : {
ISO8601Long:"Y-m-d H:i:s",
ISO8601Short:"Y-m-d",
ShortDate: "n/j/Y",
LongDate: "l, F d, Y",
FullDateTime: "l, F d, Y g:i:s A",
MonthDay: "F d",
ShortTime: "g:i A",
LongTime: "g:i:s A",
SortableDateTime: "Y-m-d\\TH:i:s",
UniversalSortableDateTime: "Y-m-d H:i:sO",
YearMonth: "F, Y"
},
reformatAfterEdit : false,
userLocalTime : false
},
baseLinkUrl: '',
showAction: '',
target: '',
checkbox : {disabled:true},
idName : 'id'
}
});
})(jQuery);

View file

@ -0,0 +1,137 @@
;(function($){
/**
* jqGrid Thai Translation
* Kittituch Manakul m.kittituch@Gmail.com
* http://trirand.com/blog/
* Dual licensed under the MIT and GPL licenses:
* http://www.opensource.org/licenses/mit-license.php
* http://www.gnu.org/licenses/gpl.html
**/
$.jgrid = $.jgrid || {};
$.extend($.jgrid,{
defaults : {
recordtext: "แสดง {0} - {1} จาก {2}",
emptyrecords: "ไม่พบข้อมูล",
loadtext: "กำลังร้องขอข้อมูล...",
pgtext : "หน้า {0} จาก {1}",
pgfirst : "First Page",
pglast : "Last Page",
pgnext : "Next Page",
pgprev : "Previous Page",
pgrecs : "Records per Page",
showhide: "Toggle Expand Collapse Grid"
},
search : {
caption: "กำลังค้นหา...",
Find: "ค้นหา",
Reset: "คืนค่ากลับ",
odata: [{ oper:'eq', text:"เท่ากับ"},{ oper:'ne', text:"ไม่เท่ากับ"},{ oper:'lt', text:"น้อยกว่า"},{ oper:'le', text:"ไม่มากกว่า"},{ oper:'gt', text:"มากกกว่า"},{ oper:'ge', text:"ไม่น้อยกว่า"},{ oper:'bw', text:"ขึ้นต้นด้วย"},{ oper:'bn', text:"ไม่ขึ้นต้นด้วย"},{ oper:'in', text:"มีคำใดคำหนึ่งใน"},{ oper:'ni', text:"ไม่มีคำใดคำหนึ่งใน"},{ oper:'ew', text:"ลงท้ายด้วย"},{ oper:'en', text:"ไม่ลงท้ายด้วย"},{ oper:'cn', text:"มีคำว่า"},{ oper:'nc', text:"ไม่มีคำว่า"},{ oper:'nu', text:'is null'},{ oper:'nn', text:'is not null'}],
groupOps: [ { op: "และ", text: "ทั้งหมด" }, { op: "หรือ", text: "ใดๆ" } ],
operandTitle : "Click to select search operation.",
resetTitle : "Reset Search Value"
},
edit : {
addCaption: "เพิ่มข้อมูล",
editCaption: "แก้ไขข้อมูล",
bSubmit: "บันทึก",
bCancel: "ยกเลิก",
bClose: "ปิด",
saveData: "คุณต้องการบันทึการแก้ไข ใช่หรือไม่?",
bYes : "บันทึก",
bNo : "ละทิ้งการแก้ไข",
bExit : "ยกเลิก",
msg: {
required:"ข้อมูลนี้จำเป็น",
number:"กรุณากรอกหมายเลขให้ถูกต้อง",
minValue:"ค่าของข้อมูลนี้ต้องไม่น้อยกว่า",
maxValue:"ค่าของข้อมูลนี้ต้องไม่มากกว่า",
email: "อีเมลล์นี้ไม่ถูกต้อง",
integer: "กรุณากรอกเป็นจำนวนเต็ม",
date: "กรุณากรอกวันที่ให้ถูกต้อง",
url: "URL ไม่ถูกต้อง URL จำเป็นต้องขึ้นต้นด้วย 'http://' หรือ 'https://'",
nodefined : "ไม่ได้ถูกกำหนดค่า!",
novalue : "ต้องการการคืนค่า!",
customarray : "ฟังก์ชันที่สร้างขึ้นต้องส่งค่ากลับเป็นแบบแอเรย์",
customfcheck : "ระบบต้องการฟังก์ชันที่สร้างขึ้นสำหรับการตรวจสอบ!"
}
},
view : {
caption: "เรียกดูข้อมูล",
bClose: "ปิด"
},
del : {
caption: "ลบข้อมูล",
msg: "คุณต้องการลบข้อมูลที่ถูกเลือก ใช่หรือไม่?",
bSubmit: "ต้องการลบ",
bCancel: "ยกเลิก"
},
nav : {
edittext: "",
edittitle: "แก้ไขข้อมูล",
addtext:"",
addtitle: "เพิ่มข้อมูล",
deltext: "",
deltitle: "ลบข้อมูล",
searchtext: "",
searchtitle: "ค้นหาข้อมูล",
refreshtext: "",
refreshtitle: "รีเฟรช",
alertcap: "คำเตือน",
alerttext: "กรุณาเลือกข้อมูล",
viewtext: "",
viewtitle: "ดูรายละเอียดข้อมูล"
},
col : {
caption: "กรุณาเลือกคอลัมน์",
bSubmit: "ตกลง",
bCancel: "ยกเลิก"
},
errors : {
errcap : "เกิดความผิดพลาด",
nourl : "ไม่ได้กำหนด URL",
norecords: "ไม่มีข้อมูลให้ดำเนินการ",
model : "จำนวนคอลัมน์ไม่เท่ากับจำนวนคอลัมน์โมเดล!"
},
formatter : {
integer : {thousandsSeparator: " ", defaultValue: '0'},
number : {decimalSeparator:".", thousandsSeparator: " ", decimalPlaces: 2, defaultValue: '0.00'},
currency : {decimalSeparator:".", thousandsSeparator: " ", decimalPlaces: 2, prefix: "", suffix:"", defaultValue: '0.00'},
date : {
dayNames: [
"อา", "จ", "อ", "พ", "พฤ", "ศ", "ส",
"อาทิตย์", "จันทร์", "อังคาร", "พุธ", "พฤหัสบดี", "ศูกร์", "เสาร์"
],
monthNames: [
"ม.ค.", "ก.พ.", "มี.ค.", "เม.ย.", "พ.ค.", "มิ.ย.", "ก.ค.", "ส.ค.", "ก.ย.", "ต.ค.", "พ.ย.", "ธ.ค.",
"มกราคม", "กุมภาพันธ์", "มีนาคม", "เมษายน", "พฤษภาคม", "มิถุนายน", "กรกฏาคม", "สิงหาคม", "กันยายน", "ตุลาคม", "พฤศจิกายน", "ธันวาคม"
],
AmPm : ["am","pm","AM","PM"],
S: function (j) {return ''},
srcformat: 'Y-m-d',
newformat: 'd/m/Y',
parseRe : /[#%\\\/:_;.,\t\s-]/,
masks : {
ISO8601Long:"Y-m-d H:i:s",
ISO8601Short:"Y-m-d",
ShortDate: "n/j/Y",
LongDate: "l, F d, Y",
FullDateTime: "l, F d, Y g:i:s A",
MonthDay: "F d",
ShortTime: "g:i A",
LongTime: "g:i:s A",
SortableDateTime: "Y-m-d\\TH:i:s",
UniversalSortableDateTime: "Y-m-d H:i:sO",
YearMonth: "F, Y"
},
reformatAfterEdit : false,
userLocalTime : false
},
baseLinkUrl: '',
showAction: '',
target: '',
checkbox : {disabled:true},
idName : 'id'
}
});
})(jQuery);

View file

@ -0,0 +1,135 @@
;(function($){
/**
* jqGrid Turkish Translation
* Erhan Gündoğan (erhan@trposta.net)
* http://blog.zakkum.com
* Dual licensed under the MIT and GPL licenses:
* http://www.opensource.org/licenses/mit-license.php
* http://www.gnu.org/licenses/gpl.html
**/
$.jgrid = $.jgrid || {};
$.extend($.jgrid,{
defaults : {
recordtext: "{0}-{1} listeleniyor. Toplam:{2}",
emptyrecords: "Kayıt bulunamadı",
loadtext: "Yükleniyor...",
pgtext : "{0}/{1}. Sayfa",
pgfirst : "First Page",
pglast : "Last Page",
pgnext : "Next Page",
pgprev : "Previous Page",
pgrecs : "Records per Page",
showhide: "Toggle Expand Collapse Grid"
},
search : {
caption: "Arama...",
Find: "Bul",
Reset: "Temizle",
odata: [{ oper:'eq', text:"eşit"},{ oper:'ne', text:"eşit değil"},{ oper:'lt', text:"daha az"},{ oper:'le', text:"daha az veya eşit"},{ oper:'gt', text:"daha fazla"},{ oper:'ge', text:"daha fazla veya eşit"},{ oper:'bw', text:"ile başlayan"},{ oper:'bn', text:"ile başlamayan"},{ oper:'in', text:"içinde"},{ oper:'ni', text:"içinde değil"},{ oper:'ew', text:"ile biten"},{ oper:'en', text:"ile bitmeyen"},{ oper:'cn', text:"içeren"},{ oper:'nc', text:"içermeyen"},{ oper:'nu', text:'is null'},{ oper:'nn', text:'is not null'}],
groupOps: [ { op: "VE", text: "tüm" }, { op: "VEYA", text: "herhangi" }],
operandTitle : "Click to select search operation.",
resetTitle : "Reset Search Value"
},
edit : {
addCaption: "Kayıt Ekle",
editCaption: "Kayıt Düzenle",
bSubmit: "Gönder",
bCancel: "İptal",
bClose: "Kapat",
saveData: "Veriler değişti! Kayıt edilsin mi?",
bYes : "Evet",
bNo : "Hayıt",
bExit : "İptal",
msg: {
required:"Alan gerekli",
number:"Lütfen bir numara giriniz",
minValue:"girilen değer daha büyük ya da buna eşit olmalıdır",
maxValue:"girilen değer daha küçük ya da buna eşit olmalıdır",
email: "geçerli bir e-posta adresi değildir",
integer: "Lütfen bir tamsayı giriniz",
url: "Geçerli bir URL değil. ('http://' or 'https://') ön eki gerekli.",
nodefined : " is not defined!",
novalue : " return value is required!",
customarray : "Custom function should return array!",
customfcheck : "Custom function should be present in case of custom checking!"
}
},
view : {
caption: "Kayıt Görüntüle",
bClose: "Kapat"
},
del : {
caption: "Sil",
msg: "Seçilen kayıtlar silinsin mi?",
bSubmit: "Sil",
bCancel: "İptal"
},
nav : {
edittext: " ",
edittitle: "Seçili satırı düzenle",
addtext:" ",
addtitle: "Yeni satır ekle",
deltext: " ",
deltitle: "Seçili satırı sil",
searchtext: " ",
searchtitle: "Kayıtları bul",
refreshtext: "",
refreshtitle: "Tabloyu yenile",
alertcap: "Uyarı",
alerttext: "Lütfen bir satır seçiniz",
viewtext: "",
viewtitle: "Seçilen satırı görüntüle"
},
col : {
caption: "Sütunları göster/gizle",
bSubmit: "Gönder",
bCancel: "İptal"
},
errors : {
errcap : "Hata",
nourl : "Bir url yapılandırılmamış",
norecords: "İşlem yapılacak bir kayıt yok",
model : "colNames uzunluğu <> colModel!"
},
formatter : {
integer : {thousandsSeparator: " ", defaultValue: '0'},
number : {decimalSeparator:".", thousandsSeparator: " ", decimalPlaces: 2, defaultValue: '0.00'},
currency : {decimalSeparator:".", thousandsSeparator: " ", decimalPlaces: 2, prefix: "", suffix:"", defaultValue: '0.00'},
date : {
dayNames: [
"Paz", "Pts", "Sal", "Çar", "Per", "Cum", "Cts",
"Pazar", "Pazartesi", "Salı", "Çarşamba", "Perşembe", "Cuma", "Cumartesi"
],
monthNames: [
"Oca", "Şub", "Mar", "Nis", "May", "Haz", "Tem", "Ağu", "Eyl", "Eki", "Kas", "Ara",
"Ocak", "Şubat", "Mart", "Nisan", "Mayıs", "Haziran", "Temmuz", "Ağustos", "Eylül", "Ekim", "Kasım", "Aralık"
],
AmPm : ["am","pm","AM","PM"],
S: function (j) {return j < 11 || j > 13 ? ['st', 'nd', 'rd', 'th'][Math.min((j - 1) % 10, 3)] : 'th'},
srcformat: 'Y-m-d',
newformat: 'd/m/Y',
parseRe : /[#%\\\/:_;.,\t\s-]/,
masks : {
ISO8601Long:"Y-m-d H:i:s",
ISO8601Short:"Y-m-d",
ShortDate: "n/j/Y",
LongDate: "l, F d, Y",
FullDateTime: "l, F d, Y g:i:s A",
MonthDay: "F d",
ShortTime: "g:i A",
LongTime: "g:i:s A",
SortableDateTime: "Y-m-d\\TH:i:s",
UniversalSortableDateTime: "Y-m-d H:i:sO",
YearMonth: "F, Y"
},
reformatAfterEdit : false,
userLocalTime : false
},
baseLinkUrl: '',
showAction: '',
target: '',
checkbox : {disabled:true},
idName : 'id'
}
});
})(jQuery);

View file

@ -0,0 +1,138 @@
;(function($){
/**
* jqGrid Chinese (Taiwan) Translation for v4.2
* linquize
* https://github.com/linquize/jqGrid
* Dual licensed under the MIT and GPL licenses:
* http://www.opensource.org/licenses/mit-license.php
* http://www.gnu.org/licenses/gpl.html
*
**/
$.jgrid = $.jgrid || {};
$.extend($.jgrid,{
defaults : {
recordtext: "{0} - {1} 共 {2} 條",
emptyrecords: "沒有記錄",
loadtext: "載入中...",
pgtext : " {0} 共 {1} 頁",
pgfirst : "First Page",
pglast : "Last Page",
pgnext : "Next Page",
pgprev : "Previous Page",
pgrecs : "Records per Page",
showhide: "Toggle Expand Collapse Grid"
},
search : {
caption: "搜尋...",
Find: "搜尋",
Reset: "重設",
odata: [{ oper:'eq', text:"等於 "},{ oper:'ne', text:"不等於 "},{ oper:'lt', text:"小於 "},{ oper:'le', text:"小於等於 "},{ oper:'gt', text:"大於 "},{ oper:'ge', text:"大於等於 "},{ oper:'bw', text:"開始於 "},{ oper:'bn', text:"不開始於 "},{ oper:'in', text:"在其中 "},{ oper:'ni', text:"不在其中 "},{ oper:'ew', text:"結束於 "},{ oper:'en', text:"不結束於 "},{ oper:'cn', text:"包含 "},{ oper:'nc', text:"不包含 "},{ oper:'nu', text:'is null'},{ oper:'nn', text:'is not null'}],
groupOps: [ { op: "AND", text: "所有" }, { op: "OR", text: "任一" } ],
operandTitle : "Click to select search operation.",
resetTitle : "Reset Search Value"
},
edit : {
addCaption: "新增記錄",
editCaption: "編輯記錄",
bSubmit: "提交",
bCancel: "取消",
bClose: "關閉",
saveData: "資料已改變,是否儲存?",
bYes : "是",
bNo : "否",
bExit : "取消",
msg: {
required:"此欄必要",
number:"請輸入有效的數字",
minValue:"值必須大於等於 ",
maxValue:"值必須小於等於 ",
email: "不是有效的e-mail地址",
integer: "請輸入有效整数",
date: "請輸入有效時間",
url: "網址無效。前綴必須為 ('http://' 或 'https://')",
nodefined : " 未定義!",
novalue : " 需要傳回值!",
customarray : "自訂函數應傳回陣列!",
customfcheck : "自訂檢查應有自訂函數!"
}
},
view : {
caption: "查看記錄",
bClose: "關閉"
},
del : {
caption: "刪除",
msg: "刪除已選記錄?",
bSubmit: "刪除",
bCancel: "取消"
},
nav : {
edittext: "",
edittitle: "編輯已選列",
addtext:"",
addtitle: "新增列",
deltext: "",
deltitle: "刪除已選列",
searchtext: "",
searchtitle: "搜尋記錄",
refreshtext: "",
refreshtitle: "重新整理表格",
alertcap: "警告",
alerttext: "請選擇列",
viewtext: "",
viewtitle: "檢視已選列"
},
col : {
caption: "選擇欄",
bSubmit: "確定",
bCancel: "取消"
},
errors : {
errcap : "錯誤",
nourl : "未設定URL",
norecords: "無需要處理的記錄",
model : "colNames 和 colModel 長度不同!"
},
formatter : {
integer : {thousandsSeparator: " ", defaultValue: '0'},
number : {decimalSeparator:".", thousandsSeparator: " ", decimalPlaces: 2, defaultValue: '0.00'},
currency : {decimalSeparator:".", thousandsSeparator: " ", decimalPlaces: 2, prefix: "", suffix:"", defaultValue: '0.00'},
date : {
dayNames: [
"日", "一", "二", "三", "四", "五", "六",
"星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六"
],
monthNames: [
"一", "二", "三", "四", "五", "六", "七", "八", "九", "十", "十一", "十二",
"一月", "二月", "三月", "四月", "五月", "六月", "七月", "八月", "九月", "十月", "十一月", "十二月"
],
AmPm : ["上午","下午","上午","下午"],
S: function (j) {return j < 11 || j > 13 ? ['st', 'nd', 'rd', 'th'][Math.min((j - 1) % 10, 3)] : 'th';},
srcformat: 'Y-m-d',
newformat: 'm-d-Y',
parseRe : /[#%\\\/:_;.,\t\s-]/,
masks : {
ISO8601Long:"Y-m-d H:i:s",
ISO8601Short:"Y-m-d",
ShortDate: "Y/j/n",
LongDate: "l, F d, Y",
FullDateTime: "l, F d, Y g:i:s A",
MonthDay: "F d",
ShortTime: "g:i A",
LongTime: "g:i:s A",
SortableDateTime: "Y-m-d\\TH:i:s",
UniversalSortableDateTime: "Y-m-d H:i:sO",
YearMonth: "F, Y"
},
reformatAfterEdit : false,
userLocalTime : false
},
baseLinkUrl: '',
showAction: '',
target: '',
checkbox : {disabled:true},
idName : 'id'
}
});
})(jQuery);

View file

@ -0,0 +1,136 @@
;(function($){
/**
* jqGrid Ukrainian Translation v1.0 02.07.2009
* Sergey Dyagovchenko
* http://d.sumy.ua
* Dual licensed under the MIT and GPL licenses:
* http://www.opensource.org/licenses/mit-license.php
* http://www.gnu.org/licenses/gpl.html
**/
$.jgrid = $.jgrid || {};
$.extend($.jgrid,{
defaults : {
recordtext: "Перегляд {0} - {1} з {2}",
emptyrecords: "Немає записів для перегляду",
loadtext: "Завантаження...",
pgtext : "Стор. {0} з {1}",
pgfirst : "First Page",
pglast : "Last Page",
pgnext : "Next Page",
pgprev : "Previous Page",
pgrecs : "Records per Page",
showhide: "Toggle Expand Collapse Grid"
},
search : {
caption: "Пошук...",
Find: "Знайти",
Reset: "Скидання",
odata: [{ oper:'eq', text:"рівно"},{ oper:'ne', text:"не рівно"},{ oper:'lt', text:"менше"},{ oper:'le', text:"менше або рівне"},{ oper:'gt', text:"більше"},{ oper:'ge', text:"більше або рівне"},{ oper:'bw', text:"починається з"},{ oper:'bn', text:"не починається з"},{ oper:'in', text:"знаходиться в"},{ oper:'ni', text:"не знаходиться в"},{ oper:'ew', text:"закінчується на"},{ oper:'en', text:"не закінчується на"},{ oper:'cn', text:"містить"},{ oper:'nc', text:"не містить"},{ oper:'nu', text:'is null'},{ oper:'nn', text:'is not null'}],
groupOps: [ { op: "AND", text: "все" }, { op: "OR", text: "будь-який" }],
operandTitle : "Click to select search operation.",
resetTitle : "Reset Search Value"
},
edit : {
addCaption: "Додати запис",
editCaption: "Змінити запис",
bSubmit: "Зберегти",
bCancel: "Відміна",
bClose: "Закрити",
saveData: "До данних були внесені зміни! Зберегти зміни?",
bYes : "Так",
bNo : "Ні",
bExit : "Відміна",
msg: {
required:"Поле є обов'язковим",
number:"Будь ласка, введіть правильне число",
minValue:"значення повинне бути більше або дорівнює",
maxValue:"значення повинно бути менше або дорівнює",
email: "некоректна адреса електронної пошти",
integer: "Будь ласка, введення дійсне ціле значення",
date: "Будь ласка, введення дійсне значення дати",
url: "не дійсний URL. Необхідна приставка ('http://' or 'https://')",
nodefined : " is not defined!",
novalue : " return value is required!",
customarray : "Custom function should return array!",
customfcheck : "Custom function should be present in case of custom checking!"
}
},
view : {
caption: "Переглянути запис",
bClose: "Закрити"
},
del : {
caption: "Видалити",
msg: "Видалити обраний запис(и)?",
bSubmit: "Видалити",
bCancel: "Відміна"
},
nav : {
edittext: " ",
edittitle: "Змінити вибраний запис",
addtext:" ",
addtitle: "Додати новий запис",
deltext: " ",
deltitle: "Видалити вибраний запис",
searchtext: " ",
searchtitle: "Знайти записи",
refreshtext: "",
refreshtitle: "Оновити таблицю",
alertcap: "Попередження",
alerttext: "Будь ласка, виберіть запис",
viewtext: "",
viewtitle: "Переглянути обраний запис"
},
col : {
caption: "Показати/Приховати стовпці",
bSubmit: "Зберегти",
bCancel: "Відміна"
},
errors : {
errcap : "Помилка",
nourl : "URL не задан",
norecords: "Немає записів для обробки",
model : "Число полів не відповідає числу стовпців таблиці!"
},
formatter : {
integer : {thousandsSeparator: " ", defaultValue: '0'},
number : {decimalSeparator:",", thousandsSeparator: " ", decimalPlaces: 2, defaultValue: '0,00'},
currency : {decimalSeparator:",", thousandsSeparator: " ", decimalPlaces: 2, prefix: "", suffix:"", defaultValue: '0,00'},
date : {
dayNames: [
"Нд", "Пн", "Вт", "Ср", "Чт", "Пт", "Сб",
"Неділя", "Понеділок", "Вівторок", "Середа", "Четвер", "П'ятниця", "Субота"
],
monthNames: [
"Січ", "Лют", "Бер", "Кві", "Тра", "Чер", "Лип", "Сер", "Вер", "Жов", "Лис", "Гру",
"Січень", "Лютий", "Березень", "Квітень", "Травень", "Червень", "Липень", "Серпень", "Вересень", "Жовтень", "Листопад", "Грудень"
],
AmPm : ["am","pm","AM","PM"],
S: function (j) {return j < 11 || j > 13 ? ['st', 'nd', 'rd', 'th'][Math.min((j - 1) % 10, 3)] : 'th'},
srcformat: 'Y-m-d',
newformat: 'd.m.Y',
parseRe : /[#%\\\/:_;.,\t\s-]/,
masks : {
ISO8601Long:"Y-m-d H:i:s",
ISO8601Short:"Y-m-d",
ShortDate: "n.j.Y",
LongDate: "l, F d, Y",
FullDateTime: "l, F d, Y G:i:s",
MonthDay: "F d",
ShortTime: "G:i",
LongTime: "G:i:s",
SortableDateTime: "Y-m-d\\TH:i:s",
UniversalSortableDateTime: "Y-m-d H:i:sO",
YearMonth: "F, Y"
},
reformatAfterEdit : false,
userLocalTime : false
},
baseLinkUrl: '',
showAction: '',
target: '',
checkbox : {disabled:true},
idName : 'id'
}
});
})(jQuery);

View file

@ -0,0 +1,177 @@
;(function($){
/**
* jqGrid Vietnamese Translation
* Đình Dũng dungtdc@gmail.com
* http://trirand.com/blog/
* Dual licensed under the MIT and GPL licenses:
* http://www.opensource.org/licenses/mit-license.php
* http://www.gnu.org/licenses/gpl.html
**/
$.jgrid = $.jgrid || {};
$.extend($.jgrid,{
defaults : {
recordtext: "View {0} - {1} of {2}",
emptyrecords: "Không có dữ liệu",
loadtext: "Đang nạp dữ liệu...",
pgtext : "Trang {0} trong tổng số {1}",
pgfirst : "First Page",
pglast : "Last Page",
pgnext : "Next Page",
pgprev : "Previous Page",
pgrecs : "Records per Page",
showhide: "Toggle Expand Collapse Grid"
},
search : {
caption: "Tìm kiếm...",
Find: "Tìm",
Reset: "Khởi tạo lại",
odata: [{ oper:'eq', text:"bằng"},{ oper:'ne', text:"không bằng"},{ oper:'lt', text:"bé hơn"},{ oper:'le', text:"bé hơn hoặc bằng"},{ oper:'gt', text:"lớn hơn"},{ oper:'ge', text:"lớn hơn hoặc bằng"},{ oper:'bw', text:"bắt đầu với"},{ oper:'bn', text:"không bắt đầu với"},{ oper:'in', text:"trong"},{ oper:'ni', text:"không nằm trong"},{ oper:'ew', text:"kết thúc với"},{ oper:'en', text:"không kết thúc với"},{ oper:'cn', text:"chứa"},{ oper:'nc', text:"không chứa"},{ oper:'nu', text:'is null'},{ oper:'nn', text:'is not null'}],
groupOps: [ { op: "VÀ", text: "tất cả" }, { op: "HOẶC", text: "bất kỳ" } ],
operandTitle : "Click to select search operation.",
resetTitle : "Reset Search Value"
},
edit : {
addCaption: "Thêm bản ghi",
editCaption: "Sửa bản ghi",
bSubmit: "Gửi",
bCancel: "Hủy bỏ",
bClose: "Đóng",
saveData: "Dữ liệu đã thay đổi! Có lưu thay đổi không?",
bYes : "Có",
bNo : "Không",
bExit : "Hủy bỏ",
msg: {
required:"Trường dữ liệu bắt buộc có",
number:"Hãy điền đúng số",
minValue:"giá trị phải lớn hơn hoặc bằng với ",
maxValue:"giá trị phải bé hơn hoặc bằng",
email: "không phải là một email đúng",
integer: "Hãy điền đúng số nguyên",
date: "Hãy điền đúng ngày tháng",
url: "không phải là URL. Khởi đầu bắt buộc là ('http://' hoặc 'https://')",
nodefined : " chưa được định nghĩa!",
novalue : " giá trị trả về bắt buộc phải có!",
customarray : "Hàm nên trả về một mảng!",
customfcheck : "Custom function should be present in case of custom checking!"
}
},
view : {
caption: "Xem bản ghi",
bClose: "Đóng"
},
del : {
caption: "Xóa",
msg: "Xóa bản ghi đã chọn?",
bSubmit: "Xóa",
bCancel: "Hủy bỏ"
},
nav : {
edittext: "",
edittitle: "Sửa dòng đã chọn",
addtext:"",
addtitle: "Thêm mới 1 dòng",
deltext: "",
deltitle: "Xóa dòng đã chọn",
searchtext: "",
searchtitle: "Tìm bản ghi",
refreshtext: "",
refreshtitle: "Nạp lại lưới",
alertcap: "Cảnh báo",
alerttext: "Hãy chọn một dòng",
viewtext: "",
viewtitle: "Xem dòng đã chọn"
},
col : {
caption: "Chọn cột",
bSubmit: "OK",
bCancel: "Hủy bỏ"
},
errors : {
errcap : "Lỗi",
nourl : "không url được đặt",
norecords: "Không có bản ghi để xử lý",
model : "Chiều dài của colNames <> colModel!"
},
formatter : {
integer : {thousandsSeparator: ".", defaultValue: '0'},
number : {decimalSeparator:",", thousandsSeparator: ".", decimalPlaces: 2, defaultValue: '0'},
currency : {decimalSeparator:",", thousandsSeparator: ".", decimalPlaces: 2, prefix: "", suffix:"", defaultValue: '0'},
date : {
dayNames: [
"CN", "T2", "T3", "T4", "T5", "T6", "T7",
"Chủ nhật", "Thứ hai", "Thứ ba", "Thứ tư", "Thứ năm", "Thứ sáu", "Thứ bảy"
],
monthNames: [
"Th1", "Th2", "Th3", "Th4", "Th5", "Th6", "Th7", "Th8", "Th9", "Th10", "Th11", "Th12",
"Tháng một", "Tháng hai", "Tháng ba", "Tháng tư", "Tháng năm", "Tháng sáu", "Tháng bảy", "Tháng tám", "Tháng chín", "Tháng mười", "Tháng mười một", "Tháng mười hai"
],
AmPm : ["sáng","chiều","SÁNG","CHIỀU"],
S: function (j) {return j < 11 || j > 13 ? ['st', 'nd', 'rd', 'th'][Math.min((j - 1) % 10, 3)] : 'th';},
srcformat: 'Y-m-d',
newformat: 'n/j/Y',
parseRe : /[#%\\\/:_;.,\t\s-]/,
masks : {
// see http://php.net/manual/en/function.date.php for PHP format used in jqGrid
// and see http://docs.jquery.com/UI/Datepicker/formatDate
// and https://github.com/jquery/globalize#dates for alternative formats used frequently
// one can find on https://github.com/jquery/globalize/tree/master/lib/cultures many
// information about date, time, numbers and currency formats used in different countries
// one should just convert the information in PHP format
ISO8601Long:"Y-m-d H:i:s",
ISO8601Short:"Y-m-d",
// short date:
// n - Numeric representation of a month, without leading zeros
// j - Day of the month without leading zeros
// Y - A full numeric representation of a year, 4 digits
// example: 3/1/2012 which means 1 March 2012
ShortDate: "n/j/Y", // in jQuery UI Datepicker: "M/d/yyyy"
// long date:
// l - A full textual representation of the day of the week
// F - A full textual representation of a month
// d - Day of the month, 2 digits with leading zeros
// Y - A full numeric representation of a year, 4 digits
LongDate: "l, F d, Y", // in jQuery UI Datepicker: "dddd, MMMM dd, yyyy"
// long date with long time:
// l - A full textual representation of the day of the week
// F - A full textual representation of a month
// d - Day of the month, 2 digits with leading zeros
// Y - A full numeric representation of a year, 4 digits
// g - 12-hour format of an hour without leading zeros
// i - Minutes with leading zeros
// s - Seconds, with leading zeros
// A - Uppercase Ante meridiem and Post meridiem (AM or PM)
FullDateTime: "l, F d, Y g:i:s A", // in jQuery UI Datepicker: "dddd, MMMM dd, yyyy h:mm:ss tt"
// month day:
// F - A full textual representation of a month
// d - Day of the month, 2 digits with leading zeros
MonthDay: "F d", // in jQuery UI Datepicker: "MMMM dd"
// short time (without seconds)
// g - 12-hour format of an hour without leading zeros
// i - Minutes with leading zeros
// A - Uppercase Ante meridiem and Post meridiem (AM or PM)
ShortTime: "g:i A", // in jQuery UI Datepicker: "h:mm tt"
// long time (with seconds)
// g - 12-hour format of an hour without leading zeros
// i - Minutes with leading zeros
// s - Seconds, with leading zeros
// A - Uppercase Ante meridiem and Post meridiem (AM or PM)
LongTime: "g:i:s A", // in jQuery UI Datepicker: "h:mm:ss tt"
SortableDateTime: "Y-m-d\\TH:i:s",
UniversalSortableDateTime: "Y-m-d H:i:sO",
// month with year
// Y - A full numeric representation of a year, 4 digits
// F - A full textual representation of a month
YearMonth: "F, Y" // in jQuery UI Datepicker: "MMMM, yyyy"
},
reformatAfterEdit : false,
userLocalTime : false
},
baseLinkUrl: '',
showAction: '',
target: '',
checkbox : {disabled:true},
idName : 'id'
}
});
})(jQuery);

View file

@ -0,0 +1,71 @@
/*
* jqDnR - Minimalistic Drag'n'Resize for jQuery.
*
* Copyright (c) 2007 Brice Burgess <bhb@iceburg.net>, http://www.iceburg.net
* Licensed under the MIT License:
* http://www.opensource.org/licenses/mit-license.php
*
* $Version: 2007.08.19 +r2
*/
(function($){
$.fn.jqDrag=function(h){return i(this,h,'d');};
$.fn.jqResize=function(h,ar){return i(this,h,'r',ar);};
$.jqDnR={
dnr:{},
e:0,
drag:function(v){
if(M.k == 'd'){E.css({left:M.X+v.pageX-M.pX,top:M.Y+v.pageY-M.pY});}
else {
E.css({width:Math.max(v.pageX-M.pX+M.W,0),height:Math.max(v.pageY-M.pY+M.H,0)});
if(M1){E1.css({width:Math.max(v.pageX-M1.pX+M1.W,0),height:Math.max(v.pageY-M1.pY+M1.H,0)});}
}
return false;
},
stop:function(){
//E.css('opacity',M.o);
$(document).unbind('mousemove',J.drag).unbind('mouseup',J.stop);
}
};
var J=$.jqDnR,M=J.dnr,E=J.e,E1,M1,
i=function(e,h,k,aR){
return e.each(function(){
h=(h)?$(h,e):e;
h.bind('mousedown',{e:e,k:k},function(v){
var d=v.data,p={};E=d.e;E1 = aR ? $(aR) : false;
// attempt utilization of dimensions plugin to fix IE issues
if(E.css('position') != 'relative'){try{E.position(p);}catch(e){}}
M={
X:p.left||f('left')||0,
Y:p.top||f('top')||0,
W:f('width')||E[0].scrollWidth||0,
H:f('height')||E[0].scrollHeight||0,
pX:v.pageX,
pY:v.pageY,
k:d.k
//o:E.css('opacity')
};
// also resize
if(E1 && d.k != 'd'){
M1={
X:p.left||f1('left')||0,
Y:p.top||f1('top')||0,
W:E1[0].offsetWidth||f1('width')||0,
H:E1[0].offsetHeight||f1('height')||0,
pX:v.pageX,
pY:v.pageY,
k:d.k
};
} else {M1 = false;}
//E.css({opacity:0.8});
if($("input.hasDatepicker",E[0])[0]) {
try {$("input.hasDatepicker",E[0]).datepicker('hide');}catch (dpe){}
}
$(document).mousemove($.jqDnR.drag).mouseup($.jqDnR.stop);
return false;
});
});
},
f=function(k){return parseInt(E.css(k),10)||false;},
f1=function(k){return parseInt(E1.css(k),10)||false;};
})(jQuery);

View file

@ -0,0 +1,68 @@
/*
* jqModal - Minimalist Modaling with jQuery
* (http://dev.iceburg.net/jquery/jqmodal/)
*
* Copyright (c) 2007,2008 Brice Burgess <bhb@iceburg.net>
* Dual licensed under the MIT and GPL licenses:
* http://www.opensource.org/licenses/mit-license.php
* http://www.gnu.org/licenses/gpl.html
*
* $Version: 07/06/2008 +r13
*/
(function($) {
$.fn.jqm=function(o){
var p={
overlay: 50,
closeoverlay : true,
overlayClass: 'jqmOverlay',
closeClass: 'jqmClose',
trigger: '.jqModal',
ajax: F,
ajaxText: '',
target: F,
modal: F,
toTop: F,
onShow: F,
onHide: F,
onLoad: F
};
return this.each(function(){if(this._jqm)return H[this._jqm].c=$.extend({},H[this._jqm].c,o);s++;this._jqm=s;
H[s]={c:$.extend(p,$.jqm.params,o),a:F,w:$(this).addClass('jqmID'+s),s:s};
if(p.trigger)$(this).jqmAddTrigger(p.trigger);
});};
$.fn.jqmAddClose=function(e){return hs(this,e,'jqmHide');};
$.fn.jqmAddTrigger=function(e){return hs(this,e,'jqmShow');};
$.fn.jqmShow=function(t){return this.each(function(){$.jqm.open(this._jqm,t);});};
$.fn.jqmHide=function(t){return this.each(function(){$.jqm.close(this._jqm,t)});};
$.jqm = {
hash:{},
open:function(s,t){var h=H[s],c=h.c,cc='.'+c.closeClass,z=(parseInt(h.w.css('z-index')));z=(z>0)?z:3000;var o=$('<div></div>').css({height:'100%',width:'100%',position:'fixed',left:0,top:0,'z-index':z-1,opacity:c.overlay/100});if(h.a)return F;h.t=t;h.a=true;h.w.css('z-index',z);
if(c.modal) {if(!A[0])setTimeout(function(){L('bind');},1);A.push(s);}
else if(c.overlay > 0) {if(c.closeoverlay) h.w.jqmAddClose(o);}
else o=F;
h.o=(o)?o.addClass(c.overlayClass).prependTo('body'):F;
if(c.ajax) {var r=c.target||h.w,u=c.ajax;r=(typeof r == 'string')?$(r,h.w):$(r);u=(u.substr(0,1) == '@')?$(t).attr(u.substring(1)):u;
r.html(c.ajaxText).load(u,function(){if(c.onLoad)c.onLoad.call(this,h);if(cc)h.w.jqmAddClose($(cc,h.w));e(h);});}
else if(cc)h.w.jqmAddClose($(cc,h.w));
if(c.toTop&&h.o)h.w.before('<span id="jqmP'+h.w[0]._jqm+'"></span>').insertAfter(h.o);
(c.onShow)?c.onShow(h):h.w.show();e(h);return F;
},
close:function(s){var h=H[s];if(!h.a)return F;h.a=F;
if(A[0]){A.pop();if(!A[0])L('unbind');}
if(h.c.toTop&&h.o)$('#jqmP'+h.w[0]._jqm).after(h.w).remove();
if(h.c.onHide)h.c.onHide(h);else{h.w.hide();if(h.o)h.o.remove();} return F;
},
params:{}};
var s=0,H=$.jqm.hash,A=[],F=false,
e=function(h){f(h);},
f=function(h){try{$(':input:visible',h.w)[0].focus();}catch(_){}},
L=function(t){$(document)[t]("keypress",m)[t]("keydown",m)[t]("mousedown",m);},
m=function(e){var h=H[A[A.length-1]],r=(!$(e.target).parents('.jqmID'+h.s)[0]);if(r){$('.jqmID'+h.s).each(function(){var $self=$(this),offset=$self.offset();if(offset.top<=e.pageY && e.pageY<=offset.top+$self.height() && offset.left<=e.pageX && e.pageX<=offset.left+$self.width()){r=false;return false;}});f(h);}return !r;},
hs=function(w,t,c){return w.each(function(){var s=this._jqm;$(t).each(function() {
if(!this[c]){this[c]=[];$(this).click(function(){for(var i in {jqmShow:1,jqmHide:1})for(var s in this[i])if(H[this[i][s]])H[this[i][s]].w[i](this);return F;});}this[c].push(s);});});};
})(jQuery);

View file

@ -0,0 +1,467 @@
/*
**
* formatter for values but most of the values if for jqGrid
* Some of this was inspired and based on how YUI does the table datagrid but in jQuery fashion
* we are trying to keep it as light as possible
* Joshua Burnett josh@9ci.com
* http://www.greenbill.com
*
* Changes from Tony Tomov tony@trirand.com
* Dual licensed under the MIT and GPL licenses:
* http://www.opensource.org/licenses/mit-license.php
* http://www.gnu.org/licenses/gpl-2.0.html
*
**/
/*jshint eqeqeq:false */
/*global jQuery */
(function($) {
"use strict";
$.fmatter = {};
//opts can be id:row id for the row, rowdata:the data for the row, colmodel:the column model for this column
//example {id:1234,}
$.extend($.fmatter,{
isBoolean : function(o) {
return typeof o === 'boolean';
},
isObject : function(o) {
return (o && (typeof o === 'object' || $.isFunction(o))) || false;
},
isString : function(o) {
return typeof o === 'string';
},
isNumber : function(o) {
return typeof o === 'number' && isFinite(o);
},
isValue : function (o) {
return (this.isObject(o) || this.isString(o) || this.isNumber(o) || this.isBoolean(o));
},
isEmpty : function(o) {
if(!this.isString(o) && this.isValue(o)) {
return false;
}
if (!this.isValue(o)){
return true;
}
o = $.trim(o).replace(/\&nbsp\;/ig,'').replace(/\&#160\;/ig,'');
return o==="";
}
});
$.fn.fmatter = function(formatType, cellval, opts, rwd, act) {
// build main options before element iteration
var v=cellval;
opts = $.extend({}, $.jgrid.formatter, opts);
try {
v = $.fn.fmatter[formatType].call(this, cellval, opts, rwd, act);
} catch(fe){}
return v;
};
$.fmatter.util = {
// Taken from YAHOO utils
NumberFormat : function(nData,opts) {
if(!$.fmatter.isNumber(nData)) {
nData *= 1;
}
if($.fmatter.isNumber(nData)) {
var bNegative = (nData < 0);
var sOutput = String(nData);
var sDecimalSeparator = opts.decimalSeparator || ".";
var nDotIndex;
if($.fmatter.isNumber(opts.decimalPlaces)) {
// Round to the correct decimal place
var nDecimalPlaces = opts.decimalPlaces;
var nDecimal = Math.pow(10, nDecimalPlaces);
sOutput = String(Math.round(nData*nDecimal)/nDecimal);
nDotIndex = sOutput.lastIndexOf(".");
if(nDecimalPlaces > 0) {
// Add the decimal separator
if(nDotIndex < 0) {
sOutput += sDecimalSeparator;
nDotIndex = sOutput.length-1;
}
// Replace the "."
else if(sDecimalSeparator !== "."){
sOutput = sOutput.replace(".",sDecimalSeparator);
}
// Add missing zeros
while((sOutput.length - 1 - nDotIndex) < nDecimalPlaces) {
sOutput += "0";
}
}
}
if(opts.thousandsSeparator) {
var sThousandsSeparator = opts.thousandsSeparator;
nDotIndex = sOutput.lastIndexOf(sDecimalSeparator);
nDotIndex = (nDotIndex > -1) ? nDotIndex : sOutput.length;
var sNewOutput = sOutput.substring(nDotIndex);
var nCount = -1, i;
for (i=nDotIndex; i>0; i--) {
nCount++;
if ((nCount%3 === 0) && (i !== nDotIndex) && (!bNegative || (i > 1))) {
sNewOutput = sThousandsSeparator + sNewOutput;
}
sNewOutput = sOutput.charAt(i-1) + sNewOutput;
}
sOutput = sNewOutput;
}
// Prepend prefix
sOutput = (opts.prefix) ? opts.prefix + sOutput : sOutput;
// Append suffix
sOutput = (opts.suffix) ? sOutput + opts.suffix : sOutput;
return sOutput;
}
return nData;
}
};
$.fn.fmatter.defaultFormat = function(cellval, opts) {
return ($.fmatter.isValue(cellval) && cellval!=="" ) ? cellval : opts.defaultValue || "&#160;";
};
$.fn.fmatter.email = function(cellval, opts) {
if(!$.fmatter.isEmpty(cellval)) {
return "<a href=\"mailto:" + cellval + "\">" + cellval + "</a>";
}
return $.fn.fmatter.defaultFormat(cellval,opts );
};
$.fn.fmatter.checkbox =function(cval, opts) {
var op = $.extend({},opts.checkbox), ds;
if(opts.colModel !== undefined && opts.colModel.formatoptions !== undefined) {
op = $.extend({},op,opts.colModel.formatoptions);
}
if(op.disabled===true) {ds = "disabled=\"disabled\"";} else {ds="";}
if($.fmatter.isEmpty(cval) || cval === undefined ) {cval = $.fn.fmatter.defaultFormat(cval,op);}
cval=String(cval);
cval=(cval+"").toLowerCase();
var bchk = cval.search(/(false|f|0|no|n|off|undefined)/i)<0 ? " checked='checked' " : "";
return "<input type=\"checkbox\" " + bchk + " value=\""+ cval+"\" offval=\"no\" "+ds+ "/>";
};
$.fn.fmatter.link = function(cellval, opts) {
var op = {target:opts.target};
var target = "";
if(opts.colModel !== undefined && opts.colModel.formatoptions !== undefined) {
op = $.extend({},op,opts.colModel.formatoptions);
}
if(op.target) {target = 'target=' + op.target;}
if(!$.fmatter.isEmpty(cellval)) {
return "<a "+target+" href=\"" + cellval + "\">" + cellval + "</a>";
}
return $.fn.fmatter.defaultFormat(cellval,opts);
};
$.fn.fmatter.showlink = function(cellval, opts) {
var op = {baseLinkUrl: opts.baseLinkUrl,showAction:opts.showAction, addParam: opts.addParam || "", target: opts.target, idName: opts.idName},
target = "", idUrl;
if(opts.colModel !== undefined && opts.colModel.formatoptions !== undefined) {
op = $.extend({},op,opts.colModel.formatoptions);
}
if(op.target) {target = 'target=' + op.target;}
idUrl = op.baseLinkUrl+op.showAction + '?'+ op.idName+'='+opts.rowId+op.addParam;
if($.fmatter.isString(cellval) || $.fmatter.isNumber(cellval)) { //add this one even if its blank string
return "<a "+target+" href=\"" + idUrl + "\">" + cellval + "</a>";
}
return $.fn.fmatter.defaultFormat(cellval,opts);
};
$.fn.fmatter.integer = function(cellval, opts) {
var op = $.extend({},opts.integer);
if(opts.colModel !== undefined && opts.colModel.formatoptions !== undefined) {
op = $.extend({},op,opts.colModel.formatoptions);
}
if($.fmatter.isEmpty(cellval)) {
return op.defaultValue;
}
return $.fmatter.util.NumberFormat(cellval,op);
};
$.fn.fmatter.number = function (cellval, opts) {
var op = $.extend({},opts.number);
if(opts.colModel !== undefined && opts.colModel.formatoptions !== undefined) {
op = $.extend({},op,opts.colModel.formatoptions);
}
if($.fmatter.isEmpty(cellval)) {
return op.defaultValue;
}
return $.fmatter.util.NumberFormat(cellval,op);
};
$.fn.fmatter.currency = function (cellval, opts) {
var op = $.extend({},opts.currency);
if(opts.colModel !== undefined && opts.colModel.formatoptions !== undefined) {
op = $.extend({},op,opts.colModel.formatoptions);
}
if($.fmatter.isEmpty(cellval)) {
return op.defaultValue;
}
return $.fmatter.util.NumberFormat(cellval,op);
};
$.fn.fmatter.date = function (cellval, opts, rwd, act) {
var op = $.extend({},opts.date);
if(opts.colModel !== undefined && opts.colModel.formatoptions !== undefined) {
op = $.extend({},op,opts.colModel.formatoptions);
}
if(!op.reformatAfterEdit && act === 'edit'){
return $.fn.fmatter.defaultFormat(cellval, opts);
}
if(!$.fmatter.isEmpty(cellval)) {
return $.jgrid.parseDate(op.srcformat,cellval,op.newformat,op);
}
return $.fn.fmatter.defaultFormat(cellval, opts);
};
$.fn.fmatter.select = function (cellval,opts) {
// jqGrid specific
cellval = String(cellval);
var oSelect = false, ret=[], sep, delim;
if(opts.colModel.formatoptions !== undefined){
oSelect= opts.colModel.formatoptions.value;
sep = opts.colModel.formatoptions.separator === undefined ? ":" : opts.colModel.formatoptions.separator;
delim = opts.colModel.formatoptions.delimiter === undefined ? ";" : opts.colModel.formatoptions.delimiter;
} else if(opts.colModel.editoptions !== undefined){
oSelect= opts.colModel.editoptions.value;
sep = opts.colModel.editoptions.separator === undefined ? ":" : opts.colModel.editoptions.separator;
delim = opts.colModel.editoptions.delimiter === undefined ? ";" : opts.colModel.editoptions.delimiter;
}
if (oSelect) {
var msl = (opts.colModel.editoptions != null && opts.colModel.editoptions.multiple === true) === true ? true : false,
scell = [], sv;
if(msl) {scell = cellval.split(",");scell = $.map(scell,function(n){return $.trim(n);});}
if ($.fmatter.isString(oSelect)) {
// mybe here we can use some caching with care ????
var so = oSelect.split(delim), j=0, i;
for(i=0; i<so.length;i++){
sv = so[i].split(sep);
if(sv.length > 2 ) {
sv[1] = $.map(sv,function(n,i){if(i>0) {return n;}}).join(sep);
}
if(msl) {
if($.inArray(sv[0],scell)>-1) {
ret[j] = sv[1];
j++;
}
} else if($.trim(sv[0]) === $.trim(cellval)) {
ret[0] = sv[1];
break;
}
}
} else if($.fmatter.isObject(oSelect)) {
// this is quicker
if(msl) {
ret = $.map(scell, function(n){
return oSelect[n];
});
} else {
ret[0] = oSelect[cellval] || "";
}
}
}
cellval = ret.join(", ");
return cellval === "" ? $.fn.fmatter.defaultFormat(cellval,opts) : cellval;
};
$.fn.fmatter.rowactions = function(act) {
var $tr = $(this).closest("tr.jqgrow"),
rid = $tr.attr("id"),
$id = $(this).closest("table.ui-jqgrid-btable").attr('id').replace(/_frozen([^_]*)$/,'$1'),
$grid = $("#"+$id),
$t = $grid[0],
p = $t.p,
cm = p.colModel[$.jgrid.getCellIndex(this)],
$actionsDiv = cm.frozen ? $("tr#"+rid+" td:eq("+$.jgrid.getCellIndex(this)+") > div",$grid) :$(this).parent(),
op = {
extraparam: {}
},
saverow = function(rowid, res) {
if($.isFunction(op.afterSave)) { op.afterSave.call($t, rowid, res); }
$actionsDiv.find("div.ui-inline-edit,div.ui-inline-del").show();
$actionsDiv.find("div.ui-inline-save,div.ui-inline-cancel").hide();
},
restorerow = function(rowid) {
if($.isFunction(op.afterRestore)) { op.afterRestore.call($t, rowid); }
$actionsDiv.find("div.ui-inline-edit,div.ui-inline-del").show();
$actionsDiv.find("div.ui-inline-save,div.ui-inline-cancel").hide();
};
if (cm.formatoptions !== undefined) {
op = $.extend(op,cm.formatoptions);
}
if (p.editOptions !== undefined) {
op.editOptions = p.editOptions;
}
if (p.delOptions !== undefined) {
op.delOptions = p.delOptions;
}
if ($tr.hasClass("jqgrid-new-row")){
op.extraparam[p.prmNames.oper] = p.prmNames.addoper;
}
var actop = {
keys: op.keys,
oneditfunc: op.onEdit,
successfunc: op.onSuccess,
url: op.url,
extraparam: op.extraparam,
aftersavefunc: saverow,
errorfunc: op.onError,
afterrestorefunc: restorerow,
restoreAfterError: op.restoreAfterError,
mtype: op.mtype
};
switch(act)
{
case 'edit':
$grid.jqGrid('editRow', rid, actop);
$actionsDiv.find("div.ui-inline-edit,div.ui-inline-del").hide();
$actionsDiv.find("div.ui-inline-save,div.ui-inline-cancel").show();
$grid.triggerHandler("jqGridAfterGridComplete");
break;
case 'save':
if ($grid.jqGrid('saveRow', rid, actop)) {
$actionsDiv.find("div.ui-inline-edit,div.ui-inline-del").show();
$actionsDiv.find("div.ui-inline-save,div.ui-inline-cancel").hide();
$grid.triggerHandler("jqGridAfterGridComplete");
}
break;
case 'cancel' :
$grid.jqGrid('restoreRow', rid, restorerow);
$actionsDiv.find("div.ui-inline-edit,div.ui-inline-del").show();
$actionsDiv.find("div.ui-inline-save,div.ui-inline-cancel").hide();
$grid.triggerHandler("jqGridAfterGridComplete");
break;
case 'del':
$grid.jqGrid('delGridRow', rid, op.delOptions);
break;
case 'formedit':
$grid.jqGrid('setSelection', rid);
$grid.jqGrid('editGridRow', rid, op.editOptions);
break;
}
};
$.fn.fmatter.actions = function(cellval,opts) {
var op={keys:false, editbutton:true, delbutton:true, editformbutton: false},
rowid=opts.rowId, str="",ocl;
if(opts.colModel.formatoptions !== undefined) {
op = $.extend(op,opts.colModel.formatoptions);
}
if(rowid === undefined || $.fmatter.isEmpty(rowid)) {return "";}
if(op.editformbutton){
ocl = "id='jEditButton_"+rowid+"' onclick=jQuery.fn.fmatter.rowactions.call(this,'formedit'); onmouseover=jQuery(this).addClass('ui-state-hover'); onmouseout=jQuery(this).removeClass('ui-state-hover'); ";
str += "<div title='"+$.jgrid.nav.edittitle+"' style='float:left;cursor:pointer;' class='ui-pg-div ui-inline-edit' "+ocl+"><span class='ui-icon ui-icon-pencil'></span></div>";
} else if(op.editbutton){
ocl = "id='jEditButton_"+rowid+"' onclick=jQuery.fn.fmatter.rowactions.call(this,'edit'); onmouseover=jQuery(this).addClass('ui-state-hover'); onmouseout=jQuery(this).removeClass('ui-state-hover') ";
str += "<div title='"+$.jgrid.nav.edittitle+"' style='float:left;cursor:pointer;' class='ui-pg-div ui-inline-edit' "+ocl+"><span class='ui-icon ui-icon-pencil'></span></div>";
}
if(op.delbutton) {
ocl = "id='jDeleteButton_"+rowid+"' onclick=jQuery.fn.fmatter.rowactions.call(this,'del'); onmouseover=jQuery(this).addClass('ui-state-hover'); onmouseout=jQuery(this).removeClass('ui-state-hover'); ";
str += "<div title='"+$.jgrid.nav.deltitle+"' style='float:left;margin-left:5px;' class='ui-pg-div ui-inline-del' "+ocl+"><span class='ui-icon ui-icon-trash'></span></div>";
}
ocl = "id='jSaveButton_"+rowid+"' onclick=jQuery.fn.fmatter.rowactions.call(this,'save'); onmouseover=jQuery(this).addClass('ui-state-hover'); onmouseout=jQuery(this).removeClass('ui-state-hover'); ";
str += "<div title='"+$.jgrid.edit.bSubmit+"' style='float:left;display:none' class='ui-pg-div ui-inline-save' "+ocl+"><span class='ui-icon ui-icon-disk'></span></div>";
ocl = "id='jCancelButton_"+rowid+"' onclick=jQuery.fn.fmatter.rowactions.call(this,'cancel'); onmouseover=jQuery(this).addClass('ui-state-hover'); onmouseout=jQuery(this).removeClass('ui-state-hover'); ";
str += "<div title='"+$.jgrid.edit.bCancel+"' style='float:left;display:none;margin-left:5px;' class='ui-pg-div ui-inline-cancel' "+ocl+"><span class='ui-icon ui-icon-cancel'></span></div>";
return "<div style='margin-left:8px;'>" + str + "</div>";
};
$.unformat = function (cellval,options,pos,cnt) {
// specific for jqGrid only
var ret, formatType = options.colModel.formatter,
op =options.colModel.formatoptions || {}, sep,
re = /([\.\*\_\'\(\)\{\}\+\?\\])/g,
unformatFunc = options.colModel.unformat||($.fn.fmatter[formatType] && $.fn.fmatter[formatType].unformat);
if(unformatFunc !== undefined && $.isFunction(unformatFunc) ) {
ret = unformatFunc.call(this, $(cellval).text(), options, cellval);
} else if(formatType !== undefined && $.fmatter.isString(formatType) ) {
var opts = $.jgrid.formatter || {}, stripTag;
switch(formatType) {
case 'integer' :
op = $.extend({},opts.integer,op);
sep = op.thousandsSeparator.replace(re,"\\$1");
stripTag = new RegExp(sep, "g");
ret = $(cellval).text().replace(stripTag,'');
break;
case 'number' :
op = $.extend({},opts.number,op);
sep = op.thousandsSeparator.replace(re,"\\$1");
stripTag = new RegExp(sep, "g");
ret = $(cellval).text().replace(stripTag,"").replace(op.decimalSeparator,'.');
break;
case 'currency':
op = $.extend({},opts.currency,op);
sep = op.thousandsSeparator.replace(re,"\\$1");
stripTag = new RegExp(sep, "g");
ret = $(cellval).text();
if (op.prefix && op.prefix.length) {
ret = ret.substr(op.prefix.length);
}
if (op.suffix && op.suffix.length) {
ret = ret.substr(0, ret.length - op.suffix.length);
}
ret = ret.replace(stripTag,'').replace(op.decimalSeparator,'.');
break;
case 'checkbox':
var cbv = (options.colModel.editoptions) ? options.colModel.editoptions.value.split(":") : ["Yes","No"];
ret = $('input',cellval).is(":checked") ? cbv[0] : cbv[1];
break;
case 'select' :
ret = $.unformat.select(cellval,options,pos,cnt);
break;
case 'actions':
return "";
default:
ret= $(cellval).text();
}
}
return ret !== undefined ? ret : cnt===true ? $(cellval).text() : $.jgrid.htmlDecode($(cellval).html());
};
$.unformat.select = function (cellval,options,pos,cnt) {
// Spacial case when we have local data and perform a sort
// cnt is set to true only in sortDataArray
var ret = [];
var cell = $(cellval).text();
if(cnt===true) {return cell;}
var op = $.extend({}, options.colModel.formatoptions !== undefined ? options.colModel.formatoptions: options.colModel.editoptions),
sep = op.separator === undefined ? ":" : op.separator,
delim = op.delimiter === undefined ? ";" : op.delimiter;
if(op.value){
var oSelect = op.value,
msl = op.multiple === true ? true : false,
scell = [], sv;
if(msl) {scell = cell.split(",");scell = $.map(scell,function(n){return $.trim(n);});}
if ($.fmatter.isString(oSelect)) {
var so = oSelect.split(delim), j=0, i;
for(i=0; i<so.length;i++){
sv = so[i].split(sep);
if(sv.length > 2 ) {
sv[1] = $.map(sv,function(n,i){if(i>0) {return n;}}).join(sep);
}
if(msl) {
if($.inArray(sv[1],scell)>-1) {
ret[j] = sv[0];
j++;
}
} else if($.trim(sv[1]) === $.trim(cell)) {
ret[0] = sv[0];
break;
}
}
} else if($.fmatter.isObject(oSelect) || $.isArray(oSelect) ){
if(!msl) {scell[0] = cell;}
ret = $.map(scell, function(n){
var rv;
$.each(oSelect, function(i,val){
if (val === n) {
rv = i;
return false;
}
});
if( rv !== undefined ) {return rv;}
});
}
return ret.join(", ");
}
return cell || "";
};
$.unformat.date = function (cellval, opts) {
var op = $.jgrid.formatter.date || {};
if(opts.formatoptions !== undefined) {
op = $.extend({},op,opts.formatoptions);
}
if(!$.fmatter.isEmpty(cellval)) {
return $.jgrid.parseDate(op.newformat,cellval,op.srcformat,op);
}
return $.fn.fmatter.defaultFormat(cellval, opts);
};
})(jQuery);

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,544 @@
/*
jqGrid 4.6.0 - jQuery Grid
Copyright (c) 2008, Tony Tomov, tony@trirand.com
Dual licensed under the MIT and GPL licenses
http://www.opensource.org/licenses/mit-license.php
http://www.gnu.org/licenses/gpl-2.0.html
Date: 2014-02-20
*/
(function(a){a.jgrid=a.jgrid||{};a.extend(a.jgrid,{version:"4.6.0",htmlDecode:function(a){return a&&("&nbsp;"===a||"&#160;"===a||1===a.length&&160===a.charCodeAt(0))?"":a?String(a).replace(/&gt;/g,">").replace(/&lt;/g,"<").replace(/&quot;/g,'"').replace(/&amp;/g,"&"):a},htmlEncode:function(a){return a?String(a).replace(/&/g,"&amp;").replace(/\"/g,"&quot;").replace(/</g,"&lt;").replace(/>/g,"&gt;"):a},format:function(d){var e=a.makeArray(arguments).slice(1);null==d&&(d="");return d.replace(/\{(\d+)\}/g,
function(a,d){return e[d]})},msie:"Microsoft Internet Explorer"===navigator.appName,msiever:function(){var a=-1;null!=/MSIE ([0-9]{1,}[.0-9]{0,})/.exec(navigator.userAgent)&&(a=parseFloat(RegExp.$1));return a},getCellIndex:function(d){d=a(d);if(d.is("tr"))return-1;d=(d.is("td")||d.is("th")?d:d.closest("td,th"))[0];return a.jgrid.msie?a.inArray(d,d.parentNode.cells):d.cellIndex},stripHtml:function(a){a=String(a);var e=/<("[^"]*"|'[^']*'|[^'">])*>/gi;return a?(a=a.replace(e,""))&&"&nbsp;"!==a&&"&#160;"!==
a?a.replace(/\"/g,"'"):"":a},stripPref:function(d,e){var b=a.type(d);if("string"===b||"number"===b)d=String(d),e=""!==d?String(e).replace(String(d),""):e;return e},parse:function(d){"while(1);"===d.substr(0,9)&&(d=d.substr(9));"/*"===d.substr(0,2)&&(d=d.substr(2,d.length-4));d||(d="{}");return!0===a.jgrid.useJSON&&"object"===typeof JSON&&"function"===typeof JSON.parse?JSON.parse(d):eval("("+d+")")},parseDate:function(d,e,b,f){var c=/^\/Date\((([-+])?[0-9]+)(([-+])([0-9]{2})([0-9]{2}))?\)\/$/,h="string"===
typeof e?e.match(c):null,c=function(a,c){a=String(a);for(c=parseInt(c,10)||2;a.length<c;)a="0"+a;return a},g={m:1,d:1,y:1970,h:0,i:0,s:0,u:0},k=0,l,m,k=function(a,c){0===a?12===c&&(c=0):12!==c&&(c+=12);return c};void 0===f&&(f=a.jgrid.formatter.date);void 0===f.parseRe&&(f.parseRe=/[#%\\\/:_;.,\t\s-]/);f.masks.hasOwnProperty(d)&&(d=f.masks[d]);if(e&&null!=e)if(isNaN(e-0)||"u"!==String(d).toLowerCase())if(e.constructor===Date)k=e;else if(null!==h){if(k=new Date(parseInt(h[1],10)),h[3]){var p=60*Number(h[5])+
Number(h[6]),p=p*("-"===h[4]?1:-1),p=p-k.getTimezoneOffset();k.setTime(Number(Number(k)+6E4*p))}}else{p=0;"ISO8601Long"===f.srcformat&&"Z"===e.charAt(e.length-1)&&(p-=(new Date).getTimezoneOffset());e=String(e).replace(/\T/g,"#").replace(/\t/,"%").split(f.parseRe);d=d.replace(/\T/g,"#").replace(/\t/,"%").split(f.parseRe);l=0;for(m=d.length;l<m;l++)"M"===d[l]&&(h=a.inArray(e[l],f.monthNames),-1!==h&&12>h&&(e[l]=h+1,g.m=e[l])),"F"===d[l]&&(h=a.inArray(e[l],f.monthNames,12),-1!==h&&11<h&&(e[l]=h+1-12,
g.m=e[l])),"a"===d[l]&&(h=a.inArray(e[l],f.AmPm),-1!==h&&2>h&&e[l]===f.AmPm[h]&&(e[l]=h,g.h=k(e[l],g.h))),"A"===d[l]&&(h=a.inArray(e[l],f.AmPm),-1!==h&&1<h&&e[l]===f.AmPm[h]&&(e[l]=h-2,g.h=k(e[l],g.h))),"g"===d[l]&&(g.h=parseInt(e[l],10)),void 0!==e[l]&&(g[d[l].toLowerCase()]=parseInt(e[l],10));g.f&&(g.m=g.f);if(0===g.m&&0===g.y&&0===g.d)return"&#160;";g.m=parseInt(g.m,10)-1;k=g.y;70<=k&&99>=k?g.y=1900+g.y:0<=k&&69>=k&&(g.y=2E3+g.y);k=new Date(g.y,g.m,g.d,g.h,g.i,g.s,g.u);0<p&&k.setTime(Number(Number(k)+
6E4*p))}else k=new Date(1E3*parseFloat(e));else k=new Date(g.y,g.m,g.d,g.h,g.i,g.s,g.u);if(void 0===b)return k;f.masks.hasOwnProperty(b)?b=f.masks[b]:b||(b="Y-m-d");d=k.getHours();e=k.getMinutes();g=k.getDate();p=k.getMonth()+1;h=k.getTimezoneOffset();l=k.getSeconds();m=k.getMilliseconds();var r=k.getDay(),q=k.getFullYear(),n=(r+6)%7+1,s=(new Date(q,p-1,g)-new Date(q,0,1))/864E5,t={d:c(g),D:f.dayNames[r],j:g,l:f.dayNames[r+7],N:n,S:f.S(g),w:r,z:s,W:5>n?Math.floor((s+n-1)/7)+1:Math.floor((s+n-1)/7)||
(4>((new Date(q-1,0,1)).getDay()+6)%7?53:52),F:f.monthNames[p-1+12],m:c(p),M:f.monthNames[p-1],n:p,t:"?",L:"?",o:"?",Y:q,y:String(q).substring(2),a:12>d?f.AmPm[0]:f.AmPm[1],A:12>d?f.AmPm[2]:f.AmPm[3],B:"?",g:d%12||12,G:d,h:c(d%12||12),H:c(d),i:c(e),s:c(l),u:m,e:"?",I:"?",O:(0<h?"-":"+")+c(100*Math.floor(Math.abs(h)/60)+Math.abs(h)%60,4),P:"?",T:(String(k).match(/\b(?:[PMCEA][SDP]T|(?:Pacific|Mountain|Central|Eastern|Atlantic) (?:Standard|Daylight|Prevailing) Time|(?:GMT|UTC)(?:[-+]\d{4})?)\b/g)||
[""]).pop().replace(/[^-+\dA-Z]/g,""),Z:"?",c:"?",r:"?",U:Math.floor(k/1E3)};return b.replace(/\\.|[dDjlNSwzWFmMntLoYyaABgGhHisueIOPTZcrU]/g,function(a){return t.hasOwnProperty(a)?t[a]:a.substring(1)})},jqID:function(a){return String(a).replace(/[!"#$%&'()*+,.\/:; <=>?@\[\\\]\^`{|}~]/g,"\\$&")},guid:1,uidPref:"jqg",randId:function(d){return(d||a.jgrid.uidPref)+a.jgrid.guid++},getAccessor:function(a,e){var b,f,c=[],h;if("function"===typeof e)return e(a);b=a[e];if(void 0===b)try{if("string"===typeof e&&
(c=e.split(".")),h=c.length)for(b=a;b&&h--;)f=c.shift(),b=b[f]}catch(g){}return b},getXmlData:function(d,e,b){var f="string"===typeof e?e.match(/^(.*)\[(\w+)\]$/):null;if("function"===typeof e)return e(d);if(f&&f[2])return f[1]?a(f[1],d).attr(f[2]):a(d).attr(f[2]);d=a(e,d);return b?d:0<d.length?a(d).text():void 0},cellWidth:function(){var d=a("<div class='ui-jqgrid' style='left:10000px'><table class='ui-jqgrid-btable' style='width:5px;'><tr class='jqgrow'><td style='width:5px;display:block;'></td></tr></table></div>"),
e=d.appendTo("body").find("td").width();d.remove();return 0.1<Math.abs(e-5)},cell_width:!0,ajaxOptions:{},from:function(d){return new function(d,b){"string"===typeof d&&(d=a.data(d));var f=this,c=d,h=!0,g=!1,k=b,l=/[\$,%]/g,m=null,p=null,r=0,q=!1,n="",s=[],t=!0;if("object"===typeof d&&d.push)0<d.length&&(t="object"!==typeof d[0]?!1:!0);else throw"data provides is not an array";this._hasData=function(){return null===c?!1:0===c.length?!1:!0};this._getStr=function(a){var c=[];g&&c.push("jQuery.trim(");
c.push("String("+a+")");g&&c.push(")");h||c.push(".toLowerCase()");return c.join("")};this._strComp=function(a){return"string"===typeof a?".toString()":""};this._group=function(a,c){return{field:a.toString(),unique:c,items:[]}};this._toStr=function(c){g&&(c=a.trim(c));c=c.toString().replace(/\\/g,"\\\\").replace(/\"/g,'\\"');return h?c:c.toLowerCase()};this._funcLoop=function(b){var d=[];a.each(c,function(a,c){d.push(b(c))});return d};this._append=function(a){var c;k=null===k?"":k+(""===n?" && ":
n);for(c=0;c<r;c++)k+="(";q&&(k+="!");k+="("+a+")";q=!1;n="";r=0};this._setCommand=function(a,c){m=a;p=c};this._resetNegate=function(){q=!1};this._repeatCommand=function(a,c){return null===m?f:null!==a&&null!==c?m(a,c):null!==p&&t?m(p,a):m(a)};this._equals=function(a,c){return 0===f._compare(a,c,1)};this._compare=function(a,c,b){var d=Object.prototype.toString;void 0===b&&(b=1);void 0===a&&(a=null);void 0===c&&(c=null);if(null===a&&null===c)return 0;if(null===a&&null!==c)return 1;if(null!==a&&null===
c)return-1;if("[object Date]"===d.call(a)&&"[object Date]"===d.call(c))return a<c?-b:a>c?b:0;h||"number"===typeof a||"number"===typeof c||(a=String(a),c=String(c));return a<c?-b:a>c?b:0};this._performSort=function(){0!==s.length&&(c=f._doSort(c,0))};this._doSort=function(a,c){var b=s[c].by,d=s[c].dir,e=s[c].type,g=s[c].datefmt,h=s[c].sfunc;if(c===s.length-1)return f._getOrder(a,b,d,e,g,h);c++;b=f._getGroup(a,b,d,e,g);d=[];for(e=0;e<b.length;e++)for(h=f._doSort(b[e].items,c),g=0;g<h.length;g++)d.push(h[g]);
return d};this._getOrder=function(c,b,d,e,g,k){var m=[],r=[],p="a"===d?1:-1,n,q;void 0===e&&(e="text");q="float"===e||"number"===e||"currency"===e||"numeric"===e?function(a){a=parseFloat(String(a).replace(l,""));return isNaN(a)?0:a}:"int"===e||"integer"===e?function(a){return a?parseFloat(String(a).replace(l,"")):0}:"date"===e||"datetime"===e?function(c){return a.jgrid.parseDate(g,c).getTime()}:a.isFunction(e)?e:function(c){c=c?a.trim(String(c)):"";return h?c:c.toLowerCase()};a.each(c,function(c,
d){n=""!==b?a.jgrid.getAccessor(d,b):d;void 0===n&&(n="");n=q(n,d);r.push({vSort:n,index:c})});a.isFunction(k)?r.sort(function(a,c){a=a.vSort;c=c.vSort;return k.call(this,a,c,p)}):r.sort(function(a,c){a=a.vSort;c=c.vSort;return f._compare(a,c,p)});e=0;for(var s=c.length;e<s;)d=r[e].index,m.push(c[d]),e++;return m};this._getGroup=function(c,b,d,e,g){var h=[],k=null,l=null,m;a.each(f._getOrder(c,b,d,e,g),function(c,d){m=a.jgrid.getAccessor(d,b);null==m&&(m="");f._equals(l,m)||(l=m,null!==k&&h.push(k),
k=f._group(b,m));k.items.push(d)});null!==k&&h.push(k);return h};this.ignoreCase=function(){h=!1;return f};this.useCase=function(){h=!0;return f};this.trim=function(){g=!0;return f};this.noTrim=function(){g=!1;return f};this.execute=function(){var b=k,d=[];if(null===b)return f;a.each(c,function(){eval(b)&&d.push(this)});c=d;return f};this.data=function(){return c};this.select=function(b){f._performSort();if(!f._hasData())return[];f.execute();if(a.isFunction(b)){var d=[];a.each(c,function(a,c){d.push(b(c))});
return d}return c};this.hasMatch=function(){if(!f._hasData())return!1;f.execute();return 0<c.length};this.andNot=function(a,c,b){q=!q;return f.and(a,c,b)};this.orNot=function(a,c,b){q=!q;return f.or(a,c,b)};this.not=function(a,c,b){return f.andNot(a,c,b)};this.and=function(a,c,b){n=" && ";return void 0===a?f:f._repeatCommand(a,c,b)};this.or=function(a,c,b){n=" || ";return void 0===a?f:f._repeatCommand(a,c,b)};this.orBegin=function(){r++;return f};this.orEnd=function(){null!==k&&(k+=")");return f};
this.isNot=function(a){q=!q;return f.is(a)};this.is=function(a){f._append("this."+a);f._resetNegate();return f};this._compareValues=function(c,b,d,e,g){var h;h=t?"jQuery.jgrid.getAccessor(this,'"+b+"')":"this";void 0===d&&(d=null);var k=d,m=void 0===g.stype?"text":g.stype;if(null!==d)switch(m){case "int":case "integer":k=isNaN(Number(k))||""===k?"0":k;h="parseInt("+h+",10)";k="parseInt("+k+",10)";break;case "float":case "number":case "numeric":k=String(k).replace(l,"");k=isNaN(Number(k))||""===k?
"0":k;h="parseFloat("+h+")";k="parseFloat("+k+")";break;case "date":case "datetime":k=String(a.jgrid.parseDate(g.newfmt||"Y-m-d",k).getTime());h='jQuery.jgrid.parseDate("'+g.srcfmt+'",'+h+").getTime()";break;default:h=f._getStr(h),k=f._getStr('"'+f._toStr(k)+'"')}f._append(h+" "+e+" "+k);f._setCommand(c,b);f._resetNegate();return f};this.equals=function(a,c,b){return f._compareValues(f.equals,a,c,"==",b)};this.notEquals=function(a,c,b){return f._compareValues(f.equals,a,c,"!==",b)};this.isNull=function(a,
c,b){return f._compareValues(f.equals,a,null,"===",b)};this.greater=function(a,c,b){return f._compareValues(f.greater,a,c,">",b)};this.less=function(a,c,b){return f._compareValues(f.less,a,c,"<",b)};this.greaterOrEquals=function(a,c,b){return f._compareValues(f.greaterOrEquals,a,c,">=",b)};this.lessOrEquals=function(a,c,b){return f._compareValues(f.lessOrEquals,a,c,"<=",b)};this.startsWith=function(c,b){var d=null==b?c:b,d=g?a.trim(d.toString()).length:d.toString().length;t?f._append(f._getStr("jQuery.jgrid.getAccessor(this,'"+
c+"')")+".substr(0,"+d+") == "+f._getStr('"'+f._toStr(b)+'"')):(null!=b&&(d=g?a.trim(b.toString()).length:b.toString().length),f._append(f._getStr("this")+".substr(0,"+d+") == "+f._getStr('"'+f._toStr(c)+'"')));f._setCommand(f.startsWith,c);f._resetNegate();return f};this.endsWith=function(c,b){var d=null==b?c:b,d=g?a.trim(d.toString()).length:d.toString().length;t?f._append(f._getStr("jQuery.jgrid.getAccessor(this,'"+c+"')")+".substr("+f._getStr("jQuery.jgrid.getAccessor(this,'"+c+"')")+".length-"+
d+","+d+') == "'+f._toStr(b)+'"'):f._append(f._getStr("this")+".substr("+f._getStr("this")+'.length-"'+f._toStr(c)+'".length,"'+f._toStr(c)+'".length) == "'+f._toStr(c)+'"');f._setCommand(f.endsWith,c);f._resetNegate();return f};this.contains=function(a,c){t?f._append(f._getStr("jQuery.jgrid.getAccessor(this,'"+a+"')")+'.indexOf("'+f._toStr(c)+'",0) > -1'):f._append(f._getStr("this")+'.indexOf("'+f._toStr(a)+'",0) > -1');f._setCommand(f.contains,a);f._resetNegate();return f};this.groupBy=function(a,
b,d,e){return f._hasData()?f._getGroup(c,a,b,d,e):null};this.orderBy=function(c,b,d,e,g){b=null==b?"a":a.trim(b.toString().toLowerCase());null==d&&(d="text");null==e&&(e="Y-m-d");null==g&&(g=!1);if("desc"===b||"descending"===b)b="d";if("asc"===b||"ascending"===b)b="a";s.push({by:c,dir:b,type:d,datefmt:e,sfunc:g});return f};return f}(d,null)},getMethod:function(d){return this.getAccessor(a.fn.jqGrid,d)},extend:function(d){a.extend(a.fn.jqGrid,d);this.no_legacy_api||a.fn.extend(d)}});a.fn.jqGrid=function(d){if("string"===
typeof d){var e=a.jgrid.getMethod(d);if(!e)throw"jqGrid - No such method: "+d;var b=a.makeArray(arguments).slice(1);return e.apply(this,b)}return this.each(function(){if(!this.grid){var b=a.extend(!0,{url:"",height:150,page:1,rowNum:20,rowTotal:null,records:0,pager:"",pgbuttons:!0,pginput:!0,colModel:[],rowList:[],colNames:[],sortorder:"asc",sortname:"",datatype:"xml",mtype:"GET",altRows:!1,selarrrow:[],savedRow:[],shrinkToFit:!0,xmlReader:{},jsonReader:{},subGrid:!1,subGridModel:[],reccount:0,lastpage:0,
lastsort:0,selrow:null,beforeSelectRow:null,onSelectRow:null,onSortCol:null,ondblClickRow:null,onRightClickRow:null,onPaging:null,onSelectAll:null,onInitGrid:null,loadComplete:null,gridComplete:null,loadError:null,loadBeforeSend:null,afterInsertRow:null,beforeRequest:null,beforeProcessing:null,onHeaderClick:null,viewrecords:!1,loadonce:!1,multiselect:!1,multikey:!1,editurl:null,search:!1,caption:"",hidegrid:!0,hiddengrid:!1,postData:{},userData:{},treeGrid:!1,treeGridModel:"nested",treeReader:{},
treeANode:-1,ExpandColumn:null,tree_root_level:0,prmNames:{page:"page",rows:"rows",sort:"sidx",order:"sord",search:"_search",nd:"nd",id:"id",oper:"oper",editoper:"edit",addoper:"add",deloper:"del",subgridid:"id",npage:null,totalrows:"totalrows"},forceFit:!1,gridstate:"visible",cellEdit:!1,cellsubmit:"remote",nv:0,loadui:"enable",toolbar:[!1,""],scroll:!1,multiboxonly:!1,deselectAfterSort:!0,scrollrows:!1,autowidth:!1,scrollOffset:18,cellLayout:5,subGridWidth:20,multiselectWidth:20,gridview:!1,rownumWidth:25,
rownumbers:!1,pagerpos:"center",recordpos:"right",footerrow:!1,userDataOnFooter:!1,hoverrows:!0,altclass:"ui-priority-secondary",viewsortcols:[!1,"vertical",!0],resizeclass:"",autoencode:!1,remapColumns:[],ajaxGridOptions:{},direction:"ltr",toppager:!1,headertitles:!1,scrollTimeout:40,data:[],_index:{},grouping:!1,groupingView:{groupField:[],groupOrder:[],groupText:[],groupColumnShow:[],groupSummary:[],showSummaryOnHide:!1,sortitems:[],sortnames:[],summary:[],summaryval:[],plusicon:"ui-icon-circlesmall-plus",
minusicon:"ui-icon-circlesmall-minus",displayField:[],groupSummaryPos:[],formatDisplayField:[],_locgr:!1},ignoreCase:!1,cmTemplate:{},idPrefix:"",multiSort:!1},a.jgrid.defaults,d||{}),c=this,e={headers:[],cols:[],footers:[],dragStart:function(d,e,g){var k=a(this.bDiv).offset().left;this.resizing={idx:d,startX:e.clientX,sOL:e.clientX-k};this.hDiv.style.cursor="col-resize";this.curGbox=a("#rs_m"+a.jgrid.jqID(b.id),"#gbox_"+a.jgrid.jqID(b.id));this.curGbox.css({display:"block",left:e.clientX-k,top:g[1],
height:g[2]});a(c).triggerHandler("jqGridResizeStart",[e,d]);a.isFunction(b.resizeStart)&&b.resizeStart.call(c,e,d);document.onselectstart=function(){return!1}},dragMove:function(a){if(this.resizing){var c=a.clientX-this.resizing.startX;a=this.headers[this.resizing.idx];var d="ltr"===b.direction?a.width+c:a.width-c,e;33<d&&(this.curGbox.css({left:this.resizing.sOL+c}),!0===b.forceFit?(e=this.headers[this.resizing.idx+b.nv],c="ltr"===b.direction?e.width-c:e.width+c,33<c&&(a.newWidth=d,e.newWidth=c)):
(this.newWidth="ltr"===b.direction?b.tblwidth+c:b.tblwidth-c,a.newWidth=d))}},dragEnd:function(){this.hDiv.style.cursor="default";if(this.resizing){var d=this.resizing.idx,e=this.headers[d].newWidth||this.headers[d].width,e=parseInt(e,10);this.resizing=!1;a("#rs_m"+a.jgrid.jqID(b.id)).css("display","none");b.colModel[d].width=e;this.headers[d].width=e;this.headers[d].el.style.width=e+"px";this.cols[d].style.width=e+"px";0<this.footers.length&&(this.footers[d].style.width=e+"px");!0===b.forceFit?(e=
this.headers[d+b.nv].newWidth||this.headers[d+b.nv].width,this.headers[d+b.nv].width=e,this.headers[d+b.nv].el.style.width=e+"px",this.cols[d+b.nv].style.width=e+"px",0<this.footers.length&&(this.footers[d+b.nv].style.width=e+"px"),b.colModel[d+b.nv].width=e):(b.tblwidth=this.newWidth||b.tblwidth,a("table:first",this.bDiv).css("width",b.tblwidth+"px"),a("table:first",this.hDiv).css("width",b.tblwidth+"px"),this.hDiv.scrollLeft=this.bDiv.scrollLeft,b.footerrow&&(a("table:first",this.sDiv).css("width",
b.tblwidth+"px"),this.sDiv.scrollLeft=this.bDiv.scrollLeft));a(c).triggerHandler("jqGridResizeStop",[e,d]);a.isFunction(b.resizeStop)&&b.resizeStop.call(c,e,d)}this.curGbox=null;document.onselectstart=function(){return!0}},populateVisible:function(){e.timer&&clearTimeout(e.timer);e.timer=null;var c=a(e.bDiv).height();if(c){var d=a("table:first",e.bDiv),g,k;if(d[0].rows.length)try{k=(g=d[0].rows[1])?a(g).outerHeight()||e.prevRowHeight:e.prevRowHeight}catch(l){k=e.prevRowHeight}if(k){e.prevRowHeight=
k;var m=b.rowNum;g=e.scrollTop=e.bDiv.scrollTop;var r=Math.round(d.position().top)-g,p=r+d.height();k*=m;var n,q,s;p<c&&0>=r&&(void 0===b.lastpage||parseInt((p+g+k-1)/k,10)<=b.lastpage)&&(q=parseInt((c-p+k-1)/k,10),0<=p||2>q||!0===b.scroll?(n=Math.round((p+g)/k)+1,r=-1):r=1);0<r&&(n=parseInt(g/k,10)+1,q=parseInt((g+c)/k,10)+2-n,s=!0);!q||b.lastpage&&(n>b.lastpage||1===b.lastpage||n===b.page&&n===b.lastpage)||(e.hDiv.loading?e.timer=setTimeout(e.populateVisible,b.scrollTimeout):(b.page=n,s&&(e.selectionPreserver(d[0]),
e.emptyRows.call(d[0],!1,!1)),e.populate(q)))}}},scrollGrid:function(a){if(b.scroll){var c=e.bDiv.scrollTop;void 0===e.scrollTop&&(e.scrollTop=0);c!==e.scrollTop&&(e.scrollTop=c,e.timer&&clearTimeout(e.timer),e.timer=setTimeout(e.populateVisible,b.scrollTimeout))}e.hDiv.scrollLeft=e.bDiv.scrollLeft;b.footerrow&&(e.sDiv.scrollLeft=e.bDiv.scrollLeft);a&&a.stopPropagation()},selectionPreserver:function(c){var b=c.p,d=b.selrow,e=b.selarrrow?a.makeArray(b.selarrrow):null,f=c.grid.bDiv.scrollLeft,g=function(){var k;
b.selrow=null;b.selarrrow=[];if(b.multiselect&&e&&0<e.length)for(k=0;k<e.length;k++)e[k]!==d&&a(c).jqGrid("setSelection",e[k],!1,null);d&&a(c).jqGrid("setSelection",d,!1,null);c.grid.bDiv.scrollLeft=f;a(c).unbind(".selectionPreserver",g)};a(c).bind("jqGridGridComplete.selectionPreserver",g)}};if("TABLE"!==this.tagName.toUpperCase())alert("Element is not a table");else if(void 0!==document.documentMode&&5>=document.documentMode)alert("Grid can not be used in this ('quirks') mode!");else{a(this).empty().attr("tabindex",
"0");this.p=b;this.p.useProp=!!a.fn.prop;var g,k;if(0===this.p.colNames.length)for(g=0;g<this.p.colModel.length;g++)this.p.colNames[g]=this.p.colModel[g].label||this.p.colModel[g].name;if(this.p.colNames.length!==this.p.colModel.length)alert(a.jgrid.errors.model);else{var l=a("<div class='ui-jqgrid-view'></div>"),m=a.jgrid.msie;c.p.direction=a.trim(c.p.direction.toLowerCase());-1===a.inArray(c.p.direction,["ltr","rtl"])&&(c.p.direction="ltr");k=c.p.direction;a(l).insertBefore(this);a(this).removeClass("scroll").appendTo(l);
var p=a("<div class='ui-jqgrid ui-widget ui-widget-content ui-corner-all'></div>");a(p).attr({id:"gbox_"+this.id,dir:k}).insertBefore(l);a(l).attr("id","gview_"+this.id).appendTo(p);a("<div class='ui-widget-overlay jqgrid-overlay' id='lui_"+this.id+"'></div>").insertBefore(l);a("<div class='loading ui-state-default ui-state-active' id='load_"+this.id+"'>"+this.p.loadtext+"</div>").insertBefore(l);a(this).attr({cellspacing:"0",cellpadding:"0",border:"0",role:"grid","aria-multiselectable":!!this.p.multiselect,
"aria-labelledby":"gbox_"+this.id});var r=function(a,c){a=parseInt(a,10);return isNaN(a)?c||0:a},q=function(b,d,f,g,k,l){var m=c.p.colModel[b],r=m.align,p='style="',n=m.classes,q=m.name,s=[];r&&(p+="text-align:"+r+";");!0===m.hidden&&(p+="display:none;");if(0===d)p+="width: "+e.headers[b].width+"px;";else if(m.cellattr&&a.isFunction(m.cellattr)&&(b=m.cellattr.call(c,k,f,g,m,l))&&"string"===typeof b)if(b=b.replace(/style/i,"style").replace(/title/i,"title"),-1<b.indexOf("title")&&(m.title=!1),-1<b.indexOf("class")&&
(n=void 0),s=b.replace("-style","-sti").split(/style/),2===s.length){s[1]=a.trim(s[1].replace("-sti","-style").replace("=",""));if(0===s[1].indexOf("'")||0===s[1].indexOf('"'))s[1]=s[1].substring(1);p+=s[1].replace(/'/gi,'"')}else p+='"';s.length||(s[0]="",p+='"');p+=(void 0!==n?' class="'+n+'"':"")+(m.title&&f?' title="'+a.jgrid.stripHtml(f)+'"':"");p+=' aria-describedby="'+c.p.id+"_"+q+'"';return p+s[0]},n=function(b){return null==b||""===b?"&#160;":c.p.autoencode?a.jgrid.htmlEncode(b):String(b)},
s=function(b,d,e,f,g){var k=c.p.colModel[e];void 0!==k.formatter?(b=""!==String(c.p.idPrefix)?a.jgrid.stripPref(c.p.idPrefix,b):b,b={rowId:b,colModel:k,gid:c.p.id,pos:e},d=a.isFunction(k.formatter)?k.formatter.call(c,d,b,f,g):a.fmatter?a.fn.fmatter.call(c,k.formatter,d,b,f,g):n(d)):d=n(d);return d},t=function(a,c,b,d,e,f){c=s(a,c,b,e,"add");return'<td role="gridcell" '+q(b,d,c,e,a,f)+">"+c+"</td>"},v=function(a,b,d,e){e='<input role="checkbox" type="checkbox" id="jqg_'+c.p.id+"_"+a+'" class="cbox" name="jqg_'+
c.p.id+"_"+a+'"'+(e?'checked="checked"':"")+"/>";return'<td role="gridcell" '+q(b,d,"",null,a,!0)+">"+e+"</td>"},u=function(a,c,b,d){b=(parseInt(b,10)-1)*parseInt(d,10)+1+c;return'<td role="gridcell" class="ui-state-default jqgrid-rownum" '+q(a,c,b,null,c,!0)+">"+b+"</td>"},w=function(a){var b,d=[],e=0,f;for(f=0;f<c.p.colModel.length;f++)b=c.p.colModel[f],"cb"!==b.name&&"subgrid"!==b.name&&"rn"!==b.name&&(d[e]="local"===a?b.name:"xml"===a||"xmlstring"===a?b.xmlmap||b.name:b.jsonmap||b.name,!1!==c.p.keyIndex&&
!0===b.key&&(c.p.keyName=d[e]),e++);return d},x=function(b){var d=c.p.remapColumns;d&&d.length||(d=a.map(c.p.colModel,function(a,c){return c}));b&&(d=a.map(d,function(a){return a<b?null:a-b}));return d},z=function(c,b){var d;this.p.deepempty?a(this.rows).slice(1).remove():(d=0<this.rows.length?this.rows[0]:null,a(this.firstChild).empty().append(d));c&&this.p.scroll&&(a(this.grid.bDiv.firstChild).css({height:"auto"}),a(this.grid.bDiv.firstChild.firstChild).css({height:0,display:"none"}),0!==this.grid.bDiv.scrollTop&&
(this.grid.bDiv.scrollTop=0));!0===b&&this.p.treeGrid&&(this.p.data=[],this.p._index={})},A=function(){var b=c.p.data.length,d,e,f;d=!0===c.p.rownumbers?1:0;e=!0===c.p.multiselect?1:0;f=!0===c.p.subGrid?1:0;d=!1===c.p.keyIndex||!0===c.p.loadonce?c.p.localReader.id:c.p.colModel[c.p.keyIndex+e+f+d].name;for(e=0;e<b;e++)f=a.jgrid.getAccessor(c.p.data[e],d),void 0===f&&(f=String(e+1)),c.p._index[f]=e},J=function(b,d,e,f,g,k){var l="-1",h="",m;d=d?"display:none;":"";e="ui-widget-content jqgrow ui-row-"+
c.p.direction+(e?" "+e:"")+(k?" ui-state-highlight":"");k=a(c).triggerHandler("jqGridRowAttr",[f,g,b]);"object"!==typeof k&&(k=a.isFunction(c.p.rowattr)?c.p.rowattr.call(c,f,g,b):{});if(!a.isEmptyObject(k)){k.hasOwnProperty("id")&&(b=k.id,delete k.id);k.hasOwnProperty("tabindex")&&(l=k.tabindex,delete k.tabindex);k.hasOwnProperty("style")&&(d+=k.style,delete k.style);k.hasOwnProperty("class")&&(e+=" "+k["class"],delete k["class"]);try{delete k.role}catch(p){}for(m in k)k.hasOwnProperty(m)&&(h+=" "+
m+"="+k[m])}return'<tr role="row" id="'+b+'" tabindex="'+l+'" class="'+e+'"'+(""===d?"":' style="'+d+'"')+h+">"},B=function(b,d,e,f,g){var k=new Date,l="local"!==c.p.datatype&&c.p.loadonce||"xmlstring"===c.p.datatype,h=c.p.xmlReader,m="local"===c.p.datatype?"local":"xml";l&&(c.p.data=[],c.p._index={},c.p.localReader.id="_id_");c.p.reccount=0;if(a.isXMLDoc(b)){-1!==c.p.treeANode||c.p.scroll?e=1<e?e:1:(z.call(c,!1,!0),e=1);var p=a(c),n,q,s=0,B,I=!0===c.p.multiselect?1:0,A=0,y,L=!0===c.p.rownumbers?
1:0,M,H=[],K,C={},N,D,E=[],Q=!0===c.p.altRows?c.p.altclass:"",fa;!0===c.p.subGrid&&(A=1,y=a.jgrid.getMethod("addSubGridCell"));h.repeatitems||(H=w(m));M=!1===c.p.keyIndex?a.isFunction(h.id)?h.id.call(c,b):h.id:c.p.keyIndex;0<H.length&&!isNaN(M)&&(M=c.p.keyName);m=-1===String(M).indexOf("[")?H.length?function(c,b){return a(M,c).text()||b}:function(c,b){return a(h.cell,c).eq(M).text()||b}:function(a,c){return a.getAttribute(M.replace(/[\[\]]/g,""))||c};c.p.userData={};c.p.page=r(a.jgrid.getXmlData(b,
h.page),c.p.page);c.p.lastpage=r(a.jgrid.getXmlData(b,h.total),1);c.p.records=r(a.jgrid.getXmlData(b,h.records));a.isFunction(h.userdata)?c.p.userData=h.userdata.call(c,b)||{}:a.jgrid.getXmlData(b,h.userdata,!0).each(function(){c.p.userData[this.getAttribute("name")]=a(this).text()});b=a.jgrid.getXmlData(b,h.root,!0);(b=a.jgrid.getXmlData(b,h.row,!0))||(b=[]);var G=b.length,F=0,T=[],R=parseInt(c.p.rowNum,10),Z=c.p.scroll?a.jgrid.randId():1;0<G&&0>=c.p.page&&(c.p.page=1);if(b&&G){g&&(R*=g+1);g=a.isFunction(c.p.afterInsertRow);
var V=!1,S;c.p.grouping&&(V=!0===c.p.groupingView.groupCollapse,S=a.jgrid.getMethod("groupingPrepare"));for(;F<G;){N=b[F];D=m(N,Z+F);D=c.p.idPrefix+D;n=0===e?0:e+1;fa=1===(n+F)%2?Q:"";var O=E.length;E.push("");L&&E.push(u(0,F,c.p.page,c.p.rowNum));I&&E.push(v(D,L,F,!1));A&&E.push(y.call(p,I+L,F+e));if(h.repeatitems){K||(K=x(I+A+L));var U=a.jgrid.getXmlData(N,h.cell,!0);a.each(K,function(a){var b=U[this];if(!b)return!1;B=b.textContent||b.text;C[c.p.colModel[a+I+A+L].name]=B;E.push(t(D,B,a+I+A+L,F+
e,N,C))})}else for(n=0;n<H.length;n++)B=a.jgrid.getXmlData(N,H[n]),C[c.p.colModel[n+I+A+L].name]=B,E.push(t(D,B,n+I+A+L,F+e,N,C));E[O]=J(D,V,fa,C,N,!1);E.push("</tr>");c.p.grouping&&(T.push(E),c.p.groupingView._locgr||S.call(p,C,F),E=[]);if(l||!0===c.p.treeGrid)C._id_=a.jgrid.stripPref(c.p.idPrefix,D),c.p.data.push(C),c.p._index[C._id_]=c.p.data.length-1;!1===c.p.gridview&&(a("tbody:first",d).append(E.join("")),p.triggerHandler("jqGridAfterInsertRow",[D,C,N]),g&&c.p.afterInsertRow.call(c,D,C,N),E=
[]);C={};s++;F++;if(s===R)break}}!0===c.p.gridview&&(q=-1<c.p.treeANode?c.p.treeANode:0,c.p.grouping?(l||p.jqGrid("groupingRender",T,c.p.colModel.length,c.p.page,R),T=null):!0===c.p.treeGrid&&0<q?a(c.rows[q]).after(E.join("")):a("tbody:first",d).append(E.join("")));if(!0===c.p.subGrid)try{p.jqGrid("addSubGrid",I+L)}catch(ba){}c.p.totaltime=new Date-k;0<s&&0===c.p.records&&(c.p.records=G);E=null;if(!0===c.p.treeGrid)try{p.jqGrid("setTreeNode",q+1,s+q+1)}catch(aa){}c.p.treeGrid||c.p.scroll||(c.grid.bDiv.scrollTop=
0);c.p.reccount=s;c.p.treeANode=-1;c.p.userDataOnFooter&&p.jqGrid("footerData","set",c.p.userData,!0);l&&(c.p.records=G,c.p.lastpage=Math.ceil(G/R));f||c.updatepager(!1,!0);if(l){for(;s<G;){N=b[s];D=m(N,s+Z);D=c.p.idPrefix+D;if(h.repeatitems){K||(K=x(I+A+L));var ea=a.jgrid.getXmlData(N,h.cell,!0);a.each(K,function(a){var b=ea[this];if(!b)return!1;B=b.textContent||b.text;C[c.p.colModel[a+I+A+L].name]=B})}else for(n=0;n<H.length;n++)B=a.jgrid.getXmlData(N,H[n]),C[c.p.colModel[n+I+A+L].name]=B;C._id_=
a.jgrid.stripPref(c.p.idPrefix,D);c.p.grouping&&S.call(p,C,s);c.p.data.push(C);c.p._index[C._id_]=c.p.data.length-1;C={};s++}c.p.grouping&&(c.p.groupingView._locgr=!0,p.jqGrid("groupingRender",T,c.p.colModel.length,c.p.page,R),T=null)}}},M=function(b,d,e,f,g){var k=new Date;if(b){-1!==c.p.treeANode||c.p.scroll?e=1<e?e:1:(z.call(c,!1,!0),e=1);var h,l="local"!==c.p.datatype&&c.p.loadonce||"jsonstring"===c.p.datatype;l&&(c.p.data=[],c.p._index={},c.p.localReader.id="_id_");c.p.reccount=0;"local"===c.p.datatype?
(d=c.p.localReader,h="local"):(d=c.p.jsonReader,h="json");var m=a(c),p=0,n,q,s,B=[],I=c.p.multiselect?1:0,A=!0===c.p.subGrid?1:0,y,L=!0===c.p.rownumbers?1:0,M=x(I+A+L);h=w(h);var C,H,E,K={},N,D,F=[],fa=!0===c.p.altRows?c.p.altclass:"",G;c.p.page=r(a.jgrid.getAccessor(b,d.page),c.p.page);c.p.lastpage=r(a.jgrid.getAccessor(b,d.total),1);c.p.records=r(a.jgrid.getAccessor(b,d.records));c.p.userData=a.jgrid.getAccessor(b,d.userdata)||{};A&&(y=a.jgrid.getMethod("addSubGridCell"));E=!1===c.p.keyIndex?a.isFunction(d.id)?
d.id.call(c,b):d.id:c.p.keyIndex;d.repeatitems||(B=h,0<B.length&&!isNaN(E)&&(E=c.p.keyName));H=a.jgrid.getAccessor(b,d.root);null==H&&a.isArray(b)&&(H=b);H||(H=[]);b=H.length;q=0;0<b&&0>=c.p.page&&(c.p.page=1);var Q=parseInt(c.p.rowNum,10),T=c.p.scroll?a.jgrid.randId():1,R=!1,S;g&&(Q*=g+1);"local"!==c.p.datatype||c.p.deselectAfterSort||(R=!0);var Z=a.isFunction(c.p.afterInsertRow),V=[],O=!1,U;c.p.grouping&&(O=!0===c.p.groupingView.groupCollapse,U=a.jgrid.getMethod("groupingPrepare"));for(;q<b;){g=
H[q];D=a.jgrid.getAccessor(g,E);void 0===D&&("number"===typeof E&&null!=c.p.colModel[E+I+A+L]&&(D=a.jgrid.getAccessor(g,c.p.colModel[E+I+A+L].name)),void 0===D&&(D=T+q,0===B.length&&d.cell&&(n=a.jgrid.getAccessor(g,d.cell)||g,D=null!=n&&void 0!==n[E]?n[E]:D)));D=c.p.idPrefix+D;n=1===e?0:e;G=1===(n+q)%2?fa:"";R&&(S=c.p.multiselect?-1!==a.inArray(D,c.p.selarrrow):D===c.p.selrow);var ba=F.length;F.push("");L&&F.push(u(0,q,c.p.page,c.p.rowNum));I&&F.push(v(D,L,q,S));A&&F.push(y.call(m,I+L,q+e));C=h;d.repeatitems&&
(d.cell&&(g=a.jgrid.getAccessor(g,d.cell)||g),a.isArray(g)&&(C=M));for(s=0;s<C.length;s++)n=a.jgrid.getAccessor(g,C[s]),K[c.p.colModel[s+I+A+L].name]=n,F.push(t(D,n,s+I+A+L,q+e,g,K));F[ba]=J(D,O,G,K,g,S);F.push("</tr>");c.p.grouping&&(V.push(F),c.p.groupingView._locgr||U.call(m,K,q),F=[]);if(l||!0===c.p.treeGrid)K._id_=a.jgrid.stripPref(c.p.idPrefix,D),c.p.data.push(K),c.p._index[K._id_]=c.p.data.length-1;!1===c.p.gridview&&(a("#"+a.jgrid.jqID(c.p.id)+" tbody:first").append(F.join("")),m.triggerHandler("jqGridAfterInsertRow",
[D,K,g]),Z&&c.p.afterInsertRow.call(c,D,K,g),F=[]);K={};p++;q++;if(p===Q)break}!0===c.p.gridview&&(N=-1<c.p.treeANode?c.p.treeANode:0,c.p.grouping?l||(m.jqGrid("groupingRender",V,c.p.colModel.length,c.p.page,Q),V=null):!0===c.p.treeGrid&&0<N?a(c.rows[N]).after(F.join("")):a("#"+a.jgrid.jqID(c.p.id)+" tbody:first").append(F.join("")));if(!0===c.p.subGrid)try{m.jqGrid("addSubGrid",I+L)}catch(ea){}c.p.totaltime=new Date-k;0<p&&0===c.p.records&&(c.p.records=b);if(!0===c.p.treeGrid)try{m.jqGrid("setTreeNode",
N+1,p+N+1)}catch(aa){}c.p.treeGrid||c.p.scroll||(c.grid.bDiv.scrollTop=0);c.p.reccount=p;c.p.treeANode=-1;c.p.userDataOnFooter&&m.jqGrid("footerData","set",c.p.userData,!0);l&&(c.p.records=b,c.p.lastpage=Math.ceil(b/Q));f||c.updatepager(!1,!0);if(l){for(;p<b&&H[p];){g=H[p];D=a.jgrid.getAccessor(g,E);void 0===D&&("number"===typeof E&&null!=c.p.colModel[E+I+A+L]&&(D=a.jgrid.getAccessor(g,c.p.colModel[E+I+A+L].name)),void 0===D&&(D=T+p,0===B.length&&d.cell&&(e=a.jgrid.getAccessor(g,d.cell)||g,D=null!=
e&&void 0!==e[E]?e[E]:D)));if(g){D=c.p.idPrefix+D;C=h;d.repeatitems&&(d.cell&&(g=a.jgrid.getAccessor(g,d.cell)||g),a.isArray(g)&&(C=M));for(s=0;s<C.length;s++)K[c.p.colModel[s+I+A+L].name]=a.jgrid.getAccessor(g,C[s]);K._id_=a.jgrid.stripPref(c.p.idPrefix,D);c.p.grouping&&U.call(m,K,p);c.p.data.push(K);c.p._index[K._id_]=c.p.data.length-1;K={}}p++}c.p.grouping&&(c.p.groupingView._locgr=!0,m.jqGrid("groupingRender",V,c.p.colModel.length,c.p.page,Q))}}},H=function(){function b(a){var c=0,d,e,f,k,h;if(null!=
a.groups){(e=a.groups.length&&"OR"===a.groupOp.toString().toUpperCase())&&t.orBegin();for(d=0;d<a.groups.length;d++){0<c&&e&&t.or();try{b(a.groups[d])}catch(l){alert(l)}c++}e&&t.orEnd()}if(null!=a.rules)try{(f=a.rules.length&&"OR"===a.groupOp.toString().toUpperCase())&&t.orBegin();for(d=0;d<a.rules.length;d++)h=a.rules[d],k=a.groupOp.toString().toUpperCase(),s[h.op]&&h.field&&(0<c&&k&&"OR"===k&&(t=t.or()),t=s[h.op](t,k)(h.field,h.data,g[h.field])),c++;f&&t.orEnd()}catch(m){alert(m)}}var d=c.p.multiSort?
[]:"",e=[],f=!1,g={},k=[],h=[],l,m,p;if(a.isArray(c.p.data)){var n=c.p.grouping?c.p.groupingView:!1,r,q;a.each(c.p.colModel,function(){m=this.sorttype||"text";"date"===m||"datetime"===m?(this.formatter&&"string"===typeof this.formatter&&"date"===this.formatter?(l=this.formatoptions&&this.formatoptions.srcformat?this.formatoptions.srcformat:a.jgrid.formatter.date.srcformat,p=this.formatoptions&&this.formatoptions.newformat?this.formatoptions.newformat:a.jgrid.formatter.date.newformat):l=p=this.datefmt||
"Y-m-d",g[this.name]={stype:m,srcfmt:l,newfmt:p,sfunc:this.sortfunc||null}):g[this.name]={stype:m,srcfmt:"",newfmt:"",sfunc:this.sortfunc||null};if(c.p.grouping)for(q=0,r=n.groupField.length;q<r;q++)if(this.name===n.groupField[q]){var b=this.name;this.index&&(b=this.index);k[q]=g[b];h[q]=b}c.p.multiSort?this.lso&&(d.push(this.name),b=this.lso.split("-"),e.push(b[b.length-1])):f||this.index!==c.p.sortname&&this.name!==c.p.sortname||(d=this.name,f=!0)});if(c.p.treeGrid)a(c).jqGrid("SortTree",d,c.p.sortorder,
g[d].stype||"text",g[d].srcfmt||"");else{var s={eq:function(a){return a.equals},ne:function(a){return a.notEquals},lt:function(a){return a.less},le:function(a){return a.lessOrEquals},gt:function(a){return a.greater},ge:function(a){return a.greaterOrEquals},cn:function(a){return a.contains},nc:function(a,c){return"OR"===c?a.orNot().contains:a.andNot().contains},bw:function(a){return a.startsWith},bn:function(a,c){return"OR"===c?a.orNot().startsWith:a.andNot().startsWith},en:function(a,c){return"OR"===
c?a.orNot().endsWith:a.andNot().endsWith},ew:function(a){return a.endsWith},ni:function(a,c){return"OR"===c?a.orNot().equals:a.andNot().equals},"in":function(a){return a.equals},nu:function(a){return a.isNull},nn:function(a,c){return"OR"===c?a.orNot().isNull:a.andNot().isNull}},t=a.jgrid.from(c.p.data);c.p.ignoreCase&&(t=t.ignoreCase());if(!0===c.p.search){var w=c.p.postData.filters;if(w)"string"===typeof w&&(w=a.jgrid.parse(w)),b(w);else try{t=s[c.p.postData.searchOper](t)(c.p.postData.searchField,
c.p.postData.searchString,g[c.p.postData.searchField])}catch(v){}}if(c.p.grouping)for(q=0;q<r;q++)t.orderBy(h[q],n.groupOrder[q],k[q].stype,k[q].srcfmt);c.p.multiSort?a.each(d,function(a){t.orderBy(this,e[a],g[this].stype,g[this].srcfmt,g[this].sfunc)}):d&&c.p.sortorder&&f&&("DESC"===c.p.sortorder.toUpperCase()?t.orderBy(c.p.sortname,"d",g[d].stype,g[d].srcfmt,g[d].sfunc):t.orderBy(c.p.sortname,"a",g[d].stype,g[d].srcfmt,g[d].sfunc));var w=t.select(),u=parseInt(c.p.rowNum,10),x=w.length,I=parseInt(c.p.page,
10),B=Math.ceil(x/u),A={};if((c.p.search||c.p.resetsearch)&&c.p.grouping&&c.p.groupingView._locgr){c.p.groupingView.groups=[];var z,y=a.jgrid.getMethod("groupingPrepare"),L,J;if(c.p.footerrow&&c.p.userDataOnFooter){for(L in c.p.userData)c.p.userData.hasOwnProperty(L)&&(c.p.userData[L]=0);J=!0}for(z=0;z<x;z++){if(J)for(L in c.p.userData)c.p.userData[L]+=parseFloat(w[z][L]||0);y.call(a(c),w[z],z,u)}}w=w.slice((I-1)*u,I*u);g=t=null;A[c.p.localReader.total]=B;A[c.p.localReader.page]=I;A[c.p.localReader.records]=
x;A[c.p.localReader.root]=w;A[c.p.localReader.userdata]=c.p.userData;w=null;return A}}},y=function(){c.grid.hDiv.loading=!0;if(!c.p.hiddengrid)switch(c.p.loadui){case "enable":a("#load_"+a.jgrid.jqID(c.p.id)).show();break;case "block":a("#lui_"+a.jgrid.jqID(c.p.id)).show(),a("#load_"+a.jgrid.jqID(c.p.id)).show()}},C=function(){c.grid.hDiv.loading=!1;switch(c.p.loadui){case "enable":a("#load_"+a.jgrid.jqID(c.p.id)).hide();break;case "block":a("#lui_"+a.jgrid.jqID(c.p.id)).hide(),a("#load_"+a.jgrid.jqID(c.p.id)).hide()}},
G=function(b){if(!c.grid.hDiv.loading){var d=c.p.scroll&&!1===b,e={},f,g=c.p.prmNames;0>=c.p.page&&(c.p.page=Math.min(1,c.p.lastpage));null!==g.search&&(e[g.search]=c.p.search);null!==g.nd&&(e[g.nd]=(new Date).getTime());null!==g.rows&&(e[g.rows]=c.p.rowNum);null!==g.page&&(e[g.page]=c.p.page);null!==g.sort&&(e[g.sort]=c.p.sortname);null!==g.order&&(e[g.order]=c.p.sortorder);null!==c.p.rowTotal&&null!==g.totalrows&&(e[g.totalrows]=c.p.rowTotal);var k=a.isFunction(c.p.loadComplete),h=k?c.p.loadComplete:
null,l=0;b=b||1;1<b?null!==g.npage?(e[g.npage]=b,l=b-1,b=1):h=function(a){c.p.page++;c.grid.hDiv.loading=!1;k&&c.p.loadComplete.call(c,a);G(b-1)}:null!==g.npage&&delete c.p.postData[g.npage];if(c.p.grouping){a(c).jqGrid("groupingSetup");var m=c.p.groupingView,p,n="";for(p=0;p<m.groupField.length;p++){var r=m.groupField[p];a.each(c.p.colModel,function(a,c){c.name===r&&c.index&&(r=c.index)});n+=r+" "+m.groupOrder[p]+", "}e[g.sort]=n+e[g.sort]}a.extend(c.p.postData,e);var q=c.p.scroll?c.rows.length-
1:1,e=a(c).triggerHandler("jqGridBeforeRequest");if(!1!==e&&"stop"!==e)if(a.isFunction(c.p.datatype))c.p.datatype.call(c,c.p.postData,"load_"+c.p.id,q,b,l);else{if(a.isFunction(c.p.beforeRequest)&&(e=c.p.beforeRequest.call(c),void 0===e&&(e=!0),!1===e))return;f=c.p.datatype.toLowerCase();switch(f){case "json":case "jsonp":case "xml":case "script":a.ajax(a.extend({url:c.p.url,type:c.p.mtype,dataType:f,data:a.isFunction(c.p.serializeGridData)?c.p.serializeGridData.call(c,c.p.postData):c.p.postData,
success:function(e,g,k){if(a.isFunction(c.p.beforeProcessing)&&!1===c.p.beforeProcessing.call(c,e,g,k))C();else{"xml"===f?B(e,c.grid.bDiv,q,1<b,l):M(e,c.grid.bDiv,q,1<b,l);a(c).triggerHandler("jqGridLoadComplete",[e]);h&&h.call(c,e);a(c).triggerHandler("jqGridAfterLoadComplete",[e]);d&&c.grid.populateVisible();if(c.p.loadonce||c.p.treeGrid)c.p.datatype="local";1===b&&C()}},error:function(d,e,f){a.isFunction(c.p.loadError)&&c.p.loadError.call(c,d,e,f);1===b&&C()},beforeSend:function(b,d){var e=!0;
a.isFunction(c.p.loadBeforeSend)&&(e=c.p.loadBeforeSend.call(c,b,d));void 0===e&&(e=!0);if(!1===e)return!1;y()}},a.jgrid.ajaxOptions,c.p.ajaxGridOptions));break;case "xmlstring":y();e="string"!==typeof c.p.datastr?c.p.datastr:a.parseXML(c.p.datastr);B(e,c.grid.bDiv);a(c).triggerHandler("jqGridLoadComplete",[e]);k&&c.p.loadComplete.call(c,e);a(c).triggerHandler("jqGridAfterLoadComplete",[e]);c.p.datatype="local";c.p.datastr=null;C();break;case "jsonstring":y();e="string"===typeof c.p.datastr?a.jgrid.parse(c.p.datastr):
c.p.datastr;M(e,c.grid.bDiv);a(c).triggerHandler("jqGridLoadComplete",[e]);k&&c.p.loadComplete.call(c,e);a(c).triggerHandler("jqGridAfterLoadComplete",[e]);c.p.datatype="local";c.p.datastr=null;C();break;case "local":case "clientside":y(),c.p.datatype="local",e=H(),M(e,c.grid.bDiv,q,1<b,l),a(c).triggerHandler("jqGridLoadComplete",[e]),h&&h.call(c,e),a(c).triggerHandler("jqGridAfterLoadComplete",[e]),d&&c.grid.populateVisible(),C()}}}},O=function(b){a("#cb_"+a.jgrid.jqID(c.p.id),c.grid.hDiv)[c.p.useProp?
"prop":"attr"]("checked",b);if(c.p.frozenColumns&&c.p.id+"_frozen")a("#cb_"+a.jgrid.jqID(c.p.id),c.grid.fhDiv)[c.p.useProp?"prop":"attr"]("checked",b)},W=function(b,d){var e="",f="<table cellspacing='0' cellpadding='0' border='0' style='table-layout:auto;' class='ui-pg-table'><tbody><tr>",g="",h,l,m,p,n=function(b){var d;a.isFunction(c.p.onPaging)&&(d=c.p.onPaging.call(c,b));if("stop"===d)return!1;c.p.selrow=null;c.p.multiselect&&(c.p.selarrrow=[],O(!1));c.p.savedRow=[];return!0};b=b.substr(1);d+=
"_"+b;h="pg_"+b;l=b+"_left";m=b+"_center";p=b+"_right";a("#"+a.jgrid.jqID(b)).append("<div id='"+h+"' class='ui-pager-control' role='group'><table cellspacing='0' cellpadding='0' border='0' class='ui-pg-table' style='width:100%;table-layout:fixed;height:100%;' role='row'><tbody><tr><td id='"+l+"' align='left'></td><td id='"+m+"' align='center' style='white-space:pre;'></td><td id='"+p+"' align='right'></td></tr></tbody></table></div>").attr("dir","ltr");if(0<c.p.rowList.length){g="<td dir='"+k+"'>";
g+="<select class='ui-pg-selbox' role='listbox'>";for(l=0;l<c.p.rowList.length;l++)g+='<option role="option" value="'+c.p.rowList[l]+'"'+(c.p.rowNum===c.p.rowList[l]?' selected="selected"':"")+">"+c.p.rowList[l]+"</option>";g+="</select></td>"}"rtl"===k&&(f+=g);!0===c.p.pginput&&(e="<td dir='"+k+"'>"+a.jgrid.format(c.p.pgtext||"","<input class='ui-pg-input' type='text' size='2' maxlength='7' value='0' role='textbox'/>","<span id='sp_1_"+a.jgrid.jqID(b)+"'></span>")+"</td>");!0===c.p.pgbuttons?(l=
["first"+d,"prev"+d,"next"+d,"last"+d],"rtl"===k&&l.reverse(),f+="<td id='"+l[0]+"' class='ui-pg-button ui-corner-all'><span class='ui-icon ui-icon-seek-first'></span></td>",f+="<td id='"+l[1]+"' class='ui-pg-button ui-corner-all'><span class='ui-icon ui-icon-seek-prev'></span></td>",f=f+(""!==e?"<td class='ui-pg-button ui-state-disabled' style='width:4px;'><span class='ui-separator'></span></td>"+e+"<td class='ui-pg-button ui-state-disabled' style='width:4px;'><span class='ui-separator'></span></td>":
"")+("<td id='"+l[2]+"' class='ui-pg-button ui-corner-all'><span class='ui-icon ui-icon-seek-next'></span></td>"),f+="<td id='"+l[3]+"' class='ui-pg-button ui-corner-all'><span class='ui-icon ui-icon-seek-end'></span></td>"):""!==e&&(f+=e);"ltr"===k&&(f+=g);f+="</tr></tbody></table>";!0===c.p.viewrecords&&a("td#"+b+"_"+c.p.recordpos,"#"+h).append("<div dir='"+k+"' style='text-align:"+c.p.recordpos+"' class='ui-paging-info'></div>");a("td#"+b+"_"+c.p.pagerpos,"#"+h).append(f);g=a(".ui-jqgrid").css("font-size")||
"11px";a(document.body).append("<div id='testpg' class='ui-jqgrid ui-widget ui-widget-content' style='font-size:"+g+";visibility:hidden;' ></div>");f=a(f).clone().appendTo("#testpg").width();a("#testpg").remove();0<f&&(""!==e&&(f+=50),a("td#"+b+"_"+c.p.pagerpos,"#"+h).width(f));c.p._nvtd=[];c.p._nvtd[0]=f?Math.floor((c.p.width-f)/2):Math.floor(c.p.width/3);c.p._nvtd[1]=0;f=null;a(".ui-pg-selbox","#"+h).bind("change",function(){if(!n("records"))return!1;c.p.page=Math.round(c.p.rowNum*(c.p.page-1)/
this.value-0.5)+1;c.p.rowNum=this.value;c.p.pager&&a(".ui-pg-selbox",c.p.pager).val(this.value);c.p.toppager&&a(".ui-pg-selbox",c.p.toppager).val(this.value);G();return!1});!0===c.p.pgbuttons&&(a(".ui-pg-button","#"+h).hover(function(){a(this).hasClass("ui-state-disabled")?this.style.cursor="default":(a(this).addClass("ui-state-hover"),this.style.cursor="pointer")},function(){a(this).hasClass("ui-state-disabled")||(a(this).removeClass("ui-state-hover"),this.style.cursor="default")}),a("#first"+a.jgrid.jqID(d)+
", #prev"+a.jgrid.jqID(d)+", #next"+a.jgrid.jqID(d)+", #last"+a.jgrid.jqID(d)).click(function(){if(a(this).hasClass("ui-state-disabled"))return!1;var b=r(c.p.page,1),e=r(c.p.lastpage,1),f=!1,g=!0,k=!0,h=!0,l=!0;0===e||1===e?l=h=k=g=!1:1<e&&1<=b?1===b?k=g=!1:b===e&&(l=h=!1):1<e&&0===b&&(l=h=!1,b=e-1);if(!n(this.id))return!1;this.id==="first"+d&&g&&(c.p.page=1,f=!0);this.id==="prev"+d&&k&&(c.p.page=b-1,f=!0);this.id==="next"+d&&h&&(c.p.page=b+1,f=!0);this.id==="last"+d&&l&&(c.p.page=e,f=!0);f&&G();
return!1}));!0===c.p.pginput&&a("input.ui-pg-input","#"+h).keypress(function(b){if(13===(b.charCode||b.keyCode||0)){if(!n("user"))return!1;a(this).val(r(a(this).val(),1));c.p.page=0<a(this).val()?a(this).val():c.p.page;G();return!1}return this})},Y=function(b,d){var e,f="",g=c.p.colModel,k=!1,h;h=c.p.frozenColumns?d:c.grid.headers[b].el;var l="";a("span.ui-grid-ico-sort",h).addClass("ui-state-disabled");a(h).attr("aria-selected","false");if(g[b].lso)if("asc"===g[b].lso)g[b].lso+="-desc",l="desc";
else if("desc"===g[b].lso)g[b].lso+="-asc",l="asc";else{if("asc-desc"===g[b].lso||"desc-asc"===g[b].lso)g[b].lso=""}else g[b].lso=l=g[b].firstsortorder||"asc";l?(a("span.s-ico",h).show(),a("span.ui-icon-"+l,h).removeClass("ui-state-disabled"),a(h).attr("aria-selected","true")):c.p.viewsortcols[0]||a("span.s-ico",h).hide();c.p.sortorder="";a.each(g,function(a){this.lso&&(0<a&&k&&(f+=", "),e=this.lso.split("-"),f+=g[a].index||g[a].name,f+=" "+e[e.length-1],k=!0,c.p.sortorder=e[e.length-1])});h=f.lastIndexOf(c.p.sortorder);
f=f.substring(0,h);c.p.sortname=f},D=function(b,d,e,f,g){if(c.p.colModel[d].sortable&&!(0<c.p.savedRow.length)){e||(c.p.lastsort===d?"asc"===c.p.sortorder?c.p.sortorder="desc":"desc"===c.p.sortorder&&(c.p.sortorder="asc"):c.p.sortorder=c.p.colModel[d].firstsortorder||"asc",c.p.page=1);if(c.p.multiSort)Y(d,g);else{if(f){if(c.p.lastsort===d&&c.p.sortorder===f&&!e)return;c.p.sortorder=f}e=c.grid.headers[c.p.lastsort].el;g=c.p.frozenColumns?g:c.grid.headers[d].el;a("span.ui-grid-ico-sort",e).addClass("ui-state-disabled");
a(e).attr("aria-selected","false");c.p.frozenColumns&&(c.grid.fhDiv.find("span.ui-grid-ico-sort").addClass("ui-state-disabled"),c.grid.fhDiv.find("th").attr("aria-selected","false"));a("span.ui-icon-"+c.p.sortorder,g).removeClass("ui-state-disabled");a(g).attr("aria-selected","true");c.p.viewsortcols[0]||c.p.lastsort===d||(c.p.frozenColumns&&c.grid.fhDiv.find("span.s-ico").hide(),a("span.s-ico",e).hide(),a("span.s-ico",g).show());b=b.substring(5+c.p.id.length+1);c.p.sortname=c.p.colModel[d].index||
b}"stop"===a(c).triggerHandler("jqGridSortCol",[c.p.sortname,d,c.p.sortorder])?c.p.lastsort=d:a.isFunction(c.p.onSortCol)&&"stop"===c.p.onSortCol.call(c,c.p.sortname,d,c.p.sortorder)?c.p.lastsort=d:("local"===c.p.datatype?c.p.deselectAfterSort&&a(c).jqGrid("resetSelection"):(c.p.selrow=null,c.p.multiselect&&O(!1),c.p.selarrrow=[],c.p.savedRow=[]),c.p.scroll&&(g=c.grid.bDiv.scrollLeft,z.call(c,!0,!1),c.grid.hDiv.scrollLeft=g),c.p.subGrid&&"local"===c.p.datatype&&a("td.sgexpanded","#"+a.jgrid.jqID(c.p.id)).each(function(){a(this).trigger("click")}),
G(),c.p.lastsort=d,c.p.sortname!==b&&d&&(c.p.lastsort=d))}},aa=function(b){b=a(c.grid.headers[b].el);b=[b.position().left+b.outerWidth()];"rtl"===c.p.direction&&(b[0]=c.p.width-b[0]);b[0]-=c.grid.bDiv.scrollLeft;b.push(a(c.grid.hDiv).position().top);b.push(a(c.grid.bDiv).offset().top-a(c.grid.hDiv).offset().top+a(c.grid.bDiv).height());return b},S=function(b){var d,e=c.grid.headers,f=a.jgrid.getCellIndex(b);for(d=0;d<e.length;d++)if(b===e[d].el){f=d;break}return f};this.p.id=this.id;-1===a.inArray(c.p.multikey,
["shiftKey","altKey","ctrlKey"])&&(c.p.multikey=!1);c.p.keyIndex=!1;c.p.keyName=!1;for(g=0;g<c.p.colModel.length;g++)c.p.colModel[g]=a.extend(!0,{},c.p.cmTemplate,c.p.colModel[g].template||{},c.p.colModel[g]),!1===c.p.keyIndex&&!0===c.p.colModel[g].key&&(c.p.keyIndex=g);c.p.sortorder=c.p.sortorder.toLowerCase();a.jgrid.cell_width=a.jgrid.cellWidth();!0===c.p.grouping&&(c.p.scroll=!1,c.p.rownumbers=!1,c.p.treeGrid=!1,c.p.gridview=!0);if(!0===this.p.treeGrid){try{a(this).jqGrid("setTreeGrid")}catch(ba){}"local"!==
c.p.datatype&&(c.p.localReader={id:"_id_"})}if(this.p.subGrid)try{a(c).jqGrid("setSubGrid")}catch(ga){}this.p.multiselect&&(this.p.colNames.unshift("<input role='checkbox' id='cb_"+this.p.id+"' class='cbox' type='checkbox'/>"),this.p.colModel.unshift({name:"cb",width:a.jgrid.cell_width?c.p.multiselectWidth+c.p.cellLayout:c.p.multiselectWidth,sortable:!1,resizable:!1,hidedlg:!0,search:!1,align:"center",fixed:!0}));this.p.rownumbers&&(this.p.colNames.unshift(""),this.p.colModel.unshift({name:"rn",width:c.p.rownumWidth,
sortable:!1,resizable:!1,hidedlg:!0,search:!1,align:"center",fixed:!0}));c.p.xmlReader=a.extend(!0,{root:"rows",row:"row",page:"rows>page",total:"rows>total",records:"rows>records",repeatitems:!0,cell:"cell",id:"[id]",userdata:"userdata",subgrid:{root:"rows",row:"row",repeatitems:!0,cell:"cell"}},c.p.xmlReader);c.p.jsonReader=a.extend(!0,{root:"rows",page:"page",total:"total",records:"records",repeatitems:!0,cell:"cell",id:"id",userdata:"userdata",subgrid:{root:"rows",repeatitems:!0,cell:"cell"}},
c.p.jsonReader);c.p.localReader=a.extend(!0,{root:"rows",page:"page",total:"total",records:"records",repeatitems:!1,cell:"cell",id:"id",userdata:"userdata",subgrid:{root:"rows",repeatitems:!0,cell:"cell"}},c.p.localReader);c.p.scroll&&(c.p.pgbuttons=!1,c.p.pginput=!1,c.p.rowList=[]);c.p.data.length&&A();var I="<thead><tr class='ui-jqgrid-labels' role='rowheader'>",L,K,N,Z,T,E,F,Q,ja=Q="",R=[],ea=[];K=[];if(!0===c.p.shrinkToFit&&!0===c.p.forceFit)for(g=c.p.colModel.length-1;0<=g;g--)if(!c.p.colModel[g].hidden){c.p.colModel[g].resizable=
!1;break}"horizontal"===c.p.viewsortcols[1]&&(Q=" ui-i-asc",ja=" ui-i-desc");L=m?"class='ui-th-div-ie'":"";Q="<span class='s-ico' style='display:none'><span sort='asc' class='ui-grid-ico-sort ui-icon-asc"+Q+" ui-state-disabled ui-icon ui-icon-triangle-1-n ui-sort-"+k+"'></span>"+("<span sort='desc' class='ui-grid-ico-sort ui-icon-desc"+ja+" ui-state-disabled ui-icon ui-icon-triangle-1-s ui-sort-"+k+"'></span></span>");if(c.p.multiSort)for(R=c.p.sortname.split(","),g=0;g<R.length;g++)K=a.trim(R[g]).split(" "),
R[g]=a.trim(K[0]),ea[g]=K[1]?a.trim(K[1]):c.p.sortorder||"asc";for(g=0;g<this.p.colNames.length;g++)K=c.p.headertitles?' title="'+a.jgrid.stripHtml(c.p.colNames[g])+'"':"",I+="<th id='"+c.p.id+"_"+c.p.colModel[g].name+"' role='columnheader' class='ui-state-default ui-th-column ui-th-"+k+"'"+K+">",K=c.p.colModel[g].index||c.p.colModel[g].name,I+="<div id='jqgh_"+c.p.id+"_"+c.p.colModel[g].name+"' "+L+">"+c.p.colNames[g],c.p.colModel[g].width=c.p.colModel[g].width?parseInt(c.p.colModel[g].width,10):
150,"boolean"!==typeof c.p.colModel[g].title&&(c.p.colModel[g].title=!0),c.p.colModel[g].lso="",K===c.p.sortname&&(c.p.lastsort=g),c.p.multiSort&&(K=a.inArray(K,R),-1!==K&&(c.p.colModel[g].lso=ea[K])),I+=Q+"</div></th>";I+="</tr></thead>";Q=null;a(this).append(I);a("thead tr:first th",this).hover(function(){a(this).addClass("ui-state-hover")},function(){a(this).removeClass("ui-state-hover")});if(this.p.multiselect){var V=[],ca;a("#cb_"+a.jgrid.jqID(c.p.id),this).bind("click",function(){c.p.selarrrow=
[];var b=!0===c.p.frozenColumns?c.p.id+"_frozen":"";this.checked?(a(c.rows).each(function(d){0<d&&!a(this).hasClass("ui-subgrid")&&!a(this).hasClass("jqgroup")&&!a(this).hasClass("ui-state-disabled")&&(a("#jqg_"+a.jgrid.jqID(c.p.id)+"_"+a.jgrid.jqID(this.id))[c.p.useProp?"prop":"attr"]("checked",!0),a(this).addClass("ui-state-highlight").attr("aria-selected","true"),c.p.selarrrow.push(this.id),c.p.selrow=this.id,b&&(a("#jqg_"+a.jgrid.jqID(c.p.id)+"_"+a.jgrid.jqID(this.id),c.grid.fbDiv)[c.p.useProp?
"prop":"attr"]("checked",!0),a("#"+a.jgrid.jqID(this.id),c.grid.fbDiv).addClass("ui-state-highlight")))}),ca=!0,V=[]):(a(c.rows).each(function(d){0<d&&!a(this).hasClass("ui-subgrid")&&!a(this).hasClass("ui-state-disabled")&&(a("#jqg_"+a.jgrid.jqID(c.p.id)+"_"+a.jgrid.jqID(this.id))[c.p.useProp?"prop":"attr"]("checked",!1),a(this).removeClass("ui-state-highlight").attr("aria-selected","false"),V.push(this.id),b&&(a("#jqg_"+a.jgrid.jqID(c.p.id)+"_"+a.jgrid.jqID(this.id),c.grid.fbDiv)[c.p.useProp?"prop":
"attr"]("checked",!1),a("#"+a.jgrid.jqID(this.id),c.grid.fbDiv).removeClass("ui-state-highlight")))}),c.p.selrow=null,ca=!1);a(c).triggerHandler("jqGridSelectAll",[ca?c.p.selarrrow:V,ca]);a.isFunction(c.p.onSelectAll)&&c.p.onSelectAll.call(c,ca?c.p.selarrrow:V,ca)})}!0===c.p.autowidth&&(I=a(p).innerWidth(),c.p.width=0<I?I:"nw");(function(){var b=0,d=a.jgrid.cell_width?0:r(c.p.cellLayout,0),f=0,g,k=r(c.p.scrollOffset,0),l,m=!1,p,n=0,q;a.each(c.p.colModel,function(){void 0===this.hidden&&(this.hidden=
!1);if(c.p.grouping&&c.p.autowidth){var e=a.inArray(this.name,c.p.groupingView.groupField);0<=e&&c.p.groupingView.groupColumnShow.length>e&&(this.hidden=!c.p.groupingView.groupColumnShow[e])}this.widthOrg=l=r(this.width,0);!1===this.hidden&&(b+=l+d,this.fixed?n+=l+d:f++)});isNaN(c.p.width)&&(c.p.width=b+(!1!==c.p.shrinkToFit||isNaN(c.p.height)?0:k));e.width=c.p.width;c.p.tblwidth=b;!1===c.p.shrinkToFit&&!0===c.p.forceFit&&(c.p.forceFit=!1);!0===c.p.shrinkToFit&&0<f&&(p=e.width-d*f-n,isNaN(c.p.height)||
(p-=k,m=!0),b=0,a.each(c.p.colModel,function(a){!1!==this.hidden||this.fixed||(this.width=l=Math.round(p*this.width/(c.p.tblwidth-d*f-n)),b+=l,g=a)}),q=0,m?e.width-n-(b+d*f)!==k&&(q=e.width-n-(b+d*f)-k):m||1===Math.abs(e.width-n-(b+d*f))||(q=e.width-n-(b+d*f)),c.p.colModel[g].width+=q,c.p.tblwidth=b+q+d*f+n,c.p.tblwidth>c.p.width&&(c.p.colModel[g].width-=c.p.tblwidth-parseInt(c.p.width,10),c.p.tblwidth=c.p.width))})();a(p).css("width",e.width+"px").append("<div class='ui-jqgrid-resize-mark' id='rs_m"+
c.p.id+"'>&#160;</div>");a(l).css("width",e.width+"px");var I=a("thead:first",c).get(0),U="";c.p.footerrow&&(U+="<table role='grid' style='width:"+c.p.tblwidth+"px' class='ui-jqgrid-ftable' cellspacing='0' cellpadding='0' border='0'><tbody><tr role='row' class='ui-widget-content footrow footrow-"+k+"'>");var l=a("tr:first",I),da="<tr class='jqgfirstrow' role='row' style='height:auto'>";c.p.disableClick=!1;a("th",l).each(function(b){N=c.p.colModel[b].width;void 0===c.p.colModel[b].resizable&&(c.p.colModel[b].resizable=
!0);c.p.colModel[b].resizable?(Z=document.createElement("span"),a(Z).html("&#160;").addClass("ui-jqgrid-resize ui-jqgrid-resize-"+k).css("cursor","col-resize"),a(this).addClass(c.p.resizeclass)):Z="";a(this).css("width",N+"px").prepend(Z);Z=null;var d="";c.p.colModel[b].hidden&&(a(this).css("display","none"),d="display:none;");da+="<td role='gridcell' style='height:0px;width:"+N+"px;"+d+"'></td>";e.headers[b]={width:N,el:this};T=c.p.colModel[b].sortable;"boolean"!==typeof T&&(T=c.p.colModel[b].sortable=
!0);d=c.p.colModel[b].name;"cb"!==d&&"subgrid"!==d&&"rn"!==d&&c.p.viewsortcols[2]&&a(">div",this).addClass("ui-jqgrid-sortable");T&&(c.p.multiSort?c.p.viewsortcols[0]?(a("div span.s-ico",this).show(),c.p.colModel[b].lso&&a("div span.ui-icon-"+c.p.colModel[b].lso,this).removeClass("ui-state-disabled")):c.p.colModel[b].lso&&(a("div span.s-ico",this).show(),a("div span.ui-icon-"+c.p.colModel[b].lso,this).removeClass("ui-state-disabled")):c.p.viewsortcols[0]?(a("div span.s-ico",this).show(),b===c.p.lastsort&&
a("div span.ui-icon-"+c.p.sortorder,this).removeClass("ui-state-disabled")):b===c.p.lastsort&&(a("div span.s-ico",this).show(),a("div span.ui-icon-"+c.p.sortorder,this).removeClass("ui-state-disabled")));c.p.footerrow&&(U+="<td role='gridcell' "+q(b,0,"",null,"",!1)+">&#160;</td>")}).mousedown(function(b){if(1===a(b.target).closest("th>span.ui-jqgrid-resize").length){var d=S(this);if(!0===c.p.forceFit){var f=c.p,g=d,k;for(k=d+1;k<c.p.colModel.length;k++)if(!0!==c.p.colModel[k].hidden){g=k;break}f.nv=
g-d}e.dragStart(d,b,aa(d));return!1}}).click(function(b){if(c.p.disableClick)return c.p.disableClick=!1;var d="th>div.ui-jqgrid-sortable",e,f;c.p.viewsortcols[2]||(d="th>div>span>span.ui-grid-ico-sort");b=a(b.target).closest(d);if(1===b.length){var g;if(c.p.frozenColumns){var k=a(this)[0].id.substring(c.p.id.length+1);a(c.p.colModel).each(function(a){if(this.name===k)return g=a,!1})}else g=S(this);c.p.viewsortcols[2]||(e=!0,f=b.attr("sort"));null!=g&&D(a("div",this)[0].id,g,e,f,this);return!1}});
if(c.p.sortable&&a.fn.sortable)try{a(c).jqGrid("sortableColumns",l)}catch(la){}c.p.footerrow&&(U+="</tr></tbody></table>");da+="</tr>";l=document.createElement("tbody");this.appendChild(l);a(this).addClass("ui-jqgrid-btable").append(da);var da=null,l=a("<table class='ui-jqgrid-htable' style='width:"+c.p.tblwidth+"px' role='grid' aria-labelledby='gbox_"+this.id+"' cellspacing='0' cellpadding='0' border='0'></table>").append(I),X=c.p.caption&&!0===c.p.hiddengrid?!0:!1;g=a("<div class='ui-jqgrid-hbox"+
("rtl"===k?"-rtl":"")+"'></div>");I=null;e.hDiv=document.createElement("div");a(e.hDiv).css({width:e.width+"px"}).addClass("ui-state-default ui-jqgrid-hdiv").append(g);a(g).append(l);l=null;X&&a(e.hDiv).hide();c.p.pager&&("string"===typeof c.p.pager?"#"!==c.p.pager.substr(0,1)&&(c.p.pager="#"+c.p.pager):c.p.pager="#"+a(c.p.pager).attr("id"),a(c.p.pager).css({width:e.width+"px"}).addClass("ui-state-default ui-jqgrid-pager ui-corner-bottom").appendTo(p),X&&a(c.p.pager).hide(),W(c.p.pager,""));!1===
c.p.cellEdit&&!0===c.p.hoverrows&&a(c).bind("mouseover",function(c){F=a(c.target).closest("tr.jqgrow");"ui-subgrid"!==a(F).attr("class")&&a(F).addClass("ui-state-hover")}).bind("mouseout",function(c){F=a(c.target).closest("tr.jqgrow");a(F).removeClass("ui-state-hover")});var P,$,ha;a(c).before(e.hDiv).click(function(b){E=b.target;F=a(E,c.rows).closest("tr.jqgrow");if(0===a(F).length||-1<F[0].className.indexOf("ui-state-disabled")||(a(E,c).closest("table.ui-jqgrid-btable").attr("id")||"").replace("_frozen",
"")!==c.id)return this;var d=a(E).hasClass("cbox"),e=a(c).triggerHandler("jqGridBeforeSelectRow",[F[0].id,b]);(e=!1===e||"stop"===e?!1:!0)&&a.isFunction(c.p.beforeSelectRow)&&(e=c.p.beforeSelectRow.call(c,F[0].id,b));if("A"!==E.tagName&&("INPUT"!==E.tagName&&"TEXTAREA"!==E.tagName&&"OPTION"!==E.tagName&&"SELECT"!==E.tagName||d)&&!0===e)if(P=F[0].id,$=a.jgrid.getCellIndex(E),ha=a(E).closest("td,th").html(),a(c).triggerHandler("jqGridCellSelect",[P,$,ha,b]),a.isFunction(c.p.onCellSelect)&&c.p.onCellSelect.call(c,
P,$,ha,b),!0===c.p.cellEdit)if(c.p.multiselect&&d)a(c).jqGrid("setSelection",P,!0,b);else{P=F[0].rowIndex;try{a(c).jqGrid("editCell",P,$,!0)}catch(f){}}else if(c.p.multikey)b[c.p.multikey]?a(c).jqGrid("setSelection",P,!0,b):c.p.multiselect&&d&&(d=a("#jqg_"+a.jgrid.jqID(c.p.id)+"_"+P).is(":checked"),a("#jqg_"+a.jgrid.jqID(c.p.id)+"_"+P)[c.p.useProp?"prop":"attr"]("checked",d));else{if(c.p.multiselect&&c.p.multiboxonly&&!d){var g=c.p.frozenColumns?c.p.id+"_frozen":"";a(c.p.selarrrow).each(function(b,
d){var e=a(c).jqGrid("getGridRowById",d);a(e).removeClass("ui-state-highlight");a("#jqg_"+a.jgrid.jqID(c.p.id)+"_"+a.jgrid.jqID(d))[c.p.useProp?"prop":"attr"]("checked",!1);g&&(a("#"+a.jgrid.jqID(d),"#"+a.jgrid.jqID(g)).removeClass("ui-state-highlight"),a("#jqg_"+a.jgrid.jqID(c.p.id)+"_"+a.jgrid.jqID(d),"#"+a.jgrid.jqID(g))[c.p.useProp?"prop":"attr"]("checked",!1))});c.p.selarrrow=[]}a(c).jqGrid("setSelection",P,!0,b)}}).bind("reloadGrid",function(b,d){!0===c.p.treeGrid&&(c.p.datatype=c.p.treedatatype);
d&&d.current&&c.grid.selectionPreserver(c);"local"===c.p.datatype?(a(c).jqGrid("resetSelection"),c.p.data.length&&A()):c.p.treeGrid||(c.p.selrow=null,c.p.multiselect&&(c.p.selarrrow=[],O(!1)),c.p.savedRow=[]);c.p.scroll&&z.call(c,!0,!1);if(d&&d.page){var e=d.page;e>c.p.lastpage&&(e=c.p.lastpage);1>e&&(e=1);c.p.page=e;c.grid.bDiv.scrollTop=c.grid.prevRowHeight?(e-1)*c.grid.prevRowHeight*c.p.rowNum:0}c.grid.prevRowHeight&&c.p.scroll?(delete c.p.lastpage,c.grid.populateVisible()):c.grid.populate();!0===
c.p._inlinenav&&a(c).jqGrid("showAddEditButtons");return!1}).dblclick(function(b){E=b.target;F=a(E,c.rows).closest("tr.jqgrow");0!==a(F).length&&(P=F[0].rowIndex,$=a.jgrid.getCellIndex(E),a(c).triggerHandler("jqGridDblClickRow",[a(F).attr("id"),P,$,b]),a.isFunction(c.p.ondblClickRow)&&c.p.ondblClickRow.call(c,a(F).attr("id"),P,$,b))}).bind("contextmenu",function(b){E=b.target;F=a(E,c.rows).closest("tr.jqgrow");0!==a(F).length&&(c.p.multiselect||a(c).jqGrid("setSelection",F[0].id,!0,b),P=F[0].rowIndex,
$=a.jgrid.getCellIndex(E),a(c).triggerHandler("jqGridRightClickRow",[a(F).attr("id"),P,$,b]),a.isFunction(c.p.onRightClickRow)&&c.p.onRightClickRow.call(c,a(F).attr("id"),P,$,b))});e.bDiv=document.createElement("div");m&&"auto"===String(c.p.height).toLowerCase()&&(c.p.height="100%");a(e.bDiv).append(a('<div style="position:relative;'+(m&&8>a.jgrid.msiever()?"height:0.01%;":"")+'"></div>').append("<div></div>").append(this)).addClass("ui-jqgrid-bdiv").css({height:c.p.height+(isNaN(c.p.height)?"":"px"),
width:e.width+"px"}).scroll(e.scrollGrid);a("table:first",e.bDiv).css({width:c.p.tblwidth+"px"});a.support.tbody||2===a("tbody",this).length&&a("tbody:gt(0)",this).remove();c.p.multikey&&(a.jgrid.msie?a(e.bDiv).bind("selectstart",function(){return!1}):a(e.bDiv).bind("mousedown",function(){return!1}));X&&a(e.bDiv).hide();e.cDiv=document.createElement("div");var ia=!0===c.p.hidegrid?a("<a role='link' class='ui-jqgrid-titlebar-close ui-corner-all HeaderButton' />").hover(function(){ia.addClass("ui-state-hover")},
function(){ia.removeClass("ui-state-hover")}).append("<span class='ui-icon ui-icon-circle-triangle-n'></span>").css("rtl"===k?"left":"right","0px"):"";a(e.cDiv).append(ia).append("<span class='ui-jqgrid-title'>"+c.p.caption+"</span>").addClass("ui-jqgrid-titlebar ui-jqgrid-caption"+("rtl"===k?"-rtl":"")+" ui-widget-header ui-corner-top ui-helper-clearfix");a(e.cDiv).insertBefore(e.hDiv);c.p.toolbar[0]&&(e.uDiv=document.createElement("div"),"top"===c.p.toolbar[1]?a(e.uDiv).insertBefore(e.hDiv):"bottom"===
c.p.toolbar[1]&&a(e.uDiv).insertAfter(e.hDiv),"both"===c.p.toolbar[1]?(e.ubDiv=document.createElement("div"),a(e.uDiv).addClass("ui-userdata ui-state-default").attr("id","t_"+this.id).insertBefore(e.hDiv),a(e.ubDiv).addClass("ui-userdata ui-state-default").attr("id","tb_"+this.id).insertAfter(e.hDiv),X&&a(e.ubDiv).hide()):a(e.uDiv).width(e.width).addClass("ui-userdata ui-state-default").attr("id","t_"+this.id),X&&a(e.uDiv).hide());c.p.toppager&&(c.p.toppager=a.jgrid.jqID(c.p.id)+"_toppager",e.topDiv=
a("<div id='"+c.p.toppager+"'></div>")[0],c.p.toppager="#"+c.p.toppager,a(e.topDiv).addClass("ui-state-default ui-jqgrid-toppager").width(e.width).insertBefore(e.hDiv),W(c.p.toppager,"_t"));c.p.footerrow&&(e.sDiv=a("<div class='ui-jqgrid-sdiv'></div>")[0],g=a("<div class='ui-jqgrid-hbox"+("rtl"===k?"-rtl":"")+"'></div>"),a(e.sDiv).append(g).width(e.width).insertAfter(e.hDiv),a(g).append(U),e.footers=a(".ui-jqgrid-ftable",e.sDiv)[0].rows[0].cells,c.p.rownumbers&&(e.footers[0].className="ui-state-default jqgrid-rownum"),
X&&a(e.sDiv).hide());g=null;if(c.p.caption){var ka=c.p.datatype;!0===c.p.hidegrid&&(a(".ui-jqgrid-titlebar-close",e.cDiv).click(function(b){var d=a.isFunction(c.p.onHeaderClick),f=".ui-jqgrid-bdiv, .ui-jqgrid-hdiv, .ui-jqgrid-pager, .ui-jqgrid-sdiv",g,k=this;!0===c.p.toolbar[0]&&("both"===c.p.toolbar[1]&&(f+=", #"+a(e.ubDiv).attr("id")),f+=", #"+a(e.uDiv).attr("id"));g=a(f,"#gview_"+a.jgrid.jqID(c.p.id)).length;"visible"===c.p.gridstate?a(f,"#gbox_"+a.jgrid.jqID(c.p.id)).slideUp("fast",function(){g--;
0===g&&(a("span",k).removeClass("ui-icon-circle-triangle-n").addClass("ui-icon-circle-triangle-s"),c.p.gridstate="hidden",a("#gbox_"+a.jgrid.jqID(c.p.id)).hasClass("ui-resizable")&&a(".ui-resizable-handle","#gbox_"+a.jgrid.jqID(c.p.id)).hide(),a(c).triggerHandler("jqGridHeaderClick",[c.p.gridstate,b]),d&&(X||c.p.onHeaderClick.call(c,c.p.gridstate,b)))}):"hidden"===c.p.gridstate&&a(f,"#gbox_"+a.jgrid.jqID(c.p.id)).slideDown("fast",function(){g--;0===g&&(a("span",k).removeClass("ui-icon-circle-triangle-s").addClass("ui-icon-circle-triangle-n"),
X&&(c.p.datatype=ka,G(),X=!1),c.p.gridstate="visible",a("#gbox_"+a.jgrid.jqID(c.p.id)).hasClass("ui-resizable")&&a(".ui-resizable-handle","#gbox_"+a.jgrid.jqID(c.p.id)).show(),a(c).triggerHandler("jqGridHeaderClick",[c.p.gridstate,b]),d&&(X||c.p.onHeaderClick.call(c,c.p.gridstate,b)))});return!1}),X&&(c.p.datatype="local",a(".ui-jqgrid-titlebar-close",e.cDiv).trigger("click")))}else a(e.cDiv).hide();a(e.hDiv).after(e.bDiv).mousemove(function(a){if(e.resizing)return e.dragMove(a),!1});a(".ui-jqgrid-labels",
e.hDiv).bind("selectstart",function(){return!1});a(document).bind("mouseup.jqGrid"+c.p.id,function(){return e.resizing?(e.dragEnd(),!1):!0});c.formatCol=q;c.sortData=D;c.updatepager=function(b,d){var e,f,g,k,h,l,m,p="",n=c.p.pager?"_"+a.jgrid.jqID(c.p.pager.substr(1)):"",q=c.p.toppager?"_"+c.p.toppager.substr(1):"";g=parseInt(c.p.page,10)-1;0>g&&(g=0);g*=parseInt(c.p.rowNum,10);h=g+c.p.reccount;if(c.p.scroll){e=a("tbody:first > tr:gt(0)",c.grid.bDiv);g=h-e.length;c.p.reccount=e.length;if(e=e.outerHeight()||
c.grid.prevRowHeight)f=g*e,m=parseInt(c.p.records,10)*e,a(">div:first",c.grid.bDiv).css({height:m}).children("div:first").css({height:f,display:f?"":"none"}),0==c.grid.bDiv.scrollTop&&1<c.p.page&&(c.grid.bDiv.scrollTop=c.p.rowNum*(c.p.page-1)*e);c.grid.bDiv.scrollLeft=c.grid.hDiv.scrollLeft}p=c.p.pager||"";if(p+=c.p.toppager?p?","+c.p.toppager:c.p.toppager:"")m=a.jgrid.formatter.integer||{},e=r(c.p.page),f=r(c.p.lastpage),a(".selbox",p)[this.p.useProp?"prop":"attr"]("disabled",!1),!0===c.p.pginput&&
(a(".ui-pg-input",p).val(c.p.page),k=c.p.toppager?"#sp_1"+n+",#sp_1"+q:"#sp_1"+n,a(k).html(a.fmatter?a.fmatter.util.NumberFormat(c.p.lastpage,m):c.p.lastpage)),c.p.viewrecords&&(0===c.p.reccount?a(".ui-paging-info",p).html(c.p.emptyrecords):(k=g+1,l=c.p.records,a.fmatter&&(k=a.fmatter.util.NumberFormat(k,m),h=a.fmatter.util.NumberFormat(h,m),l=a.fmatter.util.NumberFormat(l,m)),a(".ui-paging-info",p).html(a.jgrid.format(c.p.recordtext,k,h,l)))),!0===c.p.pgbuttons&&(0>=e&&(e=f=0),1===e||0===e?(a("#first"+
n+", #prev"+n).addClass("ui-state-disabled").removeClass("ui-state-hover"),c.p.toppager&&a("#first_t"+q+", #prev_t"+q).addClass("ui-state-disabled").removeClass("ui-state-hover")):(a("#first"+n+", #prev"+n).removeClass("ui-state-disabled"),c.p.toppager&&a("#first_t"+q+", #prev_t"+q).removeClass("ui-state-disabled")),e===f||0===e?(a("#next"+n+", #last"+n).addClass("ui-state-disabled").removeClass("ui-state-hover"),c.p.toppager&&a("#next_t"+q+", #last_t"+q).addClass("ui-state-disabled").removeClass("ui-state-hover")):
(a("#next"+n+", #last"+n).removeClass("ui-state-disabled"),c.p.toppager&&a("#next_t"+q+", #last_t"+q).removeClass("ui-state-disabled")));!0===b&&!0===c.p.rownumbers&&a(">td.jqgrid-rownum",c.rows).each(function(b){a(this).html(g+1+b)});d&&c.p.jqgdnd&&a(c).jqGrid("gridDnD","updateDnD");a(c).triggerHandler("jqGridGridComplete");a.isFunction(c.p.gridComplete)&&c.p.gridComplete.call(c);a(c).triggerHandler("jqGridAfterGridComplete")};c.refreshIndex=A;c.setHeadCheckBox=O;c.constructTr=J;c.formatter=function(a,
b,c,d,e){return s(a,b,c,d,e)};a.extend(e,{populate:G,emptyRows:z,beginReq:y,endReq:C});this.grid=e;c.addXmlData=function(a){B(a,c.grid.bDiv)};c.addJSONData=function(a){M(a,c.grid.bDiv)};this.grid.cols=this.rows[0].cells;a(c).triggerHandler("jqGridInitGrid");a.isFunction(c.p.onInitGrid)&&c.p.onInitGrid.call(c);G();c.p.hiddengrid=!1}}}})};a.jgrid.extend({getGridParam:function(a){var e=this[0];if(e&&e.grid)return a?void 0!==e.p[a]?e.p[a]:null:e.p},setGridParam:function(d){return this.each(function(){this.grid&&
"object"===typeof d&&a.extend(!0,this.p,d)})},getGridRowById:function(d){var e;this.each(function(){try{for(var b=this.rows.length;b--;)if(d.toString()===this.rows[b].id){e=this.rows[b];break}}catch(f){e=a(this.grid.bDiv).find("#"+a.jgrid.jqID(d))}});return e},getDataIDs:function(){var d=[],e=0,b,f=0;this.each(function(){if((b=this.rows.length)&&0<b)for(;e<b;)a(this.rows[e]).hasClass("jqgrow")&&(d[f]=this.rows[e].id,f++),e++});return d},setSelection:function(d,e,b){return this.each(function(){var f,
c,h,g,k,l;void 0!==d&&(e=!1===e?!1:!0,!(c=a(this).jqGrid("getGridRowById",d))||!c.className||-1<c.className.indexOf("ui-state-disabled")||(!0===this.p.scrollrows&&(h=a(this).jqGrid("getGridRowById",d).rowIndex,0<=h&&(f=a(this.grid.bDiv)[0].clientHeight,g=a(this.grid.bDiv)[0].scrollTop,k=a(this.rows[h]).position().top,h=this.rows[h].clientHeight,k+h>=f+g?a(this.grid.bDiv)[0].scrollTop=k-(f+g)+h+g:k<f+g&&k<g&&(a(this.grid.bDiv)[0].scrollTop=k))),!0===this.p.frozenColumns&&(l=this.p.id+"_frozen"),this.p.multiselect?
(this.setHeadCheckBox(!1),this.p.selrow=c.id,g=a.inArray(this.p.selrow,this.p.selarrrow),-1===g?("ui-subgrid"!==c.className&&a(c).addClass("ui-state-highlight").attr("aria-selected","true"),f=!0,this.p.selarrrow.push(this.p.selrow)):("ui-subgrid"!==c.className&&a(c).removeClass("ui-state-highlight").attr("aria-selected","false"),f=!1,this.p.selarrrow.splice(g,1),k=this.p.selarrrow[0],this.p.selrow=void 0===k?null:k),a("#jqg_"+a.jgrid.jqID(this.p.id)+"_"+a.jgrid.jqID(c.id))[this.p.useProp?"prop":"attr"]("checked",
f),l&&(-1===g?a("#"+a.jgrid.jqID(d),"#"+a.jgrid.jqID(l)).addClass("ui-state-highlight"):a("#"+a.jgrid.jqID(d),"#"+a.jgrid.jqID(l)).removeClass("ui-state-highlight"),a("#jqg_"+a.jgrid.jqID(this.p.id)+"_"+a.jgrid.jqID(d),"#"+a.jgrid.jqID(l))[this.p.useProp?"prop":"attr"]("checked",f)),e&&(a(this).triggerHandler("jqGridSelectRow",[c.id,f,b]),this.p.onSelectRow&&this.p.onSelectRow.call(this,c.id,f,b))):"ui-subgrid"!==c.className&&(this.p.selrow!==c.id?(a(a(this).jqGrid("getGridRowById",this.p.selrow)).removeClass("ui-state-highlight").attr({"aria-selected":"false",
tabindex:"-1"}),a(c).addClass("ui-state-highlight").attr({"aria-selected":"true",tabindex:"0"}),l&&(a("#"+a.jgrid.jqID(this.p.selrow),"#"+a.jgrid.jqID(l)).removeClass("ui-state-highlight"),a("#"+a.jgrid.jqID(d),"#"+a.jgrid.jqID(l)).addClass("ui-state-highlight")),f=!0):f=!1,this.p.selrow=c.id,e&&(a(this).triggerHandler("jqGridSelectRow",[c.id,f,b]),this.p.onSelectRow&&this.p.onSelectRow.call(this,c.id,f,b)))))})},resetSelection:function(d){return this.each(function(){var e=this,b,f;!0===e.p.frozenColumns&&
(f=e.p.id+"_frozen");if(void 0!==d){b=d===e.p.selrow?e.p.selrow:d;a("#"+a.jgrid.jqID(e.p.id)+" tbody:first tr#"+a.jgrid.jqID(b)).removeClass("ui-state-highlight").attr("aria-selected","false");f&&a("#"+a.jgrid.jqID(b),"#"+a.jgrid.jqID(f)).removeClass("ui-state-highlight");if(e.p.multiselect){a("#jqg_"+a.jgrid.jqID(e.p.id)+"_"+a.jgrid.jqID(b),"#"+a.jgrid.jqID(e.p.id))[e.p.useProp?"prop":"attr"]("checked",!1);if(f)a("#jqg_"+a.jgrid.jqID(e.p.id)+"_"+a.jgrid.jqID(b),"#"+a.jgrid.jqID(f))[e.p.useProp?"prop":
"attr"]("checked",!1);e.setHeadCheckBox(!1)}b=null}else e.p.multiselect?(a(e.p.selarrrow).each(function(b,d){a(a(e).jqGrid("getGridRowById",d)).removeClass("ui-state-highlight").attr("aria-selected","false");a("#jqg_"+a.jgrid.jqID(e.p.id)+"_"+a.jgrid.jqID(d))[e.p.useProp?"prop":"attr"]("checked",!1);f&&(a("#"+a.jgrid.jqID(d),"#"+a.jgrid.jqID(f)).removeClass("ui-state-highlight"),a("#jqg_"+a.jgrid.jqID(e.p.id)+"_"+a.jgrid.jqID(d),"#"+a.jgrid.jqID(f))[e.p.useProp?"prop":"attr"]("checked",!1))}),e.setHeadCheckBox(!1),
e.p.selarrrow=[],e.p.selrow=null):e.p.selrow&&(a("#"+a.jgrid.jqID(e.p.id)+" tbody:first tr#"+a.jgrid.jqID(e.p.selrow)).removeClass("ui-state-highlight").attr("aria-selected","false"),f&&a("#"+a.jgrid.jqID(e.p.selrow),"#"+a.jgrid.jqID(f)).removeClass("ui-state-highlight"),e.p.selrow=null);!0===e.p.cellEdit&&0<=parseInt(e.p.iCol,10)&&0<=parseInt(e.p.iRow,10)&&(a("td:eq("+e.p.iCol+")",e.rows[e.p.iRow]).removeClass("edit-cell ui-state-highlight"),a(e.rows[e.p.iRow]).removeClass("selected-row ui-state-hover"));
e.p.savedRow=[]})},getRowData:function(d){var e={},b,f=!1,c,h=0;this.each(function(){var g=this,k,l;if(void 0===d)f=!0,b=[],c=g.rows.length;else{l=a(g).jqGrid("getGridRowById",d);if(!l)return e;c=2}for(;h<c;)f&&(l=g.rows[h]),a(l).hasClass("jqgrow")&&(a('td[role="gridcell"]',l).each(function(b){k=g.p.colModel[b].name;if("cb"!==k&&"subgrid"!==k&&"rn"!==k)if(!0===g.p.treeGrid&&k===g.p.ExpandColumn)e[k]=a.jgrid.htmlDecode(a("span:first",this).html());else try{e[k]=a.unformat.call(g,this,{rowId:l.id,colModel:g.p.colModel[b]},
b)}catch(c){e[k]=a.jgrid.htmlDecode(a(this).html())}}),f&&(b.push(e),e={})),h++});return b||e},delRowData:function(d){var e=!1,b,f;this.each(function(){b=a(this).jqGrid("getGridRowById",d);if(!b)return!1;a(b).remove();this.p.records--;this.p.reccount--;this.updatepager(!0,!1);e=!0;this.p.multiselect&&(f=a.inArray(d,this.p.selarrrow),-1!==f&&this.p.selarrrow.splice(f,1));this.p.selrow=this.p.multiselect&&0<this.p.selarrrow.length?this.p.selarrrow[this.p.selarrrow.length-1]:null;if("local"===this.p.datatype){var c=
a.jgrid.stripPref(this.p.idPrefix,d),c=this.p._index[c];void 0!==c&&(this.p.data.splice(c,1),this.refreshIndex())}if(!0===this.p.altRows&&e){var h=this.p.altclass;a(this.rows).each(function(b){1===b%2?a(this).addClass(h):a(this).removeClass(h)})}});return e},setRowData:function(d,e,b){var f,c=!0,h;this.each(function(){if(!this.grid)return!1;var g=this,k,l,m=typeof b,p={};l=a(this).jqGrid("getGridRowById",d);if(!l)return!1;if(e)try{if(a(this.p.colModel).each(function(b){f=this.name;var c=a.jgrid.getAccessor(e,
f);void 0!==c&&(p[f]=this.formatter&&"string"===typeof this.formatter&&"date"===this.formatter?a.unformat.date.call(g,c,this):c,k=g.formatter(d,c,b,e,"edit"),h=this.title?{title:a.jgrid.stripHtml(k)}:{},!0===g.p.treeGrid&&f===g.p.ExpandColumn?a("td[role='gridcell']:eq("+b+") > span:first",l).html(k).attr(h):a("td[role='gridcell']:eq("+b+")",l).html(k).attr(h))}),"local"===g.p.datatype){var r=a.jgrid.stripPref(g.p.idPrefix,d),q=g.p._index[r],n;if(g.p.treeGrid)for(n in g.p.treeReader)g.p.treeReader.hasOwnProperty(n)&&
delete p[g.p.treeReader[n]];void 0!==q&&(g.p.data[q]=a.extend(!0,g.p.data[q],p));p=null}}catch(s){c=!1}c&&("string"===m?a(l).addClass(b):null!==b&&"object"===m&&a(l).css(b),a(g).triggerHandler("jqGridAfterGridComplete"))});return c},addRowData:function(d,e,b,f){b||(b="last");var c=!1,h,g,k,l,m,p,r,q,n="",s,t,v,u,w,x;e&&(a.isArray(e)?(s=!0,b="last",t=d):(e=[e],s=!1),this.each(function(){var z=e.length;m=!0===this.p.rownumbers?1:0;k=!0===this.p.multiselect?1:0;l=!0===this.p.subGrid?1:0;s||(void 0!==
d?d=String(d):(d=a.jgrid.randId(),!1!==this.p.keyIndex&&(t=this.p.colModel[this.p.keyIndex+k+l+m].name,void 0!==e[0][t]&&(d=e[0][t]))));v=this.p.altclass;for(var A=0,J="",B={},M=a.isFunction(this.p.afterInsertRow)?!0:!1;A<z;){u=e[A];g=[];if(s){try{d=u[t],void 0===d&&(d=a.jgrid.randId())}catch(H){d=a.jgrid.randId()}J=!0===this.p.altRows?0===(this.rows.length-1)%2?v:"":""}x=d;d=this.p.idPrefix+d;m&&(n=this.formatCol(0,1,"",null,d,!0),g[g.length]='<td role="gridcell" class="ui-state-default jqgrid-rownum" '+
n+">0</td>");k&&(q='<input role="checkbox" type="checkbox" id="jqg_'+this.p.id+"_"+d+'" class="cbox"/>',n=this.formatCol(m,1,"",null,d,!0),g[g.length]='<td role="gridcell" '+n+">"+q+"</td>");l&&(g[g.length]=a(this).jqGrid("addSubGridCell",k+m,1));for(r=k+l+m;r<this.p.colModel.length;r++)w=this.p.colModel[r],h=w.name,B[h]=u[h],q=this.formatter(d,a.jgrid.getAccessor(u,h),r,u),n=this.formatCol(r,1,q,u,d,B),g[g.length]='<td role="gridcell" '+n+">"+q+"</td>";g.unshift(this.constructTr(d,!1,J,B,u,!1));
g[g.length]="</tr>";if(0===this.rows.length)a("table:first",this.grid.bDiv).append(g.join(""));else switch(b){case "last":a(this.rows[this.rows.length-1]).after(g.join(""));p=this.rows.length-1;break;case "first":a(this.rows[0]).after(g.join(""));p=1;break;case "after":if(p=a(this).jqGrid("getGridRowById",f))a(this.rows[p.rowIndex+1]).hasClass("ui-subgrid")?a(this.rows[p.rowIndex+1]).after(g):a(p).after(g.join("")),p=p.rowIndex+1;break;case "before":if(p=a(this).jqGrid("getGridRowById",f))a(p).before(g.join("")),
p=p.rowIndex-1}!0===this.p.subGrid&&a(this).jqGrid("addSubGrid",k+m,p);this.p.records++;this.p.reccount++;a(this).triggerHandler("jqGridAfterInsertRow",[d,u,u]);M&&this.p.afterInsertRow.call(this,d,u,u);A++;"local"===this.p.datatype&&(B[this.p.localReader.id]=x,this.p._index[x]=this.p.data.length,this.p.data.push(B),B={})}!0!==this.p.altRows||s||("last"===b?1===(this.rows.length-1)%2&&a(this.rows[this.rows.length-1]).addClass(v):a(this.rows).each(function(b){1===b%2?a(this).addClass(v):a(this).removeClass(v)}));
this.updatepager(!0,!0);c=!0}));return c},footerData:function(d,e,b){function f(a){for(var b in a)if(a.hasOwnProperty(b))return!1;return!0}var c,h=!1,g={},k;void 0==d&&(d="get");"boolean"!==typeof b&&(b=!0);d=d.toLowerCase();this.each(function(){var l=this,m;if(!l.grid||!l.p.footerrow||"set"===d&&f(e))return!1;h=!0;a(this.p.colModel).each(function(f){c=this.name;"set"===d?void 0!==e[c]&&(m=b?l.formatter("",e[c],f,e,"edit"):e[c],k=this.title?{title:a.jgrid.stripHtml(m)}:{},a("tr.footrow td:eq("+f+
")",l.grid.sDiv).html(m).attr(k),h=!0):"get"===d&&(g[c]=a("tr.footrow td:eq("+f+")",l.grid.sDiv).html())})});return"get"===d?g:h},showHideCol:function(d,e){return this.each(function(){var b=this,f=!1,c=a.jgrid.cell_width?0:b.p.cellLayout,h;if(b.grid){"string"===typeof d&&(d=[d]);e="none"!==e?"":"none";var g=""===e?!0:!1,k=b.p.groupHeader&&("object"===typeof b.p.groupHeader||a.isFunction(b.p.groupHeader));k&&a(b).jqGrid("destroyGroupHeader",!1);a(this.p.colModel).each(function(k){if(-1!==a.inArray(this.name,
d)&&this.hidden===g){if(!0===b.p.frozenColumns&&!0===this.frozen)return!0;a("tr[role=rowheader]",b.grid.hDiv).each(function(){a(this.cells[k]).css("display",e)});a(b.rows).each(function(){a(this).hasClass("jqgroup")||a(this.cells[k]).css("display",e)});b.p.footerrow&&a("tr.footrow td:eq("+k+")",b.grid.sDiv).css("display",e);h=parseInt(this.width,10);b.p.tblwidth="none"===e?b.p.tblwidth-(h+c):b.p.tblwidth+(h+c);this.hidden=!g;f=!0;a(b).triggerHandler("jqGridShowHideCol",[g,this.name,k])}});!0===f&&
(!0!==b.p.shrinkToFit||isNaN(b.p.height)||(b.p.tblwidth+=parseInt(b.p.scrollOffset,10)),a(b).jqGrid("setGridWidth",!0===b.p.shrinkToFit?b.p.tblwidth:b.p.width));k&&a(b).jqGrid("setGroupHeaders",b.p.groupHeader)}})},hideCol:function(d){return this.each(function(){a(this).jqGrid("showHideCol",d,"none")})},showCol:function(d){return this.each(function(){a(this).jqGrid("showHideCol",d,"")})},remapColumns:function(d,e,b){function f(b){var c;c=b.length?a.makeArray(b):a.extend({},b);a.each(d,function(a){b[a]=
c[this]})}function c(b,c){a(">tr"+(c||""),b).each(function(){var b=this,c=a.makeArray(b.cells);a.each(d,function(){var a=c[this];a&&b.appendChild(a)})})}var h=this.get(0);f(h.p.colModel);f(h.p.colNames);f(h.grid.headers);c(a("thead:first",h.grid.hDiv),b&&":not(.ui-jqgrid-labels)");e&&c(a("#"+a.jgrid.jqID(h.p.id)+" tbody:first"),".jqgfirstrow, tr.jqgrow, tr.jqfoot");h.p.footerrow&&c(a("tbody:first",h.grid.sDiv));h.p.remapColumns&&(h.p.remapColumns.length?f(h.p.remapColumns):h.p.remapColumns=a.makeArray(d));
h.p.lastsort=a.inArray(h.p.lastsort,d);h.p.treeGrid&&(h.p.expColInd=a.inArray(h.p.expColInd,d));a(h).triggerHandler("jqGridRemapColumns",[d,e,b])},setGridWidth:function(d,e){return this.each(function(){if(this.grid){var b=this,f,c=0,h=a.jgrid.cell_width?0:b.p.cellLayout,g,k=0,l=!1,m=b.p.scrollOffset,p,r=0,q;"boolean"!==typeof e&&(e=b.p.shrinkToFit);if(!isNaN(d)){d=parseInt(d,10);b.grid.width=b.p.width=d;a("#gbox_"+a.jgrid.jqID(b.p.id)).css("width",d+"px");a("#gview_"+a.jgrid.jqID(b.p.id)).css("width",
d+"px");a(b.grid.bDiv).css("width",d+"px");a(b.grid.hDiv).css("width",d+"px");b.p.pager&&a(b.p.pager).css("width",d+"px");b.p.toppager&&a(b.p.toppager).css("width",d+"px");!0===b.p.toolbar[0]&&(a(b.grid.uDiv).css("width",d+"px"),"both"===b.p.toolbar[1]&&a(b.grid.ubDiv).css("width",d+"px"));b.p.footerrow&&a(b.grid.sDiv).css("width",d+"px");!1===e&&!0===b.p.forceFit&&(b.p.forceFit=!1);if(!0===e){a.each(b.p.colModel,function(){!1===this.hidden&&(f=this.widthOrg,c+=f+h,this.fixed?r+=f+h:k++)});if(0===
k)return;b.p.tblwidth=c;p=d-h*k-r;!isNaN(b.p.height)&&(a(b.grid.bDiv)[0].clientHeight<a(b.grid.bDiv)[0].scrollHeight||1===b.rows.length)&&(l=!0,p-=m);var c=0,n=0<b.grid.cols.length;a.each(b.p.colModel,function(a){!1!==this.hidden||this.fixed||(f=this.widthOrg,f=Math.round(p*f/(b.p.tblwidth-h*k-r)),0>f||(this.width=f,c+=f,b.grid.headers[a].width=f,b.grid.headers[a].el.style.width=f+"px",b.p.footerrow&&(b.grid.footers[a].style.width=f+"px"),n&&(b.grid.cols[a].style.width=f+"px"),g=a))});if(!g)return;
q=0;l?d-r-(c+h*k)!==m&&(q=d-r-(c+h*k)-m):1!==Math.abs(d-r-(c+h*k))&&(q=d-r-(c+h*k));b.p.colModel[g].width+=q;b.p.tblwidth=c+q+h*k+r;b.p.tblwidth>d?(l=b.p.tblwidth-parseInt(d,10),b.p.tblwidth=d,f=b.p.colModel[g].width-=l):f=b.p.colModel[g].width;b.grid.headers[g].width=f;b.grid.headers[g].el.style.width=f+"px";n&&(b.grid.cols[g].style.width=f+"px");b.p.footerrow&&(b.grid.footers[g].style.width=f+"px")}b.p.tblwidth&&(a("table:first",b.grid.bDiv).css("width",b.p.tblwidth+"px"),a("table:first",b.grid.hDiv).css("width",
b.p.tblwidth+"px"),b.grid.hDiv.scrollLeft=b.grid.bDiv.scrollLeft,b.p.footerrow&&a("table:first",b.grid.sDiv).css("width",b.p.tblwidth+"px"))}}})},setGridHeight:function(d){return this.each(function(){if(this.grid){var e=a(this.grid.bDiv);e.css({height:d+(isNaN(d)?"":"px")});!0===this.p.frozenColumns&&a("#"+a.jgrid.jqID(this.p.id)+"_frozen").parent().height(e.height()-16);this.p.height=d;this.p.scroll&&this.grid.populateVisible()}})},setCaption:function(d){return this.each(function(){this.p.caption=
d;a("span.ui-jqgrid-title, span.ui-jqgrid-title-rtl",this.grid.cDiv).html(d);a(this.grid.cDiv).show()})},setLabel:function(d,e,b,f){return this.each(function(){var c=-1;if(this.grid&&void 0!==d&&(a(this.p.colModel).each(function(a){if(this.name===d)return c=a,!1}),0<=c)){var h=a("tr.ui-jqgrid-labels th:eq("+c+")",this.grid.hDiv);if(e){var g=a(".s-ico",h);a("[id^=jqgh_]",h).empty().html(e).append(g);this.p.colNames[c]=e}b&&("string"===typeof b?a(h).addClass(b):a(h).css(b));"object"===typeof f&&a(h).attr(f)}})},
setCell:function(d,e,b,f,c,h){return this.each(function(){var g=-1,k,l;if(this.grid&&(isNaN(e)?a(this.p.colModel).each(function(a){if(this.name===e)return g=a,!1}):g=parseInt(e,10),0<=g&&(k=a(this).jqGrid("getGridRowById",d)))){var m=a("td:eq("+g+")",k);if(""!==b||!0===h)k=this.formatter(d,b,g,k,"edit"),l=this.p.colModel[g].title?{title:a.jgrid.stripHtml(k)}:{},this.p.treeGrid&&0<a(".tree-wrap",a(m)).length?a("span",a(m)).html(k).attr(l):a(m).html(k).attr(l),"local"===this.p.datatype&&(k=this.p.colModel[g],
b=k.formatter&&"string"===typeof k.formatter&&"date"===k.formatter?a.unformat.date.call(this,b,k):b,l=this.p._index[a.jgrid.stripPref(this.p.idPrefix,d)],void 0!==l&&(this.p.data[l][k.name]=b));"string"===typeof f?a(m).addClass(f):f&&a(m).css(f);"object"===typeof c&&a(m).attr(c)}})},getCell:function(d,e){var b=!1;this.each(function(){var f=-1;if(this.grid&&(isNaN(e)?a(this.p.colModel).each(function(a){if(this.name===e)return f=a,!1}):f=parseInt(e,10),0<=f)){var c=a(this).jqGrid("getGridRowById",d);
if(c)try{b=a.unformat.call(this,a("td:eq("+f+")",c),{rowId:c.id,colModel:this.p.colModel[f]},f)}catch(h){b=a.jgrid.htmlDecode(a("td:eq("+f+")",c).html())}}});return b},getCol:function(d,e,b){var f=[],c,h=0,g,k,l;e="boolean"!==typeof e?!1:e;void 0===b&&(b=!1);this.each(function(){var m=-1;if(this.grid&&(isNaN(d)?a(this.p.colModel).each(function(a){if(this.name===d)return m=a,!1}):m=parseInt(d,10),0<=m)){var p=this.rows.length,r=0,q=0;if(p&&0<p){for(;r<p;){if(a(this.rows[r]).hasClass("jqgrow")){try{c=
a.unformat.call(this,a(this.rows[r].cells[m]),{rowId:this.rows[r].id,colModel:this.p.colModel[m]},m)}catch(n){c=a.jgrid.htmlDecode(this.rows[r].cells[m].innerHTML)}b?(l=parseFloat(c),isNaN(l)||(h+=l,void 0===k&&(k=g=l),g=Math.min(g,l),k=Math.max(k,l),q++)):e?f.push({id:this.rows[r].id,value:c}):f.push(c)}r++}if(b)switch(b.toLowerCase()){case "sum":f=h;break;case "avg":f=h/q;break;case "count":f=p-1;break;case "min":f=g;break;case "max":f=k}}}});return f},clearGridData:function(d){return this.each(function(){if(this.grid){"boolean"!==
typeof d&&(d=!1);if(this.p.deepempty)a("#"+a.jgrid.jqID(this.p.id)+" tbody:first tr:gt(0)").remove();else{var e=a("#"+a.jgrid.jqID(this.p.id)+" tbody:first tr:first")[0];a("#"+a.jgrid.jqID(this.p.id)+" tbody:first").empty().append(e)}this.p.footerrow&&d&&a(".ui-jqgrid-ftable td",this.grid.sDiv).html("&#160;");this.p.selrow=null;this.p.selarrrow=[];this.p.savedRow=[];this.p.records=0;this.p.page=1;this.p.lastpage=0;this.p.reccount=0;this.p.data=[];this.p._index={};this.updatepager(!0,!1)}})},getInd:function(d,
e){var b=!1,f;this.each(function(){(f=a(this).jqGrid("getGridRowById",d))&&(b=!0===e?f:f.rowIndex)});return b},bindKeys:function(d){var e=a.extend({onEnter:null,onSpace:null,onLeftKey:null,onRightKey:null,scrollingRows:!0},d||{});return this.each(function(){var b=this;a("body").is("[role]")||a("body").attr("role","application");b.p.scrollrows=e.scrollingRows;a(b).keydown(function(d){var c=a(b).find("tr[tabindex=0]")[0],h,g,k,l=b.p.treeReader.expanded_field;if(c)if(k=b.p._index[a.jgrid.stripPref(b.p.idPrefix,
c.id)],37===d.keyCode||38===d.keyCode||39===d.keyCode||40===d.keyCode){if(38===d.keyCode){g=c.previousSibling;h="";if(g)if(a(g).is(":hidden"))for(;g;){if(g=g.previousSibling,!a(g).is(":hidden")&&a(g).hasClass("jqgrow")){h=g.id;break}}else h=g.id;a(b).jqGrid("setSelection",h,!0,d);d.preventDefault()}if(40===d.keyCode){g=c.nextSibling;h="";if(g)if(a(g).is(":hidden"))for(;g;){if(g=g.nextSibling,!a(g).is(":hidden")&&a(g).hasClass("jqgrow")){h=g.id;break}}else h=g.id;a(b).jqGrid("setSelection",h,!0,d);
d.preventDefault()}37===d.keyCode&&(b.p.treeGrid&&b.p.data[k][l]&&a(c).find("div.treeclick").trigger("click"),a(b).triggerHandler("jqGridKeyLeft",[b.p.selrow]),a.isFunction(e.onLeftKey)&&e.onLeftKey.call(b,b.p.selrow));39===d.keyCode&&(b.p.treeGrid&&!b.p.data[k][l]&&a(c).find("div.treeclick").trigger("click"),a(b).triggerHandler("jqGridKeyRight",[b.p.selrow]),a.isFunction(e.onRightKey)&&e.onRightKey.call(b,b.p.selrow))}else 13===d.keyCode?(a(b).triggerHandler("jqGridKeyEnter",[b.p.selrow]),a.isFunction(e.onEnter)&&
e.onEnter.call(b,b.p.selrow)):32===d.keyCode&&(a(b).triggerHandler("jqGridKeySpace",[b.p.selrow]),a.isFunction(e.onSpace)&&e.onSpace.call(b,b.p.selrow))})})},unbindKeys:function(){return this.each(function(){a(this).unbind("keydown")})},getLocalRow:function(d){var e=!1,b;this.each(function(){void 0!==d&&(b=this.p._index[a.jgrid.stripPref(this.p.idPrefix,d)],0<=b&&(e=this.p.data[b]))});return e}})})(jQuery);
(function(a){a.jgrid.extend({getColProp:function(a){var e={},b=this[0];if(!b.grid)return!1;var b=b.p.colModel,f;for(f=0;f<b.length;f++)if(b[f].name===a){e=b[f];break}return e},setColProp:function(d,e){return this.each(function(){if(this.grid&&e){var b=this.p.colModel,f;for(f=0;f<b.length;f++)if(b[f].name===d){a.extend(!0,this.p.colModel[f],e);break}}})},sortGrid:function(a,e,b){return this.each(function(){var f=-1,c,h=!1;if(this.grid){a||(a=this.p.sortname);for(c=0;c<this.p.colModel.length;c++)if(this.p.colModel[c].index===
a||this.p.colModel[c].name===a){f=c;!0===this.p.frozenColumns&&!0===this.p.colModel[c].frozen&&(h=this.grid.fhDiv.find("#"+this.p.id+"_"+a));break}-1!==f&&(c=this.p.colModel[f].sortable,h||(h=this.grid.headers[f].el),"boolean"!==typeof c&&(c=!0),"boolean"!==typeof e&&(e=!1),c&&this.sortData("jqgh_"+this.p.id+"_"+a,f,e,b,h))}})},clearBeforeUnload:function(){return this.each(function(){var d=this.grid;a.isFunction(d.emptyRows)&&d.emptyRows.call(this,!0,!0);a(document).unbind("mouseup.jqGrid"+this.p.id);
a(d.hDiv).unbind("mousemove");a(this).unbind();d.dragEnd=null;d.dragMove=null;d.dragStart=null;d.emptyRows=null;d.populate=null;d.populateVisible=null;d.scrollGrid=null;d.selectionPreserver=null;d.bDiv=null;d.cDiv=null;d.hDiv=null;d.cols=null;var e,b=d.headers.length;for(e=0;e<b;e++)d.headers[e].el=null;this.grid=this.addJSONData=this.addXmlData=this.formatter=this.constructTr=this.setHeadCheckBox=this.refreshIndex=this.updatepager=this.sortData=this.formatCol=null})},GridDestroy:function(){return this.each(function(){if(this.grid){this.p.pager&&
a(this.p.pager).remove();try{a(this).jqGrid("clearBeforeUnload"),a("#gbox_"+a.jgrid.jqID(this.id)).remove()}catch(d){}}})},GridUnload:function(){return this.each(function(){if(this.grid){var d=a(this).attr("id"),e=a(this).attr("class");this.p.pager&&a(this.p.pager).empty().removeClass("ui-state-default ui-jqgrid-pager ui-corner-bottom");var b=document.createElement("table");a(b).attr({id:d});b.className=e;d=a.jgrid.jqID(this.id);a(b).removeClass("ui-jqgrid-btable");1===a(this.p.pager).parents("#gbox_"+
d).length?(a(b).insertBefore("#gbox_"+d).show(),a(this.p.pager).insertBefore("#gbox_"+d)):a(b).insertBefore("#gbox_"+d).show();a(this).jqGrid("clearBeforeUnload");a("#gbox_"+d).remove()}})},setGridState:function(d){return this.each(function(){this.grid&&("hidden"===d?(a(".ui-jqgrid-bdiv, .ui-jqgrid-hdiv","#gview_"+a.jgrid.jqID(this.p.id)).slideUp("fast"),this.p.pager&&a(this.p.pager).slideUp("fast"),this.p.toppager&&a(this.p.toppager).slideUp("fast"),!0===this.p.toolbar[0]&&("both"===this.p.toolbar[1]&&
a(this.grid.ubDiv).slideUp("fast"),a(this.grid.uDiv).slideUp("fast")),this.p.footerrow&&a(".ui-jqgrid-sdiv","#gbox_"+a.jgrid.jqID(this.p.id)).slideUp("fast"),a(".ui-jqgrid-titlebar-close span",this.grid.cDiv).removeClass("ui-icon-circle-triangle-n").addClass("ui-icon-circle-triangle-s"),this.p.gridstate="hidden"):"visible"===d&&(a(".ui-jqgrid-hdiv, .ui-jqgrid-bdiv","#gview_"+a.jgrid.jqID(this.p.id)).slideDown("fast"),this.p.pager&&a(this.p.pager).slideDown("fast"),this.p.toppager&&a(this.p.toppager).slideDown("fast"),
!0===this.p.toolbar[0]&&("both"===this.p.toolbar[1]&&a(this.grid.ubDiv).slideDown("fast"),a(this.grid.uDiv).slideDown("fast")),this.p.footerrow&&a(".ui-jqgrid-sdiv","#gbox_"+a.jgrid.jqID(this.p.id)).slideDown("fast"),a(".ui-jqgrid-titlebar-close span",this.grid.cDiv).removeClass("ui-icon-circle-triangle-s").addClass("ui-icon-circle-triangle-n"),this.p.gridstate="visible"))})},filterToolbar:function(d){d=a.extend({autosearch:!0,searchOnEnter:!0,beforeSearch:null,afterSearch:null,beforeClear:null,afterClear:null,
searchurl:"",stringResult:!1,groupOp:"AND",defaultSearch:"bw",searchOperators:!1,resetIcon:"x",operands:{eq:"==",ne:"!",lt:"<",le:"<=",gt:">",ge:">=",bw:"^",bn:"!^","in":"=",ni:"!=",ew:"|",en:"!@",cn:"~",nc:"!~",nu:"#",nn:"!#"}},a.jgrid.search,d||{});return this.each(function(){var e=this;if(!this.ftoolbar){var b=function(){var b={},c=0,f,h,p={},r;a.each(e.p.colModel,function(){var n=a("#gs_"+a.jgrid.jqID(this.name),!0===this.frozen&&!0===e.p.frozenColumns?e.grid.fhDiv:e.grid.hDiv);h=this.index||
this.name;r=d.searchOperators?n.parent().prev().children("a").attr("soper")||d.defaultSearch:this.searchoptions&&this.searchoptions.sopt?this.searchoptions.sopt[0]:"select"===this.stype?"eq":d.defaultSearch;if((f="custom"===this.stype&&a.isFunction(this.searchoptions.custom_value)&&0<n.length&&"SPAN"===n[0].nodeName.toUpperCase()?this.searchoptions.custom_value.call(e,n.children(".customelement:first"),"get"):n.val())||"nu"===r||"nn"===r)b[h]=f,p[h]=r,c++;else try{delete e.p.postData[h]}catch(q){}});
var q=0<c?!0:!1;if(!0===d.stringResult||"local"===e.p.datatype){var n='{"groupOp":"'+d.groupOp+'","rules":[',s=0;a.each(b,function(a,b){0<s&&(n+=",");n+='{"field":"'+a+'",';n+='"op":"'+p[a]+'",';n+='"data":"'+(b+"").replace(/\\/g,"\\\\").replace(/\"/g,'\\"')+'"}';s++});n+="]}";a.extend(e.p.postData,{filters:n});a.each(["searchField","searchString","searchOper"],function(a,b){e.p.postData.hasOwnProperty(b)&&delete e.p.postData[b]})}else a.extend(e.p.postData,b);var t;e.p.searchurl&&(t=e.p.url,a(e).jqGrid("setGridParam",
{url:e.p.searchurl}));var v="stop"===a(e).triggerHandler("jqGridToolbarBeforeSearch")?!0:!1;!v&&a.isFunction(d.beforeSearch)&&(v=d.beforeSearch.call(e));v||a(e).jqGrid("setGridParam",{search:q}).trigger("reloadGrid",[{page:1}]);t&&a(e).jqGrid("setGridParam",{url:t});a(e).triggerHandler("jqGridToolbarAfterSearch");a.isFunction(d.afterSearch)&&d.afterSearch.call(e)},f=function(c,f,h){a("#sopt_menu").remove();f=parseInt(f,10);h=parseInt(h,10)+18;f='<ul id="sopt_menu" class="ui-search-menu" role="menu" tabindex="0" style="font-size:'+
(a(".ui-jqgrid-view").css("font-size")||"11px")+";left:"+f+"px;top:"+h+'px;">';h=a(c).attr("soper");var m,p=[],r,q=0,n=a(c).attr("colname");for(m=e.p.colModel.length;q<m&&e.p.colModel[q].name!==n;)q++;q=e.p.colModel[q];n=a.extend({},q.searchoptions);n.sopt||(n.sopt=[],n.sopt[0]="select"===q.stype?"eq":d.defaultSearch);a.each(d.odata,function(){p.push(this.oper)});for(q=0;q<n.sopt.length;q++)r=a.inArray(n.sopt[q],p),-1!==r&&(m=h===d.odata[r].oper?"ui-state-highlight":"",f+='<li class="ui-menu-item '+
m+'" role="presentation"><a class="ui-corner-all g-menu-item" tabindex="0" role="menuitem" value="'+d.odata[r].oper+'" oper="'+d.operands[d.odata[r].oper]+'"><table cellspacing="0" cellpadding="0" border="0"><tr><td width="25px">'+d.operands[d.odata[r].oper]+"</td><td>"+d.odata[r].text+"</td></tr></table></a></li>");f+="</ul>";a("body").append(f);a("#sopt_menu").addClass("ui-menu ui-widget ui-widget-content ui-corner-all");a("#sopt_menu > li > a").hover(function(){a(this).addClass("ui-state-hover")},
function(){a(this).removeClass("ui-state-hover")}).click(function(f){f=a(this).attr("value");var k=a(this).attr("oper");a(e).triggerHandler("jqGridToolbarSelectOper",[f,k,c]);a("#sopt_menu").hide();a(c).text(k).attr("soper",f);!0===d.autosearch&&(k=a(c).parent().next().children()[0],(a(k).val()||"nu"===f||"nn"===f)&&b())})},c=a("<tr class='ui-search-toolbar' role='rowheader'></tr>"),h;a.each(e.p.colModel,function(f){var k=this,l,m;m="";var p="=",r,q=a("<th role='columnheader' class='ui-state-default ui-th-column ui-th-"+
e.p.direction+"'></th>"),n=a("<div style='position:relative;height:100%;padding-right:0.3em;padding-left:0.3em;'></div>"),s=a("<table class='ui-search-table' cellspacing='0'><tr><td class='ui-search-oper'></td><td class='ui-search-input'></td><td class='ui-search-clear'></td></tr></table>");!0===this.hidden&&a(q).css("display","none");this.search=!1===this.search?!1:!0;void 0===this.stype&&(this.stype="text");l=a.extend({},this.searchoptions||{});if(this.search){if(d.searchOperators){m=l.sopt?l.sopt[0]:
"select"===k.stype?"eq":d.defaultSearch;for(r=0;r<d.odata.length;r++)if(d.odata[r].oper===m){p=d.operands[m]||"";break}m="<a title='"+(null!=l.searchtitle?l.searchtitle:d.operandTitle)+"' style='padding-right: 0.5em;' soper='"+m+"' class='soptclass' colname='"+this.name+"'>"+p+"</a>"}a("td:eq(0)",s).attr("colindex",f).append(m);void 0===l.clearSearch&&(l.clearSearch=!0);l.clearSearch?(m=d.resetTitle||"Clear Search Value",a("td:eq(2)",s).append("<a title='"+m+"' style='padding-right: 0.3em;padding-left: 0.3em;' class='clearsearchclass'>"+
d.resetIcon+"</a>")):a("td:eq(2)",s).hide();switch(this.stype){case "select":if(m=this.surl||l.dataUrl)a(n).append(s),a.ajax(a.extend({url:m,dataType:"html",success:function(c){void 0!==l.buildSelect?(c=l.buildSelect(c))&&a("td:eq(1)",s).append(c):a("td:eq(1)",s).append(c);void 0!==l.defaultValue&&a("select",n).val(l.defaultValue);a("select",n).attr({name:k.index||k.name,id:"gs_"+k.name});l.attr&&a("select",n).attr(l.attr);a("select",n).css({width:"100%"});a.jgrid.bindEv.call(e,a("select",n)[0],l);
!0===d.autosearch&&a("select",n).change(function(){b();return!1});c=null}},a.jgrid.ajaxOptions,e.p.ajaxSelectOptions||{}));else{var t,v,u;k.searchoptions?(t=void 0===k.searchoptions.value?"":k.searchoptions.value,v=void 0===k.searchoptions.separator?":":k.searchoptions.separator,u=void 0===k.searchoptions.delimiter?";":k.searchoptions.delimiter):k.editoptions&&(t=void 0===k.editoptions.value?"":k.editoptions.value,v=void 0===k.editoptions.separator?":":k.editoptions.separator,u=void 0===k.editoptions.delimiter?
";":k.editoptions.delimiter);if(t){var w=document.createElement("select");w.style.width="100%";a(w).attr({name:k.index||k.name,id:"gs_"+k.name});var x;if("string"===typeof t)for(m=t.split(u),x=0;x<m.length;x++)t=m[x].split(v),u=document.createElement("option"),u.value=t[0],u.innerHTML=t[1],w.appendChild(u);else if("object"===typeof t)for(x in t)t.hasOwnProperty(x)&&(u=document.createElement("option"),u.value=x,u.innerHTML=t[x],w.appendChild(u));void 0!==l.defaultValue&&a(w).val(l.defaultValue);l.attr&&
a(w).attr(l.attr);a(n).append(s);a.jgrid.bindEv.call(e,w,l);a("td:eq(1)",s).append(w);!0===d.autosearch&&a(w).change(function(){b();return!1})}}break;case "text":v=void 0!==l.defaultValue?l.defaultValue:"";a("td:eq(1)",s).append("<input type='text' style='width:100%;padding:0px;' name='"+(k.index||k.name)+"' id='gs_"+k.name+"' value='"+v+"'/>");a(n).append(s);l.attr&&a("input",n).attr(l.attr);a.jgrid.bindEv.call(e,a("input",n)[0],l);!0===d.autosearch&&(d.searchOnEnter?a("input",n).keypress(function(a){return 13===
(a.charCode||a.keyCode||0)?(b(),!1):this}):a("input",n).keydown(function(a){switch(a.which){case 13:return!1;case 9:case 16:case 37:case 38:case 39:case 40:case 27:break;default:h&&clearTimeout(h),h=setTimeout(function(){b()},500)}}));break;case "custom":a("td:eq(1)",s).append("<span style='width:95%;padding:0px;' name='"+(k.index||k.name)+"' id='gs_"+k.name+"'/>");a(n).append(s);try{if(a.isFunction(l.custom_element))if(w=l.custom_element.call(e,void 0!==l.defaultValue?l.defaultValue:"",l))w=a(w).addClass("customelement"),
a(n).find(">span").append(w);else throw"e2";else throw"e1";}catch(z){"e1"===z&&a.jgrid.info_dialog(a.jgrid.errors.errcap,"function 'custom_element' "+a.jgrid.edit.msg.nodefined,a.jgrid.edit.bClose),"e2"===z?a.jgrid.info_dialog(a.jgrid.errors.errcap,"function 'custom_element' "+a.jgrid.edit.msg.novalue,a.jgrid.edit.bClose):a.jgrid.info_dialog(a.jgrid.errors.errcap,"string"===typeof z?z:z.message,a.jgrid.edit.bClose)}}}a(q).append(n);a(c).append(q);d.searchOperators||a("td:eq(0)",s).hide()});a("table thead",
e.grid.hDiv).append(c);d.searchOperators&&(a(".soptclass",c).click(function(b){var c=a(this).offset();f(this,c.left,c.top);b.stopPropagation()}),a("body").on("click",function(b){"soptclass"!==b.target.className&&a("#sopt_menu").hide()}));a(".clearsearchclass",c).click(function(c){c=a(this).parents("tr:first");var f=parseInt(a("td.ui-search-oper",c).attr("colindex"),10),h=a.extend({},e.p.colModel[f].searchoptions||{}),h=h.defaultValue?h.defaultValue:"";"select"===e.p.colModel[f].stype?h?a("td.ui-search-input select",
c).val(h):a("td.ui-search-input select",c)[0].selectedIndex=0:a("td.ui-search-input input",c).val(h);!0===d.autosearch&&b()});this.ftoolbar=!0;this.triggerToolbar=b;this.clearToolbar=function(b){var c={},f=0,h;b="boolean"!==typeof b?!0:b;a.each(e.p.colModel,function(){var b,d=a("#gs_"+a.jgrid.jqID(this.name),!0===this.frozen&&!0===e.p.frozenColumns?e.grid.fhDiv:e.grid.hDiv);this.searchoptions&&void 0!==this.searchoptions.defaultValue&&(b=this.searchoptions.defaultValue);h=this.index||this.name;switch(this.stype){case "select":d.find("option").each(function(c){0===
c&&(this.selected=!0);if(a(this).val()===b)return this.selected=!0,!1});if(void 0!==b)c[h]=b,f++;else try{delete e.p.postData[h]}catch(g){}break;case "text":d.val(b||"");if(void 0!==b)c[h]=b,f++;else try{delete e.p.postData[h]}catch(n){}break;case "custom":a.isFunction(this.searchoptions.custom_value)&&0<d.length&&"SPAN"===d[0].nodeName.toUpperCase()&&this.searchoptions.custom_value.call(e,d.children(".customelement:first"),"set",b||"")}});var p=0<f?!0:!1;e.p.resetsearch=!0;if(!0===d.stringResult||
"local"===e.p.datatype){var r='{"groupOp":"'+d.groupOp+'","rules":[',q=0;a.each(c,function(a,b){0<q&&(r+=",");r+='{"field":"'+a+'",';r+='"op":"eq",';r+='"data":"'+(b+"").replace(/\\/g,"\\\\").replace(/\"/g,'\\"')+'"}';q++});r+="]}";a.extend(e.p.postData,{filters:r});a.each(["searchField","searchString","searchOper"],function(a,b){e.p.postData.hasOwnProperty(b)&&delete e.p.postData[b]})}else a.extend(e.p.postData,c);var n;e.p.searchurl&&(n=e.p.url,a(e).jqGrid("setGridParam",{url:e.p.searchurl}));var s=
"stop"===a(e).triggerHandler("jqGridToolbarBeforeClear")?!0:!1;!s&&a.isFunction(d.beforeClear)&&(s=d.beforeClear.call(e));s||b&&a(e).jqGrid("setGridParam",{search:p}).trigger("reloadGrid",[{page:1}]);n&&a(e).jqGrid("setGridParam",{url:n});a(e).triggerHandler("jqGridToolbarAfterClear");a.isFunction(d.afterClear)&&d.afterClear()};this.toggleToolbar=function(){var b=a("tr.ui-search-toolbar",e.grid.hDiv),c=!0===e.p.frozenColumns?a("tr.ui-search-toolbar",e.grid.fhDiv):!1;"none"===b.css("display")?(b.show(),
c&&c.show()):(b.hide(),c&&c.hide())}}})},destroyFilterToolbar:function(){return this.each(function(){this.ftoolbar&&(this.toggleToolbar=this.clearToolbar=this.triggerToolbar=null,this.ftoolbar=!1,a(this.grid.hDiv).find("table thead tr.ui-search-toolbar").remove())})},destroyGroupHeader:function(d){void 0===d&&(d=!0);return this.each(function(){var e,b,f,c,h,g;b=this.grid;var k=a("table.ui-jqgrid-htable thead",b.hDiv),l=this.p.colModel;if(b){a(this).unbind(".setGroupHeaders");e=a("<tr>",{role:"rowheader"}).addClass("ui-jqgrid-labels");
c=b.headers;b=0;for(f=c.length;b<f;b++){h=l[b].hidden?"none":"";h=a(c[b].el).width(c[b].width).css("display",h);try{h.removeAttr("rowSpan")}catch(m){h.attr("rowSpan",1)}e.append(h);g=h.children("span.ui-jqgrid-resize");0<g.length&&(g[0].style.height="");h.children("div")[0].style.top=""}a(k).children("tr.ui-jqgrid-labels").remove();a(k).prepend(e);!0===d&&a(this).jqGrid("setGridParam",{groupHeader:null})}})},setGroupHeaders:function(d){d=a.extend({useColSpanStyle:!1,groupHeaders:[]},d||{});return this.each(function(){this.p.groupHeader=
d;var e,b,f=0,c,h,g,k,l,m=this.p.colModel,p=m.length,r=this.grid.headers,q=a("table.ui-jqgrid-htable",this.grid.hDiv),n=q.children("thead").children("tr.ui-jqgrid-labels:last").addClass("jqg-second-row-header");c=q.children("thead");var s=q.find(".jqg-first-row-header");void 0===s[0]?s=a("<tr>",{role:"row","aria-hidden":"true"}).addClass("jqg-first-row-header").css("height","auto"):s.empty();var t,v=function(a,b){var c=b.length,d;for(d=0;d<c;d++)if(b[d].startColumnName===a)return d;return-1};a(this).prepend(c);
c=a("<tr>",{role:"rowheader"}).addClass("ui-jqgrid-labels jqg-third-row-header");for(e=0;e<p;e++)if(g=r[e].el,k=a(g),b=m[e],h={height:"0px",width:r[e].width+"px",display:b.hidden?"none":""},a("<th>",{role:"gridcell"}).css(h).addClass("ui-first-th-"+this.p.direction).appendTo(s),g.style.width="",h=v(b.name,d.groupHeaders),0<=h){h=d.groupHeaders[h];f=h.numberOfColumns;l=h.titleText;for(h=b=0;h<f&&e+h<p;h++)m[e+h].hidden||b++;h=a("<th>").attr({role:"columnheader"}).addClass("ui-state-default ui-th-column-header ui-th-"+
this.p.direction).css({height:"22px","border-top":"0 none"}).html(l);0<b&&h.attr("colspan",String(b));this.p.headertitles&&h.attr("title",h.text());0===b&&h.hide();k.before(h);c.append(g);f-=1}else 0===f?d.useColSpanStyle?k.attr("rowspan","2"):(a("<th>",{role:"columnheader"}).addClass("ui-state-default ui-th-column-header ui-th-"+this.p.direction).css({display:b.hidden?"none":"","border-top":"0 none"}).insertBefore(k),c.append(g)):(c.append(g),f--);m=a(this).children("thead");m.prepend(s);c.insertAfter(n);
q.append(m);d.useColSpanStyle&&(q.find("span.ui-jqgrid-resize").each(function(){var b=a(this).parent();b.is(":visible")&&(this.style.cssText="height: "+b.height()+"px !important; cursor: col-resize;")}),q.find("div.ui-jqgrid-sortable").each(function(){var b=a(this),c=b.parent();c.is(":visible")&&c.is(":has(span.ui-jqgrid-resize)")&&b.css("top",(c.height()-b.outerHeight())/2+"px")}));t=m.find("tr.jqg-first-row-header");a(this).bind("jqGridResizeStop.setGroupHeaders",function(a,b,c){t.find("th").eq(c).width(b)})})},
setFrozenColumns:function(){return this.each(function(){if(this.grid){var d=this,e=d.p.colModel,b=0,f=e.length,c=-1,h=!1;if(!0!==d.p.subGrid&&!0!==d.p.treeGrid&&!0!==d.p.cellEdit&&!d.p.sortable&&!d.p.scroll){d.p.rownumbers&&b++;for(d.p.multiselect&&b++;b<f;){if(!0===e[b].frozen)h=!0,c=b;else break;b++}if(0<=c&&h){e=d.p.caption?a(d.grid.cDiv).outerHeight():0;b=a(".ui-jqgrid-htable","#gview_"+a.jgrid.jqID(d.p.id)).height();d.p.toppager&&(e+=a(d.grid.topDiv).outerHeight());!0===d.p.toolbar[0]&&"bottom"!==
d.p.toolbar[1]&&(e+=a(d.grid.uDiv).outerHeight());d.grid.fhDiv=a('<div style="position:absolute;left:0px;top:'+e+"px;height:"+b+'px;" class="frozen-div ui-state-default ui-jqgrid-hdiv"></div>');d.grid.fbDiv=a('<div style="position:absolute;left:0px;top:'+(parseInt(e,10)+parseInt(b,10)+1)+'px;overflow-y:hidden" class="frozen-bdiv ui-jqgrid-bdiv"></div>');a("#gview_"+a.jgrid.jqID(d.p.id)).append(d.grid.fhDiv);e=a(".ui-jqgrid-htable","#gview_"+a.jgrid.jqID(d.p.id)).clone(!0);if(d.p.groupHeader){a("tr.jqg-first-row-header, tr.jqg-third-row-header",
e).each(function(){a("th:gt("+c+")",this).remove()});var g=-1,k=-1,l,m;a("tr.jqg-second-row-header th",e).each(function(){l=parseInt(a(this).attr("colspan"),10);if(m=parseInt(a(this).attr("rowspan"),10))g++,k++;l&&(g+=l,k++);if(g===c)return!1});g!==c&&(k=c);a("tr.jqg-second-row-header",e).each(function(){a("th:gt("+k+")",this).remove()})}else a("tr",e).each(function(){a("th:gt("+c+")",this).remove()});a(e).width(1);a(d.grid.fhDiv).append(e).mousemove(function(a){if(d.grid.resizing)return d.grid.dragMove(a),
!1});a(d).bind("jqGridResizeStop.setFrozenColumns",function(b,c,e){b=a(".ui-jqgrid-htable",d.grid.fhDiv);a("th:eq("+e+")",b).width(c);b=a(".ui-jqgrid-btable",d.grid.fbDiv);a("tr:first td:eq("+e+")",b).width(c)});a(d).bind("jqGridSortCol.setFrozenColumns",function(b,c,e){b=a("tr.ui-jqgrid-labels:last th:eq("+d.p.lastsort+")",d.grid.fhDiv);c=a("tr.ui-jqgrid-labels:last th:eq("+e+")",d.grid.fhDiv);a("span.ui-grid-ico-sort",b).addClass("ui-state-disabled");a(b).attr("aria-selected","false");a("span.ui-icon-"+
d.p.sortorder,c).removeClass("ui-state-disabled");a(c).attr("aria-selected","true");d.p.viewsortcols[0]||d.p.lastsort===e||(a("span.s-ico",b).hide(),a("span.s-ico",c).show())});a("#gview_"+a.jgrid.jqID(d.p.id)).append(d.grid.fbDiv);a(d.grid.bDiv).scroll(function(){a(d.grid.fbDiv).scrollTop(a(this).scrollTop())});!0===d.p.hoverrows&&a("#"+a.jgrid.jqID(d.p.id)).unbind("mouseover").unbind("mouseout");a(d).bind("jqGridAfterGridComplete.setFrozenColumns",function(){a("#"+a.jgrid.jqID(d.p.id)+"_frozen").remove();
a(d.grid.fbDiv).height(a(d.grid.bDiv).height()-16);var b=a("#"+a.jgrid.jqID(d.p.id)).clone(!0);a("tr[role=row]",b).each(function(){a("td[role=gridcell]:gt("+c+")",this).remove()});a(b).width(1).attr("id",d.p.id+"_frozen");a(d.grid.fbDiv).append(b);!0===d.p.hoverrows&&(a("tr.jqgrow",b).hover(function(){a(this).addClass("ui-state-hover");a("#"+a.jgrid.jqID(this.id),"#"+a.jgrid.jqID(d.p.id)).addClass("ui-state-hover")},function(){a(this).removeClass("ui-state-hover");a("#"+a.jgrid.jqID(this.id),"#"+
a.jgrid.jqID(d.p.id)).removeClass("ui-state-hover")}),a("tr.jqgrow","#"+a.jgrid.jqID(d.p.id)).hover(function(){a(this).addClass("ui-state-hover");a("#"+a.jgrid.jqID(this.id),"#"+a.jgrid.jqID(d.p.id)+"_frozen").addClass("ui-state-hover")},function(){a(this).removeClass("ui-state-hover");a("#"+a.jgrid.jqID(this.id),"#"+a.jgrid.jqID(d.p.id)+"_frozen").removeClass("ui-state-hover")}));b=null});d.grid.hDiv.loading||a(d).triggerHandler("jqGridAfterGridComplete");d.p.frozenColumns=!0}}}})},destroyFrozenColumns:function(){return this.each(function(){if(this.grid&&
!0===this.p.frozenColumns){a(this.grid.fhDiv).remove();a(this.grid.fbDiv).remove();this.grid.fhDiv=null;this.grid.fbDiv=null;a(this).unbind(".setFrozenColumns");if(!0===this.p.hoverrows){var d;a("#"+a.jgrid.jqID(this.p.id)).bind("mouseover",function(e){d=a(e.target).closest("tr.jqgrow");"ui-subgrid"!==a(d).attr("class")&&a(d).addClass("ui-state-hover")}).bind("mouseout",function(e){d=a(e.target).closest("tr.jqgrow");a(d).removeClass("ui-state-hover")})}this.p.frozenColumns=!1}})}})})(jQuery);
(function(a){a.fn.jqm=function(b){var c={overlay:50,closeoverlay:!0,overlayClass:"jqmOverlay",closeClass:"jqmClose",trigger:".jqModal",ajax:f,ajaxText:"",target:f,modal:f,toTop:f,onShow:f,onHide:f,onLoad:f};return this.each(function(){if(this._jqm)return e[this._jqm].c=a.extend({},e[this._jqm].c,b);d++;this._jqm=d;e[d]={c:a.extend(c,a.jqm.params,b),a:f,w:a(this).addClass("jqmID"+d),s:d};c.trigger&&a(this).jqmAddTrigger(c.trigger)})};a.fn.jqmAddClose=function(a){return k(this,a,"jqmHide")};a.fn.jqmAddTrigger=
function(a){return k(this,a,"jqmShow")};a.fn.jqmShow=function(b){return this.each(function(){a.jqm.open(this._jqm,b)})};a.fn.jqmHide=function(b){return this.each(function(){a.jqm.close(this._jqm,b)})};a.jqm={hash:{},open:function(d,g){var k=e[d],r=k.c,q="."+r.closeClass,n=parseInt(k.w.css("z-index")),n=0<n?n:3E3,s=a("<div></div>").css({height:"100%",width:"100%",position:"fixed",left:0,top:0,"z-index":n-1,opacity:r.overlay/100});if(k.a)return f;k.t=g;k.a=!0;k.w.css("z-index",n);r.modal?(b[0]||setTimeout(function(){h("bind")},
1),b.push(d)):0<r.overlay?r.closeoverlay&&k.w.jqmAddClose(s):s=f;k.o=s?s.addClass(r.overlayClass).prependTo("body"):f;r.ajax?(n=r.target||k.w,s=r.ajax,n="string"==typeof n?a(n,k.w):a(n),s="@"==s.substr(0,1)?a(g).attr(s.substring(1)):s,n.html(r.ajaxText).load(s,function(){r.onLoad&&r.onLoad.call(this,k);q&&k.w.jqmAddClose(a(q,k.w));c(k)})):q&&k.w.jqmAddClose(a(q,k.w));r.toTop&&k.o&&k.w.before('<span id="jqmP'+k.w[0]._jqm+'"></span>').insertAfter(k.o);r.onShow?r.onShow(k):k.w.show();c(k);return f},
close:function(c){c=e[c];if(!c.a)return f;c.a=f;b[0]&&(b.pop(),b[0]||h("unbind"));c.c.toTop&&c.o&&a("#jqmP"+c.w[0]._jqm).after(c.w).remove();if(c.c.onHide)c.c.onHide(c);else c.w.hide(),c.o&&c.o.remove();return f},params:{}};var d=0,e=a.jqm.hash,b=[],f=!1,c=function(b){try{a(":input:visible",b.w)[0].focus()}catch(c){}},h=function(b){a(document)[b]("keypress",g)[b]("keydown",g)[b]("mousedown",g)},g=function(d){var f=e[b[b.length-1]],g=!a(d.target).parents(".jqmID"+f.s)[0];g&&(a(".jqmID"+f.s).each(function(){var b=
a(this),c=b.offset();if(c.top<=d.pageY&&d.pageY<=c.top+b.height()&&c.left<=d.pageX&&d.pageX<=c.left+b.width())return g=!1}),c(f));return!g},k=function(b,c,d){return b.each(function(){var b=this._jqm;a(c).each(function(){this[d]||(this[d]=[],a(this).click(function(){for(var a in{jqmShow:1,jqmHide:1})for(var b in this[a])if(e[this[a][b]])e[this[a][b]].w[a](this);return f}));this[d].push(b)})})}})(jQuery);
(function(a){a.fn.jqDrag=function(a){return h(this,a,"d")};a.fn.jqResize=function(a,b){return h(this,a,"r",b)};a.jqDnR={dnr:{},e:0,drag:function(a){"d"==e.k?b.css({left:e.X+a.pageX-e.pX,top:e.Y+a.pageY-e.pY}):(b.css({width:Math.max(a.pageX-e.pX+e.W,0),height:Math.max(a.pageY-e.pY+e.H,0)}),c&&f.css({width:Math.max(a.pageX-c.pX+c.W,0),height:Math.max(a.pageY-c.pY+c.H,0)}));return!1},stop:function(){a(document).unbind("mousemove",d.drag).unbind("mouseup",d.stop)}};var d=a.jqDnR,e=d.dnr,b=d.e,f,c,h=function(d,
h,p,r){return d.each(function(){h=h?a(h,d):d;h.bind("mousedown",{e:d,k:p},function(d){var h=d.data,l={};b=h.e;f=r?a(r):!1;if("relative"!=b.css("position"))try{b.position(l)}catch(m){}e={X:l.left||g("left")||0,Y:l.top||g("top")||0,W:g("width")||b[0].scrollWidth||0,H:g("height")||b[0].scrollHeight||0,pX:d.pageX,pY:d.pageY,k:h.k};c=f&&"d"!=h.k?{X:l.left||k("left")||0,Y:l.top||k("top")||0,W:f[0].offsetWidth||k("width")||0,H:f[0].offsetHeight||k("height")||0,pX:d.pageX,pY:d.pageY,k:h.k}:!1;if(a("input.hasDatepicker",
b[0])[0])try{a("input.hasDatepicker",b[0]).datepicker("hide")}catch(p){}a(document).mousemove(a.jqDnR.drag).mouseup(a.jqDnR.stop);return!1})})},g=function(a){return parseInt(b.css(a),10)||!1},k=function(a){return parseInt(f.css(a),10)||!1}})(jQuery);
var xmlJsonClass={xml2json:function(a,d){9===a.nodeType&&(a=a.documentElement);var e=this.removeWhite(a),e=this.toObj(e),e=this.toJson(e,a.nodeName,"\t");return"{\n"+d+(d?e.replace(/\t/g,d):e.replace(/\t|\n/g,""))+"\n}"},json2xml:function(a,d){var e=function(a,b,d){var f="",l,m;if(a instanceof Array)if(0===a.length)f+=d+"<"+b+">__EMPTY_ARRAY_</"+b+">\n";else for(l=0,m=a.length;l<m;l+=1)var p=d+e(a[l],b,d+"\t")+"\n",f=f+p;else if("object"===typeof a){l=!1;f+=d+"<"+b;for(m in a)a.hasOwnProperty(m)&&
("@"===m.charAt(0)?f+=" "+m.substr(1)+'="'+a[m].toString()+'"':l=!0);f+=l?">":"/>";if(l){for(m in a)a.hasOwnProperty(m)&&("#text"===m?f+=a[m]:"#cdata"===m?f+="<![CDATA["+a[m]+"]]\x3e":"@"!==m.charAt(0)&&(f+=e(a[m],m,d+"\t")));f+=("\n"===f.charAt(f.length-1)?d:"")+"</"+b+">"}}else"function"===typeof a?f+=d+"<"+b+"><![CDATA["+a+"]]\x3e</"+b+">":(void 0===a&&(a=""),f='""'===a.toString()||0===a.toString().length?f+(d+"<"+b+">__EMPTY_STRING_</"+b+">"):f+(d+"<"+b+">"+a.toString()+"</"+b+">"));return f},
b="",f;for(f in a)a.hasOwnProperty(f)&&(b+=e(a[f],f,""));return d?b.replace(/\t/g,d):b.replace(/\t|\n/g,"")},toObj:function(a){var d={},e=/function/i;if(1===a.nodeType){if(a.attributes.length){var b;for(b=0;b<a.attributes.length;b+=1)d["@"+a.attributes[b].nodeName]=(a.attributes[b].nodeValue||"").toString()}if(a.firstChild){var f=b=0,c=!1,h;for(h=a.firstChild;h;h=h.nextSibling)1===h.nodeType?c=!0:3===h.nodeType&&h.nodeValue.match(/[^ \f\n\r\t\v]/)?b+=1:4===h.nodeType&&(f+=1);if(c)if(2>b&&2>f)for(this.removeWhite(a),
h=a.firstChild;h;h=h.nextSibling)3===h.nodeType?d["#text"]=this.escape(h.nodeValue):4===h.nodeType?e.test(h.nodeValue)?d[h.nodeName]=[d[h.nodeName],h.nodeValue]:d["#cdata"]=this.escape(h.nodeValue):d[h.nodeName]?d[h.nodeName]instanceof Array?d[h.nodeName][d[h.nodeName].length]=this.toObj(h):d[h.nodeName]=[d[h.nodeName],this.toObj(h)]:d[h.nodeName]=this.toObj(h);else a.attributes.length?d["#text"]=this.escape(this.innerXml(a)):d=this.escape(this.innerXml(a));else if(b)a.attributes.length?d["#text"]=
this.escape(this.innerXml(a)):(d=this.escape(this.innerXml(a)),"__EMPTY_ARRAY_"===d?d="[]":"__EMPTY_STRING_"===d&&(d=""));else if(f)if(1<f)d=this.escape(this.innerXml(a));else for(h=a.firstChild;h;h=h.nextSibling)if(e.test(a.firstChild.nodeValue)){d=a.firstChild.nodeValue;break}else d["#cdata"]=this.escape(h.nodeValue)}a.attributes.length||a.firstChild||(d=null)}else 9===a.nodeType?d=this.toObj(a.documentElement):alert("unhandled node type: "+a.nodeType);return d},toJson:function(a,d,e,b){void 0===
b&&(b=!0);var f=d?'"'+d+'"':"",c="\t",h="\n";b||(h=c="");if("[]"===a)f+=d?":[]":"[]";else if(a instanceof Array){var g,k,l=[];k=0;for(g=a.length;k<g;k+=1)l[k]=this.toJson(a[k],"",e+c,b);f+=(d?":[":"[")+(1<l.length?h+e+c+l.join(","+h+e+c)+h+e:l.join(""))+"]"}else if(null===a)f+=(d&&":")+"null";else if("object"===typeof a){g=[];for(k in a)a.hasOwnProperty(k)&&(g[g.length]=this.toJson(a[k],k,e+c,b));f+=(d?":{":"{")+(1<g.length?h+e+c+g.join(","+h+e+c)+h+e:g.join(""))+"}"}else f="string"===typeof a?f+
((d&&":")+'"'+a.replace(/\\/g,"\\\\").replace(/\"/g,'\\"')+'"'):f+((d&&":")+a.toString());return f},innerXml:function(a){var d="";if("innerHTML"in a)d=a.innerHTML;else{var e=function(a){var d="",c;if(1===a.nodeType){d+="<"+a.nodeName;for(c=0;c<a.attributes.length;c+=1)d+=" "+a.attributes[c].nodeName+'="'+(a.attributes[c].nodeValue||"").toString()+'"';if(a.firstChild){d+=">";for(c=a.firstChild;c;c=c.nextSibling)d+=e(c);d+="</"+a.nodeName+">"}else d+="/>"}else 3===a.nodeType?d+=a.nodeValue:4===a.nodeType&&
(d+="<![CDATA["+a.nodeValue+"]]\x3e");return d};for(a=a.firstChild;a;a=a.nextSibling)d+=e(a)}return d},escape:function(a){return a.replace(/[\\]/g,"\\\\").replace(/[\"]/g,'\\"').replace(/[\n]/g,"\\n").replace(/[\r]/g,"\\r")},removeWhite:function(a){a.normalize();var d;for(d=a.firstChild;d;)if(3===d.nodeType)if(d.nodeValue.match(/[^ \f\n\r\t\v]/))d=d.nextSibling;else{var e=d.nextSibling;a.removeChild(d);d=e}else 1===d.nodeType&&this.removeWhite(d),d=d.nextSibling;return a}};
(function(a){a.fmatter={};a.extend(a.fmatter,{isBoolean:function(a){return"boolean"===typeof a},isObject:function(d){return d&&("object"===typeof d||a.isFunction(d))||!1},isString:function(a){return"string"===typeof a},isNumber:function(a){return"number"===typeof a&&isFinite(a)},isValue:function(a){return this.isObject(a)||this.isString(a)||this.isNumber(a)||this.isBoolean(a)},isEmpty:function(d){if(!this.isString(d)&&this.isValue(d))return!1;if(!this.isValue(d))return!0;d=a.trim(d).replace(/\&nbsp\;/ig,
"").replace(/\&#160\;/ig,"");return""===d}});a.fn.fmatter=function(d,e,b,f,c){var h=e;b=a.extend({},a.jgrid.formatter,b);try{h=a.fn.fmatter[d].call(this,e,b,f,c)}catch(g){}return h};a.fmatter.util={NumberFormat:function(d,e){a.fmatter.isNumber(d)||(d*=1);if(a.fmatter.isNumber(d)){var b=0>d,f=String(d),c=e.decimalSeparator||".",h;if(a.fmatter.isNumber(e.decimalPlaces)){var g=e.decimalPlaces,f=Math.pow(10,g),f=String(Math.round(d*f)/f);h=f.lastIndexOf(".");if(0<g)for(0>h?(f+=c,h=f.length-1):"."!==c&&
(f=f.replace(".",c));f.length-1-h<g;)f+="0"}if(e.thousandsSeparator){g=e.thousandsSeparator;h=f.lastIndexOf(c);h=-1<h?h:f.length;var c=f.substring(h),k=-1,l;for(l=h;0<l;l--)k++,0===k%3&&l!==h&&(!b||1<l)&&(c=g+c),c=f.charAt(l-1)+c;f=c}f=e.prefix?e.prefix+f:f;return f=e.suffix?f+e.suffix:f}return d}};a.fn.fmatter.defaultFormat=function(d,e){return a.fmatter.isValue(d)&&""!==d?d:e.defaultValue||"&#160;"};a.fn.fmatter.email=function(d,e){return a.fmatter.isEmpty(d)?a.fn.fmatter.defaultFormat(d,e):'<a href="mailto:'+
d+'">'+d+"</a>"};a.fn.fmatter.checkbox=function(d,e){var b=a.extend({},e.checkbox),f;void 0!==e.colModel&&void 0!==e.colModel.formatoptions&&(b=a.extend({},b,e.colModel.formatoptions));f=!0===b.disabled?'disabled="disabled"':"";if(a.fmatter.isEmpty(d)||void 0===d)d=a.fn.fmatter.defaultFormat(d,b);d=String(d);d=(d+"").toLowerCase();return'<input type="checkbox" '+(0>d.search(/(false|f|0|no|n|off|undefined)/i)?" checked='checked' ":"")+' value="'+d+'" offval="no" '+f+"/>"};a.fn.fmatter.link=function(d,
e){var b={target:e.target},f="";void 0!==e.colModel&&void 0!==e.colModel.formatoptions&&(b=a.extend({},b,e.colModel.formatoptions));b.target&&(f="target="+b.target);return a.fmatter.isEmpty(d)?a.fn.fmatter.defaultFormat(d,e):"<a "+f+' href="'+d+'">'+d+"</a>"};a.fn.fmatter.showlink=function(d,e){var b={baseLinkUrl:e.baseLinkUrl,showAction:e.showAction,addParam:e.addParam||"",target:e.target,idName:e.idName},f="";void 0!==e.colModel&&void 0!==e.colModel.formatoptions&&(b=a.extend({},b,e.colModel.formatoptions));
b.target&&(f="target="+b.target);b=b.baseLinkUrl+b.showAction+"?"+b.idName+"="+e.rowId+b.addParam;return a.fmatter.isString(d)||a.fmatter.isNumber(d)?"<a "+f+' href="'+b+'">'+d+"</a>":a.fn.fmatter.defaultFormat(d,e)};a.fn.fmatter.integer=function(d,e){var b=a.extend({},e.integer);void 0!==e.colModel&&void 0!==e.colModel.formatoptions&&(b=a.extend({},b,e.colModel.formatoptions));return a.fmatter.isEmpty(d)?b.defaultValue:a.fmatter.util.NumberFormat(d,b)};a.fn.fmatter.number=function(d,e){var b=a.extend({},
e.number);void 0!==e.colModel&&void 0!==e.colModel.formatoptions&&(b=a.extend({},b,e.colModel.formatoptions));return a.fmatter.isEmpty(d)?b.defaultValue:a.fmatter.util.NumberFormat(d,b)};a.fn.fmatter.currency=function(d,e){var b=a.extend({},e.currency);void 0!==e.colModel&&void 0!==e.colModel.formatoptions&&(b=a.extend({},b,e.colModel.formatoptions));return a.fmatter.isEmpty(d)?b.defaultValue:a.fmatter.util.NumberFormat(d,b)};a.fn.fmatter.date=function(d,e,b,f){b=a.extend({},e.date);void 0!==e.colModel&&
void 0!==e.colModel.formatoptions&&(b=a.extend({},b,e.colModel.formatoptions));return b.reformatAfterEdit||"edit"!==f?a.fmatter.isEmpty(d)?a.fn.fmatter.defaultFormat(d,e):a.jgrid.parseDate(b.srcformat,d,b.newformat,b):a.fn.fmatter.defaultFormat(d,e)};a.fn.fmatter.select=function(d,e){d=String(d);var b=!1,f=[],c,h;void 0!==e.colModel.formatoptions?(b=e.colModel.formatoptions.value,c=void 0===e.colModel.formatoptions.separator?":":e.colModel.formatoptions.separator,h=void 0===e.colModel.formatoptions.delimiter?
";":e.colModel.formatoptions.delimiter):void 0!==e.colModel.editoptions&&(b=e.colModel.editoptions.value,c=void 0===e.colModel.editoptions.separator?":":e.colModel.editoptions.separator,h=void 0===e.colModel.editoptions.delimiter?";":e.colModel.editoptions.delimiter);if(b){var g=!0===e.colModel.editoptions.multiple?!0:!1,k=[];g&&(k=d.split(","),k=a.map(k,function(b){return a.trim(b)}));if(a.fmatter.isString(b)){var l=b.split(h),m=0,p;for(p=0;p<l.length;p++)if(h=l[p].split(c),2<h.length&&(h[1]=a.map(h,
function(a,b){if(0<b)return a}).join(c)),g)-1<a.inArray(h[0],k)&&(f[m]=h[1],m++);else if(a.trim(h[0])===a.trim(d)){f[0]=h[1];break}}else a.fmatter.isObject(b)&&(g?f=a.map(k,function(a){return b[a]}):f[0]=b[d]||"")}d=f.join(", ");return""===d?a.fn.fmatter.defaultFormat(d,e):d};a.fn.fmatter.rowactions=function(d){var e=a(this).closest("tr.jqgrow"),b=e.attr("id"),f=a(this).closest("table.ui-jqgrid-btable").attr("id").replace(/_frozen([^_]*)$/,"$1"),f=a("#"+f),c=f[0],h=c.p,g=h.colModel[a.jgrid.getCellIndex(this)],
k=g.frozen?a("tr#"+b+" td:eq("+a.jgrid.getCellIndex(this)+") > div",f):a(this).parent(),l={extraparam:{}},m=function(b){a.isFunction(l.afterRestore)&&l.afterRestore.call(c,b);k.find("div.ui-inline-edit,div.ui-inline-del").show();k.find("div.ui-inline-save,div.ui-inline-cancel").hide()};void 0!==g.formatoptions&&(l=a.extend(l,g.formatoptions));void 0!==h.editOptions&&(l.editOptions=h.editOptions);void 0!==h.delOptions&&(l.delOptions=h.delOptions);e.hasClass("jqgrid-new-row")&&(l.extraparam[h.prmNames.oper]=
h.prmNames.addoper);e={keys:l.keys,oneditfunc:l.onEdit,successfunc:l.onSuccess,url:l.url,extraparam:l.extraparam,aftersavefunc:function(b,d){a.isFunction(l.afterSave)&&l.afterSave.call(c,b,d);k.find("div.ui-inline-edit,div.ui-inline-del").show();k.find("div.ui-inline-save,div.ui-inline-cancel").hide()},errorfunc:l.onError,afterrestorefunc:m,restoreAfterError:l.restoreAfterError,mtype:l.mtype};switch(d){case "edit":f.jqGrid("editRow",b,e);k.find("div.ui-inline-edit,div.ui-inline-del").hide();k.find("div.ui-inline-save,div.ui-inline-cancel").show();
f.triggerHandler("jqGridAfterGridComplete");break;case "save":f.jqGrid("saveRow",b,e)&&(k.find("div.ui-inline-edit,div.ui-inline-del").show(),k.find("div.ui-inline-save,div.ui-inline-cancel").hide(),f.triggerHandler("jqGridAfterGridComplete"));break;case "cancel":f.jqGrid("restoreRow",b,m);k.find("div.ui-inline-edit,div.ui-inline-del").show();k.find("div.ui-inline-save,div.ui-inline-cancel").hide();f.triggerHandler("jqGridAfterGridComplete");break;case "del":f.jqGrid("delGridRow",b,l.delOptions);
break;case "formedit":f.jqGrid("setSelection",b),f.jqGrid("editGridRow",b,l.editOptions)}};a.fn.fmatter.actions=function(d,e){var b={keys:!1,editbutton:!0,delbutton:!0,editformbutton:!1},f=e.rowId,c="";void 0!==e.colModel.formatoptions&&(b=a.extend(b,e.colModel.formatoptions));if(void 0===f||a.fmatter.isEmpty(f))return"";b.editformbutton?c+="<div title='"+a.jgrid.nav.edittitle+"' style='float:left;cursor:pointer;' class='ui-pg-div ui-inline-edit' "+("id='jEditButton_"+f+"' onclick=jQuery.fn.fmatter.rowactions.call(this,'formedit'); onmouseover=jQuery(this).addClass('ui-state-hover'); onmouseout=jQuery(this).removeClass('ui-state-hover'); ")+
"><span class='ui-icon ui-icon-pencil'></span></div>":b.editbutton&&(c+="<div title='"+a.jgrid.nav.edittitle+"' style='float:left;cursor:pointer;' class='ui-pg-div ui-inline-edit' "+("id='jEditButton_"+f+"' onclick=jQuery.fn.fmatter.rowactions.call(this,'edit'); onmouseover=jQuery(this).addClass('ui-state-hover'); onmouseout=jQuery(this).removeClass('ui-state-hover') ")+"><span class='ui-icon ui-icon-pencil'></span></div>");b.delbutton&&(c+="<div title='"+a.jgrid.nav.deltitle+"' style='float:left;margin-left:5px;' class='ui-pg-div ui-inline-del' "+
("id='jDeleteButton_"+f+"' onclick=jQuery.fn.fmatter.rowactions.call(this,'del'); onmouseover=jQuery(this).addClass('ui-state-hover'); onmouseout=jQuery(this).removeClass('ui-state-hover'); ")+"><span class='ui-icon ui-icon-trash'></span></div>");c+="<div title='"+a.jgrid.edit.bSubmit+"' style='float:left;display:none' class='ui-pg-div ui-inline-save' "+("id='jSaveButton_"+f+"' onclick=jQuery.fn.fmatter.rowactions.call(this,'save'); onmouseover=jQuery(this).addClass('ui-state-hover'); onmouseout=jQuery(this).removeClass('ui-state-hover'); ")+
"><span class='ui-icon ui-icon-disk'></span></div>";c+="<div title='"+a.jgrid.edit.bCancel+"' style='float:left;display:none;margin-left:5px;' class='ui-pg-div ui-inline-cancel' "+("id='jCancelButton_"+f+"' onclick=jQuery.fn.fmatter.rowactions.call(this,'cancel'); onmouseover=jQuery(this).addClass('ui-state-hover'); onmouseout=jQuery(this).removeClass('ui-state-hover'); ")+"><span class='ui-icon ui-icon-cancel'></span></div>";return"<div style='margin-left:8px;'>"+c+"</div>"};a.unformat=function(d,
e,b,f){var c,h=e.colModel.formatter,g=e.colModel.formatoptions||{},k=/([\.\*\_\'\(\)\{\}\+\?\\])/g,l=e.colModel.unformat||a.fn.fmatter[h]&&a.fn.fmatter[h].unformat;if(void 0!==l&&a.isFunction(l))c=l.call(this,a(d).text(),e,d);else if(void 0!==h&&a.fmatter.isString(h))switch(c=a.jgrid.formatter||{},h){case "integer":g=a.extend({},c.integer,g);e=g.thousandsSeparator.replace(k,"\\$1");e=RegExp(e,"g");c=a(d).text().replace(e,"");break;case "number":g=a.extend({},c.number,g);e=g.thousandsSeparator.replace(k,
"\\$1");e=RegExp(e,"g");c=a(d).text().replace(e,"").replace(g.decimalSeparator,".");break;case "currency":g=a.extend({},c.currency,g);e=g.thousandsSeparator.replace(k,"\\$1");e=RegExp(e,"g");c=a(d).text();g.prefix&&g.prefix.length&&(c=c.substr(g.prefix.length));g.suffix&&g.suffix.length&&(c=c.substr(0,c.length-g.suffix.length));c=c.replace(e,"").replace(g.decimalSeparator,".");break;case "checkbox":g=e.colModel.editoptions?e.colModel.editoptions.value.split(":"):["Yes","No"];c=a("input",d).is(":checked")?
g[0]:g[1];break;case "select":c=a.unformat.select(d,e,b,f);break;case "actions":return"";default:c=a(d).text()}return void 0!==c?c:!0===f?a(d).text():a.jgrid.htmlDecode(a(d).html())};a.unformat.select=function(d,e,b,f){b=[];d=a(d).text();if(!0===f)return d;f=a.extend({},void 0!==e.colModel.formatoptions?e.colModel.formatoptions:e.colModel.editoptions);e=void 0===f.separator?":":f.separator;var c=void 0===f.delimiter?";":f.delimiter;if(f.value){var h=f.value;f=!0===f.multiple?!0:!1;var g=[];f&&(g=
d.split(","),g=a.map(g,function(b){return a.trim(b)}));if(a.fmatter.isString(h)){var k=h.split(c),l=0,m;for(m=0;m<k.length;m++)if(c=k[m].split(e),2<c.length&&(c[1]=a.map(c,function(a,b){if(0<b)return a}).join(e)),f)-1<a.inArray(c[1],g)&&(b[l]=c[0],l++);else if(a.trim(c[1])===a.trim(d)){b[0]=c[0];break}}else if(a.fmatter.isObject(h)||a.isArray(h))f||(g[0]=d),b=a.map(g,function(b){var c;a.each(h,function(a,d){if(d===b)return c=a,!1});if(void 0!==c)return c});return b.join(", ")}return d||""};a.unformat.date=
function(d,e){var b=a.jgrid.formatter.date||{};void 0!==e.formatoptions&&(b=a.extend({},b,e.formatoptions));return a.fmatter.isEmpty(d)?a.fn.fmatter.defaultFormat(d,e):a.jgrid.parseDate(b.newformat,d,b.srcformat,b)}})(jQuery);
(function(a){a.extend(a.jgrid,{showModal:function(a){a.w.show()},closeModal:function(a){a.w.hide().attr("aria-hidden","true");a.o&&a.o.remove()},hideModal:function(d,e){e=a.extend({jqm:!0,gb:""},e||{});if(e.onClose){var b=e.gb&&"string"===typeof e.gb&&"#gbox_"===e.gb.substr(0,6)?e.onClose.call(a("#"+e.gb.substr(6))[0],d):e.onClose(d);if("boolean"===typeof b&&!b)return}if(a.fn.jqm&&!0===e.jqm)a(d).attr("aria-hidden","true").jqmHide();else{if(""!==e.gb)try{a(".jqgrid-overlay:first",e.gb).hide()}catch(f){}a(d).hide().attr("aria-hidden",
"true")}},findPos:function(a){var e=0,b=0;if(a.offsetParent){do e+=a.offsetLeft,b+=a.offsetTop;while(a=a.offsetParent)}return[e,b]},createModal:function(d,e,b,f,c,h,g){b=a.extend(!0,{},a.jgrid.jqModal||{},b);var k=document.createElement("div"),l,m=this;g=a.extend({},g||{});l="rtl"===a(b.gbox).attr("dir")?!0:!1;k.className="ui-widget ui-widget-content ui-corner-all ui-jqdialog";k.id=d.themodal;var p=document.createElement("div");p.className="ui-jqdialog-titlebar ui-widget-header ui-corner-all ui-helper-clearfix";
p.id=d.modalhead;a(p).append("<span class='ui-jqdialog-title'>"+b.caption+"</span>");var r=a("<a class='ui-jqdialog-titlebar-close ui-corner-all'></a>").hover(function(){r.addClass("ui-state-hover")},function(){r.removeClass("ui-state-hover")}).append("<span class='ui-icon ui-icon-closethick'></span>");a(p).append(r);l?(k.dir="rtl",a(".ui-jqdialog-title",p).css("float","right"),a(".ui-jqdialog-titlebar-close",p).css("left","0.3em")):(k.dir="ltr",a(".ui-jqdialog-title",p).css("float","left"),a(".ui-jqdialog-titlebar-close",
p).css("right","0.3em"));var q=document.createElement("div");a(q).addClass("ui-jqdialog-content ui-widget-content").attr("id",d.modalcontent);a(q).append(e);k.appendChild(q);a(k).prepend(p);!0===h?a("body").append(k):"string"===typeof h?a(h).append(k):a(k).insertBefore(f);a(k).css(g);void 0===b.jqModal&&(b.jqModal=!0);e={};if(a.fn.jqm&&!0===b.jqModal)0===b.left&&0===b.top&&b.overlay&&(g=[],g=a.jgrid.findPos(c),b.left=g[0]+4,b.top=g[1]+4),e.top=b.top+"px",e.left=b.left;else if(0!==b.left||0!==b.top)e.left=
b.left,e.top=b.top+"px";a("a.ui-jqdialog-titlebar-close",p).click(function(){var c=a("#"+a.jgrid.jqID(d.themodal)).data("onClose")||b.onClose,e=a("#"+a.jgrid.jqID(d.themodal)).data("gbox")||b.gbox;m.hideModal("#"+a.jgrid.jqID(d.themodal),{gb:e,jqm:b.jqModal,onClose:c});return!1});0!==b.width&&b.width||(b.width=300);0!==b.height&&b.height||(b.height=200);b.zIndex||(f=a(f).parents("*[role=dialog]").filter(":first").css("z-index"),b.zIndex=f?parseInt(f,10)+2:950);f=0;l&&e.left&&!h&&(f=a(b.gbox).width()-
(isNaN(b.width)?0:parseInt(b.width,10))-8,e.left=parseInt(e.left,10)+parseInt(f,10));e.left&&(e.left+="px");a(k).css(a.extend({width:isNaN(b.width)?"auto":b.width+"px",height:isNaN(b.height)?"auto":b.height+"px",zIndex:b.zIndex,overflow:"hidden"},e)).attr({tabIndex:"-1",role:"dialog","aria-labelledby":d.modalhead,"aria-hidden":"true"});void 0===b.drag&&(b.drag=!0);void 0===b.resize&&(b.resize=!0);if(b.drag)if(a(p).css("cursor","move"),a.fn.jqDrag)a(k).jqDrag(p);else try{a(k).draggable({handle:a("#"+
a.jgrid.jqID(p.id))})}catch(n){}if(b.resize)if(a.fn.jqResize)a(k).append("<div class='jqResize ui-resizable-handle ui-resizable-se ui-icon ui-icon-gripsmall-diagonal-se'></div>"),a("#"+a.jgrid.jqID(d.themodal)).jqResize(".jqResize",d.scrollelm?"#"+a.jgrid.jqID(d.scrollelm):!1);else try{a(k).resizable({handles:"se, sw",alsoResize:d.scrollelm?"#"+a.jgrid.jqID(d.scrollelm):!1})}catch(s){}!0===b.closeOnEscape&&a(k).keydown(function(c){27==c.which&&(c=a("#"+a.jgrid.jqID(d.themodal)).data("onClose")||b.onClose,
m.hideModal("#"+a.jgrid.jqID(d.themodal),{gb:b.gbox,jqm:b.jqModal,onClose:c}))})},viewModal:function(d,e){e=a.extend({toTop:!0,overlay:10,modal:!1,overlayClass:"ui-widget-overlay",onShow:a.jgrid.showModal,onHide:a.jgrid.closeModal,gbox:"",jqm:!0,jqM:!0},e||{});if(a.fn.jqm&&!0===e.jqm)e.jqM?a(d).attr("aria-hidden","false").jqm(e).jqmShow():a(d).attr("aria-hidden","false").jqmShow();else{""!==e.gbox&&(a(".jqgrid-overlay:first",e.gbox).show(),a(d).data("gbox",e.gbox));a(d).show().attr("aria-hidden",
"false");try{a(":input:visible",d)[0].focus()}catch(b){}}},info_dialog:function(d,e,b,f){var c={width:290,height:"auto",dataheight:"auto",drag:!0,resize:!1,left:250,top:170,zIndex:1E3,jqModal:!0,modal:!1,closeOnEscape:!0,align:"center",buttonalign:"center",buttons:[]};a.extend(!0,c,a.jgrid.jqModal||{},{caption:"<b>"+d+"</b>"},f||{});var h=c.jqModal,g=this;a.fn.jqm&&!h&&(h=!1);d="";if(0<c.buttons.length)for(f=0;f<c.buttons.length;f++)void 0===c.buttons[f].id&&(c.buttons[f].id="info_button_"+f),d+=
"<a id='"+c.buttons[f].id+"' class='fm-button ui-state-default ui-corner-all'>"+c.buttons[f].text+"</a>";f=isNaN(c.dataheight)?c.dataheight:c.dataheight+"px";e="<div id='info_id'>"+("<div id='infocnt' style='margin:0px;padding-bottom:1em;width:100%;overflow:auto;position:relative;height:"+f+";"+("text-align:"+c.align+";")+"'>"+e+"</div>");e+=b?"<div class='ui-widget-content ui-helper-clearfix' style='text-align:"+c.buttonalign+";padding-bottom:0.8em;padding-top:0.5em;background-image: none;border-width: 1px 0 0 0;'><a id='closedialog' class='fm-button ui-state-default ui-corner-all'>"+
b+"</a>"+d+"</div>":""!==d?"<div class='ui-widget-content ui-helper-clearfix' style='text-align:"+c.buttonalign+";padding-bottom:0.8em;padding-top:0.5em;background-image: none;border-width: 1px 0 0 0;'>"+d+"</div>":"";e+="</div>";try{"false"===a("#info_dialog").attr("aria-hidden")&&a.jgrid.hideModal("#info_dialog",{jqm:h}),a("#info_dialog").remove()}catch(k){}a.jgrid.createModal({themodal:"info_dialog",modalhead:"info_head",modalcontent:"info_content",scrollelm:"infocnt"},e,c,"","",!0);d&&a.each(c.buttons,
function(b){a("#"+a.jgrid.jqID(this.id),"#info_id").bind("click",function(){c.buttons[b].onClick.call(a("#info_dialog"));return!1})});a("#closedialog","#info_id").click(function(){g.hideModal("#info_dialog",{jqm:h,onClose:a("#info_dialog").data("onClose")||c.onClose,gb:a("#info_dialog").data("gbox")||c.gbox});return!1});a(".fm-button","#info_dialog").hover(function(){a(this).addClass("ui-state-hover")},function(){a(this).removeClass("ui-state-hover")});a.isFunction(c.beforeOpen)&&c.beforeOpen();a.jgrid.viewModal("#info_dialog",
{onHide:function(a){a.w.hide().remove();a.o&&a.o.remove()},modal:c.modal,jqm:h});a.isFunction(c.afterOpen)&&c.afterOpen();try{a("#info_dialog").focus()}catch(l){}},bindEv:function(d,e){a.isFunction(e.dataInit)&&e.dataInit.call(this,d,e);e.dataEvents&&a.each(e.dataEvents,function(){void 0!==this.data?a(d).bind(this.type,this.data,this.fn):a(d).bind(this.type,this.fn)})},createEl:function(d,e,b,f,c){function h(b,c,d){var e="dataInit dataEvents dataUrl buildSelect sopt searchhidden defaultValue attr custom_element custom_value".split(" ");
void 0!==d&&a.isArray(d)&&a.merge(e,d);a.each(c,function(c,d){-1===a.inArray(c,e)&&a(b).attr(c,d)});c.hasOwnProperty("id")||a(b).attr("id",a.jgrid.randId())}var g="",k=this;switch(d){case "textarea":g=document.createElement("textarea");f?e.cols||a(g).css({width:"98%"}):e.cols||(e.cols=20);e.rows||(e.rows=2);if("&nbsp;"===b||"&#160;"===b||1===b.length&&160===b.charCodeAt(0))b="";g.value=b;h(g,e);a(g).attr({role:"textbox",multiline:"true"});break;case "checkbox":g=document.createElement("input");g.type=
"checkbox";e.value?(d=e.value.split(":"),b===d[0]&&(g.checked=!0,g.defaultChecked=!0),g.value=d[0],a(g).attr("offval",d[1])):(d=(b+"").toLowerCase(),0>d.search(/(false|f|0|no|n|off|undefined)/i)&&""!==d?(g.checked=!0,g.defaultChecked=!0,g.value=b):g.value="on",a(g).attr("offval","off"));h(g,e,["value"]);a(g).attr("role","checkbox");break;case "select":g=document.createElement("select");g.setAttribute("role","select");f=[];!0===e.multiple?(d=!0,g.multiple="multiple",a(g).attr("aria-multiselectable",
"true")):d=!1;if(void 0!==e.dataUrl){d=e.name?String(e.id).substring(0,String(e.id).length-String(e.name).length-1):String(e.id);var l=e.postData||c.postData;k.p&&k.p.idPrefix&&(d=a.jgrid.stripPref(k.p.idPrefix,d));a.ajax(a.extend({url:a.isFunction(e.dataUrl)?e.dataUrl.call(k,d,b,String(e.name)):e.dataUrl,type:"GET",dataType:"html",data:a.isFunction(l)?l.call(k,d,b,String(e.name)):l,context:{elem:g,options:e,vl:b},success:function(b){var c=[],d=this.elem,e=this.vl,f=a.extend({},this.options),g=!0===
f.multiple;b=a.isFunction(f.buildSelect)?f.buildSelect.call(k,b):b;"string"===typeof b&&(b=a(a.trim(b)).html());b&&(a(d).append(b),h(d,f,l?["postData"]:void 0),void 0===f.size&&(f.size=g?3:1),g?(c=e.split(","),c=a.map(c,function(b){return a.trim(b)})):c[0]=a.trim(e),setTimeout(function(){a("option",d).each(function(b){0===b&&d.multiple&&(this.selected=!1);a(this).attr("role","option");if(-1<a.inArray(a.trim(a(this).text()),c)||-1<a.inArray(a.trim(a(this).val()),c))this.selected="selected"})},0))}},
c||{}))}else if(e.value){var m;void 0===e.size&&(e.size=d?3:1);d&&(f=b.split(","),f=a.map(f,function(b){return a.trim(b)}));"function"===typeof e.value&&(e.value=e.value());var p,r,q=void 0===e.separator?":":e.separator;c=void 0===e.delimiter?";":e.delimiter;if("string"===typeof e.value)for(p=e.value.split(c),m=0;m<p.length;m++)r=p[m].split(q),2<r.length&&(r[1]=a.map(r,function(a,b){if(0<b)return a}).join(q)),c=document.createElement("option"),c.setAttribute("role","option"),c.value=r[0],c.innerHTML=
r[1],g.appendChild(c),d||a.trim(r[0])!==a.trim(b)&&a.trim(r[1])!==a.trim(b)||(c.selected="selected"),d&&(-1<a.inArray(a.trim(r[1]),f)||-1<a.inArray(a.trim(r[0]),f))&&(c.selected="selected");else if("object"===typeof e.value)for(m in q=e.value,q)q.hasOwnProperty(m)&&(c=document.createElement("option"),c.setAttribute("role","option"),c.value=m,c.innerHTML=q[m],g.appendChild(c),d||a.trim(m)!==a.trim(b)&&a.trim(q[m])!==a.trim(b)||(c.selected="selected"),d&&(-1<a.inArray(a.trim(q[m]),f)||-1<a.inArray(a.trim(m),
f))&&(c.selected="selected"));h(g,e,["value"])}break;case "text":case "password":case "button":m="button"===d?"button":"textbox";g=document.createElement("input");g.type=d;g.value=b;h(g,e);"button"!==d&&(f?e.size||a(g).css({width:"98%"}):e.size||(e.size=20));a(g).attr("role",m);break;case "image":case "file":g=document.createElement("input");g.type=d;h(g,e);break;case "custom":g=document.createElement("span");try{if(a.isFunction(e.custom_element))if(q=e.custom_element.call(k,b,e))q=a(q).addClass("customelement").attr({id:e.id,
name:e.name}),a(g).empty().append(q);else throw"e2";else throw"e1";}catch(n){"e1"===n&&a.jgrid.info_dialog(a.jgrid.errors.errcap,"function 'custom_element' "+a.jgrid.edit.msg.nodefined,a.jgrid.edit.bClose),"e2"===n?a.jgrid.info_dialog(a.jgrid.errors.errcap,"function 'custom_element' "+a.jgrid.edit.msg.novalue,a.jgrid.edit.bClose):a.jgrid.info_dialog(a.jgrid.errors.errcap,"string"===typeof n?n:n.message,a.jgrid.edit.bClose)}}return g},checkDate:function(a,e){var b={},f;a=a.toLowerCase();f=-1!==a.indexOf("/")?
"/":-1!==a.indexOf("-")?"-":-1!==a.indexOf(".")?".":"/";a=a.split(f);e=e.split(f);if(3!==e.length)return!1;var c=-1,h,g=f=-1,k;for(k=0;k<a.length;k++)h=isNaN(e[k])?0:parseInt(e[k],10),b[a[k]]=h,h=a[k],-1!==h.indexOf("y")&&(c=k),-1!==h.indexOf("m")&&(g=k),-1!==h.indexOf("d")&&(f=k);h="y"===a[c]||"yyyy"===a[c]?4:"yy"===a[c]?2:-1;k=[0,31,29,31,30,31,30,31,31,30,31,30,31];var l;if(-1===c)return!1;l=b[a[c]].toString();2===h&&1===l.length&&(h=1);if(l.length!==h||0===b[a[c]]&&"00"!==e[c]||-1===g)return!1;
l=b[a[g]].toString();if(1>l.length||1>b[a[g]]||12<b[a[g]]||-1===f)return!1;l=b[a[f]].toString();if(!(h=1>l.length)&&!(h=1>b[a[f]])&&!(h=31<b[a[f]])){if(h=2===b[a[g]])c=b[a[c]],h=b[a[f]]>(0!==c%4||0===c%100&&0!==c%400?28:29);h=h||b[a[f]]>k[b[a[g]]]}return h?!1:!0},isEmpty:function(a){return a.match(/^\s+$/)||""===a?!0:!1},checkTime:function(d){var e=/^(\d{1,2}):(\d{2})([apAP][Mm])?$/;if(!a.jgrid.isEmpty(d))if(d=d.match(e)){if(d[3]){if(1>d[1]||12<d[1])return!1}else if(23<d[1])return!1;if(59<d[2])return!1}else return!1;
return!0},checkValues:function(d,e,b,f){var c,h,g;g=this.p.colModel;if(void 0===b)if("string"===typeof e)for(b=0,f=g.length;b<f;b++){if(g[b].name===e){c=g[b].editrules;e=b;null!=g[b].formoptions&&(h=g[b].formoptions.label);break}}else 0<=e&&(c=g[e].editrules);else c=b,h=void 0===f?"_":f;if(c){h||(h=null!=this.p.colNames?this.p.colNames[e]:g[e].label);if(!0===c.required&&a.jgrid.isEmpty(d))return[!1,h+": "+a.jgrid.edit.msg.required,""];b=!1===c.required?!1:!0;if(!0===c.number&&(!1!==b||!a.jgrid.isEmpty(d))&&
isNaN(d))return[!1,h+": "+a.jgrid.edit.msg.number,""];if(void 0!==c.minValue&&!isNaN(c.minValue)&&parseFloat(d)<parseFloat(c.minValue))return[!1,h+": "+a.jgrid.edit.msg.minValue+" "+c.minValue,""];if(void 0!==c.maxValue&&!isNaN(c.maxValue)&&parseFloat(d)>parseFloat(c.maxValue))return[!1,h+": "+a.jgrid.edit.msg.maxValue+" "+c.maxValue,""];if(!(!0!==c.email||!1===b&&a.jgrid.isEmpty(d)||(f=/^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?$/i,
f.test(d))))return[!1,h+": "+a.jgrid.edit.msg.email,""];if(!(!0!==c.integer||!1===b&&a.jgrid.isEmpty(d)||!isNaN(d)&&0===d%1&&-1===d.indexOf(".")))return[!1,h+": "+a.jgrid.edit.msg.integer,""];if(!(!0!==c.date||!1===b&&a.jgrid.isEmpty(d)||(g[e].formatoptions&&g[e].formatoptions.newformat?(g=g[e].formatoptions.newformat,a.jgrid.formatter.date.masks.hasOwnProperty(g)&&(g=a.jgrid.formatter.date.masks[g])):g=g[e].datefmt||"Y-m-d",a.jgrid.checkDate(g,d))))return[!1,h+": "+a.jgrid.edit.msg.date+" - "+g,
""];if(!0===c.time&&!(!1===b&&a.jgrid.isEmpty(d)||a.jgrid.checkTime(d)))return[!1,h+": "+a.jgrid.edit.msg.date+" - hh:mm (am/pm)",""];if(!(!0!==c.url||!1===b&&a.jgrid.isEmpty(d)||(f=/^(((https?)|(ftp)):\/\/([\-\w]+\.)+\w{2,3}(\/[%\-\w]+(\.\w{2,})?)*(([\w\-\.\?\\\/+@&#;`~=%!]*)(\.\w{2,})?)*\/?)/i,f.test(d))))return[!1,h+": "+a.jgrid.edit.msg.url,""];if(!0===c.custom&&(!1!==b||!a.jgrid.isEmpty(d)))return a.isFunction(c.custom_func)?(d=c.custom_func.call(this,d,h,e),a.isArray(d)?d:[!1,a.jgrid.edit.msg.customarray,
""]):[!1,a.jgrid.edit.msg.customfcheck,""]}return[!0,"",""]}})})(jQuery);
(function(a){a.fn.jqFilter=function(d){if("string"===typeof d){var e=a.fn.jqFilter[d];if(!e)throw"jqFilter - No such method: "+d;var b=a.makeArray(arguments).slice(1);return e.apply(this,b)}var f=a.extend(!0,{filter:null,columns:[],onChange:null,afterRedraw:null,checkValues:null,error:!1,errmsg:"",errorcheck:!0,showQuery:!0,sopt:null,ops:[],operands:null,numopts:"eq ne lt le gt ge nu nn in ni".split(" "),stropts:"eq ne bw bn ew en cn nc nu nn in ni".split(" "),strarr:["text","string","blob"],groupOps:[{op:"AND",
text:"AND"},{op:"OR",text:"OR"}],groupButton:!0,ruleButtons:!0,direction:"ltr"},a.jgrid.filter,d||{});return this.each(function(){if(!this.filter){this.p=f;if(null===this.p.filter||void 0===this.p.filter)this.p.filter={groupOp:this.p.groupOps[0].op,rules:[],groups:[]};var b,d=this.p.columns.length,e,k=/msie/i.test(navigator.userAgent)&&!window.opera;this.p.initFilter=a.extend(!0,{},this.p.filter);if(d){for(b=0;b<d;b++)e=this.p.columns[b],e.stype?e.inputtype=e.stype:e.inputtype||(e.inputtype="text"),
e.sorttype?e.searchtype=e.sorttype:e.searchtype||(e.searchtype="string"),void 0===e.hidden&&(e.hidden=!1),e.label||(e.label=e.name),e.index&&(e.name=e.index),e.hasOwnProperty("searchoptions")||(e.searchoptions={}),e.hasOwnProperty("searchrules")||(e.searchrules={});this.p.showQuery&&a(this).append("<table class='queryresult ui-widget ui-widget-content' style='display:block;max-width:440px;border:0px none;' dir='"+this.p.direction+"'><tbody><tr><td class='query'></td></tr></tbody></table>");var l=
function(b,c){var d=[!0,""],e=a("#"+a.jgrid.jqID(f.id))[0]||null;if(a.isFunction(c.searchrules))d=c.searchrules.call(e,b,c);else if(a.jgrid&&a.jgrid.checkValues)try{d=a.jgrid.checkValues.call(e,b,-1,c.searchrules,c.label)}catch(g){}d&&d.length&&!1===d[0]&&(f.error=!d[0],f.errmsg=d[1])};this.onchange=function(){this.p.error=!1;this.p.errmsg="";return a.isFunction(this.p.onChange)?this.p.onChange.call(this,this.p):!1};this.reDraw=function(){a("table.group:first",this).remove();var b=this.createTableForGroup(f.filter,
null);a(this).append(b);a.isFunction(this.p.afterRedraw)&&this.p.afterRedraw.call(this,this.p)};this.createTableForGroup=function(b,c){var d=this,e,g=a("<table class='group ui-widget ui-widget-content' style='border:0px none;'><tbody></tbody></table>"),k="left";"rtl"===this.p.direction&&(k="right",g.attr("dir","rtl"));null===c&&g.append("<tr class='error' style='display:none;'><th colspan='5' class='ui-state-error' align='"+k+"'></th></tr>");var h=a("<tr></tr>");g.append(h);k=a("<th colspan='5' align='"+
k+"'></th>");h.append(k);if(!0===this.p.ruleButtons){var l=a("<select class='opsel'></select>");k.append(l);var h="",u;for(e=0;e<f.groupOps.length;e++)u=b.groupOp===d.p.groupOps[e].op?" selected='selected'":"",h+="<option value='"+d.p.groupOps[e].op+"'"+u+">"+d.p.groupOps[e].text+"</option>";l.append(h).bind("change",function(){b.groupOp=a(l).val();d.onchange()})}h="<span></span>";this.p.groupButton&&(h=a("<input type='button' value='+ {}' title='Add subgroup' class='add-group'/>"),h.bind("click",
function(){void 0===b.groups&&(b.groups=[]);b.groups.push({groupOp:f.groupOps[0].op,rules:[],groups:[]});d.reDraw();d.onchange();return!1}));k.append(h);if(!0===this.p.ruleButtons){var h=a("<input type='button' value='+' title='Add rule' class='add-rule ui-add'/>"),w;h.bind("click",function(){void 0===b.rules&&(b.rules=[]);for(e=0;e<d.p.columns.length;e++){var c=void 0===d.p.columns[e].search?!0:d.p.columns[e].search,f=!0===d.p.columns[e].hidden;if(!0===d.p.columns[e].searchoptions.searchhidden&&
c||c&&!f){w=d.p.columns[e];break}}c=w.searchoptions.sopt?w.searchoptions.sopt:d.p.sopt?d.p.sopt:-1!==a.inArray(w.searchtype,d.p.strarr)?d.p.stropts:d.p.numopts;b.rules.push({field:w.name,op:c[0],data:""});d.reDraw();return!1});k.append(h)}null!==c&&(h=a("<input type='button' value='-' title='Delete group' class='delete-group'/>"),k.append(h),h.bind("click",function(){for(e=0;e<c.groups.length;e++)if(c.groups[e]===b){c.groups.splice(e,1);break}d.reDraw();d.onchange();return!1}));if(void 0!==b.groups)for(e=
0;e<b.groups.length;e++)k=a("<tr></tr>"),g.append(k),h=a("<td class='first'></td>"),k.append(h),h=a("<td colspan='4'></td>"),h.append(this.createTableForGroup(b.groups[e],b)),k.append(h);void 0===b.groupOp&&(b.groupOp=d.p.groupOps[0].op);if(void 0!==b.rules)for(e=0;e<b.rules.length;e++)g.append(this.createTableRowForRule(b.rules[e],b));return g};this.createTableRowForRule=function(b,c){var d=this,e=a("#"+a.jgrid.jqID(f.id))[0]||null,g=a("<tr></tr>"),h,l,v,u,w="",x;g.append("<td class='first'></td>");
var z=a("<td class='columns'></td>");g.append(z);var A=a("<select></select>"),J,B=[];z.append(A);A.bind("change",function(){b.field=a(A).val();v=a(this).parents("tr:first");for(h=0;h<d.p.columns.length;h++)if(d.p.columns[h].name===b.field){u=d.p.columns[h];break}if(u){u.searchoptions.id=a.jgrid.randId();k&&"text"===u.inputtype&&!u.searchoptions.size&&(u.searchoptions.size=10);var c=a.jgrid.createEl.call(e,u.inputtype,u.searchoptions,"",!0,d.p.ajaxSelectOptions||{},!0);a(c).addClass("input-elm");l=
u.searchoptions.sopt?u.searchoptions.sopt:d.p.sopt?d.p.sopt:-1!==a.inArray(u.searchtype,d.p.strarr)?d.p.stropts:d.p.numopts;var f="",g=0;B=[];a.each(d.p.ops,function(){B.push(this.oper)});for(h=0;h<l.length;h++)J=a.inArray(l[h],B),-1!==J&&(0===g&&(b.op=d.p.ops[J].oper),f+="<option value='"+d.p.ops[J].oper+"'>"+d.p.ops[J].text+"</option>",g++);a(".selectopts",v).empty().append(f);a(".selectopts",v)[0].selectedIndex=0;a.jgrid.msie&&9>a.jgrid.msiever()&&(f=parseInt(a("select.selectopts",v)[0].offsetWidth,
10)+1,a(".selectopts",v).width(f),a(".selectopts",v).css("width","auto"));a(".data",v).empty().append(c);a.jgrid.bindEv.call(e,c,u.searchoptions);a(".input-elm",v).bind("change",function(c){c=c.target;b.data="SPAN"===c.nodeName.toUpperCase()&&u.searchoptions&&a.isFunction(u.searchoptions.custom_value)?u.searchoptions.custom_value.call(e,a(c).children(".customelement:first"),"get"):c.value;d.onchange()});setTimeout(function(){b.data=a(c).val();d.onchange()},0)}});for(h=z=0;h<d.p.columns.length;h++){x=
void 0===d.p.columns[h].search?!0:d.p.columns[h].search;var M=!0===d.p.columns[h].hidden;if(!0===d.p.columns[h].searchoptions.searchhidden&&x||x&&!M)x="",b.field===d.p.columns[h].name&&(x=" selected='selected'",z=h),w+="<option value='"+d.p.columns[h].name+"'"+x+">"+d.p.columns[h].label+"</option>"}A.append(w);w=a("<td class='operators'></td>");g.append(w);u=f.columns[z];u.searchoptions.id=a.jgrid.randId();k&&"text"===u.inputtype&&!u.searchoptions.size&&(u.searchoptions.size=10);z=a.jgrid.createEl.call(e,
u.inputtype,u.searchoptions,b.data,!0,d.p.ajaxSelectOptions||{},!0);if("nu"===b.op||"nn"===b.op)a(z).attr("readonly","true"),a(z).attr("disabled","true");var H=a("<select class='selectopts'></select>");w.append(H);H.bind("change",function(){b.op=a(H).val();v=a(this).parents("tr:first");var c=a(".input-elm",v)[0];"nu"===b.op||"nn"===b.op?(b.data="","SELECT"!==c.tagName.toUpperCase()&&(c.value=""),c.setAttribute("readonly","true"),c.setAttribute("disabled","true")):("SELECT"===c.tagName.toUpperCase()&&
(b.data=c.value),c.removeAttribute("readonly"),c.removeAttribute("disabled"));d.onchange()});l=u.searchoptions.sopt?u.searchoptions.sopt:d.p.sopt?d.p.sopt:-1!==a.inArray(u.searchtype,d.p.strarr)?d.p.stropts:d.p.numopts;w="";a.each(d.p.ops,function(){B.push(this.oper)});for(h=0;h<l.length;h++)J=a.inArray(l[h],B),-1!==J&&(x=b.op===d.p.ops[J].oper?" selected='selected'":"",w+="<option value='"+d.p.ops[J].oper+"'"+x+">"+d.p.ops[J].text+"</option>");H.append(w);w=a("<td class='data'></td>");g.append(w);
w.append(z);a.jgrid.bindEv.call(e,z,u.searchoptions);a(z).addClass("input-elm").bind("change",function(){b.data="custom"===u.inputtype?u.searchoptions.custom_value.call(e,a(this).children(".customelement:first"),"get"):a(this).val();d.onchange()});w=a("<td></td>");g.append(w);!0===this.p.ruleButtons&&(z=a("<input type='button' value='-' title='Delete rule' class='delete-rule ui-del'/>"),w.append(z),z.bind("click",function(){for(h=0;h<c.rules.length;h++)if(c.rules[h]===b){c.rules.splice(h,1);break}d.reDraw();
d.onchange();return!1}));return g};this.getStringForGroup=function(a){var b="(",c;if(void 0!==a.groups)for(c=0;c<a.groups.length;c++){1<b.length&&(b+=" "+a.groupOp+" ");try{b+=this.getStringForGroup(a.groups[c])}catch(d){alert(d)}}if(void 0!==a.rules)try{for(c=0;c<a.rules.length;c++)1<b.length&&(b+=" "+a.groupOp+" "),b+=this.getStringForRule(a.rules[c])}catch(e){alert(e)}b+=")";return"()"===b?"":b};this.getStringForRule=function(b){var c="",d="",e,g;for(e=0;e<this.p.ops.length;e++)if(this.p.ops[e].oper===
b.op){c=this.p.operands.hasOwnProperty(b.op)?this.p.operands[b.op]:"";d=this.p.ops[e].oper;break}for(e=0;e<this.p.columns.length;e++)if(this.p.columns[e].name===b.field){g=this.p.columns[e];break}if(void 0==g)return"";e=b.data;if("bw"===d||"bn"===d)e+="%";if("ew"===d||"en"===d)e="%"+e;if("cn"===d||"nc"===d)e="%"+e+"%";if("in"===d||"ni"===d)e=" ("+e+")";f.errorcheck&&l(b.data,g);return-1!==a.inArray(g.searchtype,["int","integer","float","number","currency"])||"nn"===d||"nu"===d?b.field+" "+c+" "+e:
b.field+" "+c+' "'+e+'"'};this.resetFilter=function(){this.p.filter=a.extend(!0,{},this.p.initFilter);this.reDraw();this.onchange()};this.hideError=function(){a("th.ui-state-error",this).html("");a("tr.error",this).hide()};this.showError=function(){a("th.ui-state-error",this).html(this.p.errmsg);a("tr.error",this).show()};this.toUserFriendlyString=function(){return this.getStringForGroup(f.filter)};this.toString=function(){function a(c){var d="(",e;if(void 0!==c.groups)for(e=0;e<c.groups.length;e++)1<
d.length&&(d="OR"===c.groupOp?d+" || ":d+" && "),d+=a(c.groups[e]);if(void 0!==c.rules)for(e=0;e<c.rules.length;e++){1<d.length&&(d="OR"===c.groupOp?d+" || ":d+" && ");var f=c.rules[e];if(b.p.errorcheck){for(var g=void 0,k=void 0,g=0;g<b.p.columns.length;g++)if(b.p.columns[g].name===f.field){k=b.p.columns[g];break}k&&l(f.data,k)}d+=f.op+"(item."+f.field+",'"+f.data+"')"}d+=")";return"()"===d?"":d}var b=this;return a(this.p.filter)};this.reDraw();if(this.p.showQuery)this.onchange();this.filter=!0}}})};
a.extend(a.fn.jqFilter,{toSQLString:function(){var a="";this.each(function(){a=this.toUserFriendlyString()});return a},filterData:function(){var a;this.each(function(){a=this.p.filter});return a},getParameter:function(a){return void 0!==a&&this.p.hasOwnProperty(a)?this.p[a]:this.p},resetFilter:function(){return this.each(function(){this.resetFilter()})},addFilter:function(d){"string"===typeof d&&(d=a.jgrid.parse(d));this.each(function(){this.p.filter=d;this.reDraw();this.onchange()})}})})(jQuery);
(function(a){var d={};a.jgrid.extend({searchGrid:function(d){d=a.extend(!0,{recreateFilter:!1,drag:!0,sField:"searchField",sValue:"searchString",sOper:"searchOper",sFilter:"filters",loadDefaults:!0,beforeShowSearch:null,afterShowSearch:null,onInitializeSearch:null,afterRedraw:null,afterChange:null,closeAfterSearch:!1,closeAfterReset:!1,closeOnEscape:!1,searchOnEnter:!1,multipleSearch:!1,multipleGroup:!1,top:0,left:0,jqModal:!0,modal:!1,resize:!0,width:450,height:"auto",dataheight:"auto",showQuery:!1,
errorcheck:!0,sopt:null,stringResult:void 0,onClose:null,onSearch:null,onReset:null,toTop:!0,overlay:30,columns:[],tmplNames:null,tmplFilters:null,tmplLabel:" Template: ",showOnLoad:!1,layer:null,operands:{eq:"=",ne:"<>",lt:"<",le:"<=",gt:">",ge:">=",bw:"LIKE",bn:"NOT LIKE","in":"IN",ni:"NOT IN",ew:"LIKE",en:"NOT LIKE",cn:"LIKE",nc:"NOT LIKE",nu:"IS NULL",nn:"ISNOT NULL"}},a.jgrid.search,d||{});return this.each(function(){function b(b){h=a(f).triggerHandler("jqGridFilterBeforeShow",[b]);void 0===
h&&(h=!0);h&&a.isFunction(d.beforeShowSearch)&&(h=d.beforeShowSearch.call(f,b));h&&(a.jgrid.viewModal("#"+a.jgrid.jqID(k.themodal),{gbox:"#gbox_"+a.jgrid.jqID(c),jqm:d.jqModal,modal:d.modal,overlay:d.overlay,toTop:d.toTop}),a(f).triggerHandler("jqGridFilterAfterShow",[b]),a.isFunction(d.afterShowSearch)&&d.afterShowSearch.call(f,b))}var f=this;if(f.grid){var c="fbox_"+f.p.id,h=!0,g=!0,k={themodal:"searchmod"+c,modalhead:"searchhd"+c,modalcontent:"searchcnt"+c,scrollelm:c},l=f.p.postData[d.sFilter];
"string"===typeof l&&(l=a.jgrid.parse(l));!0===d.recreateFilter&&a("#"+a.jgrid.jqID(k.themodal)).remove();if(void 0!==a("#"+a.jgrid.jqID(k.themodal))[0])b(a("#fbox_"+a.jgrid.jqID(+f.p.id)));else{var m=a("<div><div id='"+c+"' class='searchFilter' style='overflow:auto'></div></div>").insertBefore("#gview_"+a.jgrid.jqID(f.p.id)),p="left",r="";"rtl"===f.p.direction&&(p="right",r=" style='text-align:left'",m.attr("dir","rtl"));var q=a.extend([],f.p.colModel),n="<a id='"+c+"_search' class='fm-button ui-state-default ui-corner-all fm-button-icon-right ui-reset'><span class='ui-icon ui-icon-search'></span>"+
d.Find+"</a>",s="<a id='"+c+"_reset' class='fm-button ui-state-default ui-corner-all fm-button-icon-left ui-search'><span class='ui-icon ui-icon-arrowreturnthick-1-w'></span>"+d.Reset+"</a>",t="",v="",u,w=!1,x=-1;d.showQuery&&(t="<a id='"+c+"_query' class='fm-button ui-state-default ui-corner-all fm-button-icon-left'><span class='ui-icon ui-icon-comment'></span>Query</a>");d.columns.length?(q=d.columns,x=0,u=q[0].index||q[0].name):a.each(q,function(a,b){b.label||(b.label=f.p.colNames[a]);if(!w){var c=
void 0===b.search?!0:b.search,d=!0===b.hidden;if(b.searchoptions&&!0===b.searchoptions.searchhidden&&c||c&&!d)w=!0,u=b.index||b.name,x=a}});if(!l&&u||!1===d.multipleSearch){var z="eq";0<=x&&q[x].searchoptions&&q[x].searchoptions.sopt?z=q[x].searchoptions.sopt[0]:d.sopt&&d.sopt.length&&(z=d.sopt[0]);l={groupOp:"AND",rules:[{field:u,op:z,data:""}]}}w=!1;d.tmplNames&&d.tmplNames.length&&(w=!0,v=d.tmplLabel,v+="<select class='ui-template'>",v+="<option value='default'>Default</option>",a.each(d.tmplNames,
function(a,b){v+="<option value='"+a+"'>"+b+"</option>"}),v+="</select>");p="<table class='EditTable' style='border:0px none;margin-top:5px' id='"+c+"_2'><tbody><tr><td colspan='2'><hr class='ui-widget-content' style='margin:1px'/></td></tr><tr><td class='EditButton' style='text-align:"+p+"'>"+s+v+"</td><td class='EditButton' "+r+">"+t+n+"</td></tr></tbody></table>";c=a.jgrid.jqID(c);a("#"+c).jqFilter({columns:q,filter:d.loadDefaults?l:null,showQuery:d.showQuery,errorcheck:d.errorcheck,sopt:d.sopt,
groupButton:d.multipleGroup,ruleButtons:d.multipleSearch,afterRedraw:d.afterRedraw,ops:d.odata,operands:d.operands,ajaxSelectOptions:f.p.ajaxSelectOptions,groupOps:d.groupOps,onChange:function(){this.p.showQuery&&a(".query",this).html(this.toUserFriendlyString());a.isFunction(d.afterChange)&&d.afterChange.call(f,a("#"+c),d)},direction:f.p.direction,id:f.p.id});m.append(p);w&&d.tmplFilters&&d.tmplFilters.length&&a(".ui-template",m).bind("change",function(){var b=a(this).val();"default"===b?a("#"+c).jqFilter("addFilter",
l):a("#"+c).jqFilter("addFilter",d.tmplFilters[parseInt(b,10)]);return!1});!0===d.multipleGroup&&(d.multipleSearch=!0);a(f).triggerHandler("jqGridFilterInitialize",[a("#"+c)]);a.isFunction(d.onInitializeSearch)&&d.onInitializeSearch.call(f,a("#"+c));d.gbox="#gbox_"+c;d.layer?a.jgrid.createModal(k,m,d,"#gview_"+a.jgrid.jqID(f.p.id),a("#gbox_"+a.jgrid.jqID(f.p.id))[0],"#"+a.jgrid.jqID(d.layer),{position:"relative"}):a.jgrid.createModal(k,m,d,"#gview_"+a.jgrid.jqID(f.p.id),a("#gbox_"+a.jgrid.jqID(f.p.id))[0]);
(d.searchOnEnter||d.closeOnEscape)&&a("#"+a.jgrid.jqID(k.themodal)).keydown(function(b){var f=a(b.target);if(d.searchOnEnter&&13===b.which&&!(f.hasClass("add-group")||f.hasClass("add-rule")||f.hasClass("delete-group")||f.hasClass("delete-rule")||f.hasClass("fm-button")&&f.is("[id$=_query]")))return a("#"+c+"_search").click(),!1;if(d.closeOnEscape&&27===b.which)return a("#"+a.jgrid.jqID(k.modalhead)).find(".ui-jqdialog-titlebar-close").click(),!1});t&&a("#"+c+"_query").bind("click",function(){a(".queryresult",
m).toggle();return!1});void 0===d.stringResult&&(d.stringResult=d.multipleSearch);a("#"+c+"_search").bind("click",function(){var b=a("#"+c),h={},l,m;b.find(".input-elm:focus").change();m=b.jqFilter("filterData");if(d.errorcheck&&(b[0].hideError(),d.showQuery||b.jqFilter("toSQLString"),b[0].p.error))return b[0].showError(),!1;if(d.stringResult){try{l=xmlJsonClass.toJson(m,"","",!1)}catch(n){try{l=JSON.stringify(m)}catch(p){}}"string"===typeof l&&(h[d.sFilter]=l,a.each([d.sField,d.sValue,d.sOper],function(){h[this]=
""}))}else d.multipleSearch?(h[d.sFilter]=m,a.each([d.sField,d.sValue,d.sOper],function(){h[this]=""})):(h[d.sField]=m.rules[0].field,h[d.sValue]=m.rules[0].data,h[d.sOper]=m.rules[0].op,h[d.sFilter]="");f.p.search=!0;a.extend(f.p.postData,h);g=a(f).triggerHandler("jqGridFilterSearch");void 0===g&&(g=!0);g&&a.isFunction(d.onSearch)&&(g=d.onSearch.call(f,f.p.filters));!1!==g&&a(f).trigger("reloadGrid",[{page:1}]);d.closeAfterSearch&&a.jgrid.hideModal("#"+a.jgrid.jqID(k.themodal),{gb:"#gbox_"+a.jgrid.jqID(f.p.id),
jqm:d.jqModal,onClose:d.onClose});return!1});a("#"+c+"_reset").bind("click",function(){var b={},h=a("#"+c);f.p.search=!1;f.p.resetsearch=!0;!1===d.multipleSearch?b[d.sField]=b[d.sValue]=b[d.sOper]="":b[d.sFilter]="";h[0].resetFilter();w&&a(".ui-template",m).val("default");a.extend(f.p.postData,b);g=a(f).triggerHandler("jqGridFilterReset");void 0===g&&(g=!0);g&&a.isFunction(d.onReset)&&(g=d.onReset.call(f));!1!==g&&a(f).trigger("reloadGrid",[{page:1}]);d.closeAfterReset&&a.jgrid.hideModal("#"+a.jgrid.jqID(k.themodal),
{gb:"#gbox_"+a.jgrid.jqID(f.p.id),jqm:d.jqModal,onClose:d.onClose});return!1});b(a("#"+c));a(".fm-button:not(.ui-state-disabled)",m).hover(function(){a(this).addClass("ui-state-hover")},function(){a(this).removeClass("ui-state-hover")})}}})},editGridRow:function(e,b){b=a.extend(!0,{top:0,left:0,width:300,datawidth:"auto",height:"auto",dataheight:"auto",modal:!1,overlay:30,drag:!0,resize:!0,url:null,mtype:"POST",clearAfterAdd:!0,closeAfterEdit:!1,reloadAfterSubmit:!0,onInitializeForm:null,beforeInitData:null,
beforeShowForm:null,afterShowForm:null,beforeSubmit:null,afterSubmit:null,onclickSubmit:null,afterComplete:null,onclickPgButtons:null,afterclickPgButtons:null,editData:{},recreateForm:!1,jqModal:!0,closeOnEscape:!1,addedrow:"first",topinfo:"",bottominfo:"",saveicon:[],closeicon:[],savekey:[!1,13],navkeys:[!1,38,40],checkOnSubmit:!1,checkOnUpdate:!1,_savedData:{},processing:!1,onClose:null,ajaxEditOptions:{},serializeEditData:null,viewPagerButtons:!0,overlayClass:"ui-widget-overlay"},a.jgrid.edit,
b||{});d[a(this)[0].p.id]=b;return this.each(function(){function f(){a(u+" > tbody > tr > td > .FormElement").each(function(){var b=a(".customelement",this);if(b.length){var c=a(b[0]).attr("name");a.each(n.p.colModel,function(){if(this.name===c&&this.editoptions&&a.isFunction(this.editoptions.custom_value)){try{if(y[c]=this.editoptions.custom_value.call(n,a("#"+a.jgrid.jqID(c),u),"get"),void 0===y[c])throw"e1";}catch(b){"e1"===b?a.jgrid.info_dialog(a.jgrid.errors.errcap,"function 'custom_value' "+
a.jgrid.edit.msg.novalue,a.jgrid.edit.bClose):a.jgrid.info_dialog(a.jgrid.errors.errcap,b.message,a.jgrid.edit.bClose)}return!0}})}else{switch(a(this).get(0).type){case "checkbox":a(this).is(":checked")?y[this.name]=a(this).val():(b=a(this).attr("offval"),y[this.name]=b);break;case "select-one":y[this.name]=a("option:selected",this).val();break;case "select-multiple":y[this.name]=a(this).val();y[this.name]=y[this.name]?y[this.name].join(","):"";a("option:selected",this).each(function(b,c){a(c).text()});
break;case "password":case "text":case "textarea":case "button":y[this.name]=a(this).val()}n.p.autoencode&&(y[this.name]=a.jgrid.htmlEncode(y[this.name]))}});return!0}function c(b,c,e,f){var g,k,h,l=0,m,p,q,r=[],s=!1,w="",u;for(u=1;u<=f;u++)w+="<td class='CaptionTD'>&#160;</td><td class='DataTD'>&#160;</td>";"_empty"!==b&&(s=a(c).jqGrid("getInd",b));a(c.p.colModel).each(function(u){g=this.name;p=(k=this.editrules&&!0===this.editrules.edithidden?!1:!0===this.hidden?!0:!1)?"style='display:none'":"";
if("cb"!==g&&"subgrid"!==g&&!0===this.editable&&"rn"!==g){if(!1===s)m="";else if(g===c.p.ExpandColumn&&!0===c.p.treeGrid)m=a("td[role='gridcell']:eq("+u+")",c.rows[s]).text();else{try{m=a.unformat.call(c,a("td[role='gridcell']:eq("+u+")",c.rows[s]),{rowId:b,colModel:this},u)}catch(v){m=this.edittype&&"textarea"===this.edittype?a("td[role='gridcell']:eq("+u+")",c.rows[s]).text():a("td[role='gridcell']:eq("+u+")",c.rows[s]).html()}if(!m||"&nbsp;"===m||"&#160;"===m||1===m.length&&160===m.charCodeAt(0))m=
""}var x=a.extend({},this.editoptions||{},{id:g,name:g}),B=a.extend({},{elmprefix:"",elmsuffix:"",rowabove:!1,rowcontent:""},this.formoptions||{}),z=parseInt(B.rowpos,10)||l+1,A=parseInt(2*(parseInt(B.colpos,10)||1),10);"_empty"===b&&x.defaultValue&&(m=a.isFunction(x.defaultValue)?x.defaultValue.call(n):x.defaultValue);this.edittype||(this.edittype="text");n.p.autoencode&&(m=a.jgrid.htmlDecode(m));q=a.jgrid.createEl.call(n,this.edittype,x,m,!1,a.extend({},a.jgrid.ajaxOptions,c.p.ajaxSelectOptions||
{}));if(d[n.p.id].checkOnSubmit||d[n.p.id].checkOnUpdate)d[n.p.id]._savedData[g]=m;a(q).addClass("FormElement");-1<a.inArray(this.edittype,["text","textarea","password","select"])&&a(q).addClass("ui-widget-content ui-corner-all");h=a(e).find("tr[rowpos="+z+"]");if(B.rowabove){var y=a("<tr><td class='contentinfo' colspan='"+2*f+"'>"+B.rowcontent+"</td></tr>");a(e).append(y);y[0].rp=z}0===h.length&&(h=a("<tr "+p+" rowpos='"+z+"'></tr>").addClass("FormData").attr("id","tr_"+g),a(h).append(w),a(e).append(h),
h[0].rp=z);a("td:eq("+(A-2)+")",h[0]).html(void 0===B.label?c.p.colNames[u]:B.label);a("td:eq("+(A-1)+")",h[0]).append(B.elmprefix).append(q).append(B.elmsuffix);"custom"===this.edittype&&a.isFunction(x.custom_value)&&x.custom_value.call(n,a("#"+g,"#"+t),"set",m);a.jgrid.bindEv.call(n,q,x);r[l]=u;l++}});0<l&&(u=a("<tr class='FormData' style='display:none'><td class='CaptionTD'></td><td colspan='"+(2*f-1)+"' class='DataTD'><input class='FormElement' id='id_g' type='text' name='"+c.p.id+"_id' value='"+
b+"'/></td></tr>"),u[0].rp=l+999,a(e).append(u),d[n.p.id].checkOnSubmit||d[n.p.id].checkOnUpdate)&&(d[n.p.id]._savedData[c.p.id+"_id"]=b);return r}function h(b,c,e){var f,g=0,k,h,l,m,p;if(d[n.p.id].checkOnSubmit||d[n.p.id].checkOnUpdate)d[n.p.id]._savedData={},d[n.p.id]._savedData[c.p.id+"_id"]=b;var q=c.p.colModel;if("_empty"===b)a(q).each(function(){f=this.name;l=a.extend({},this.editoptions||{});(h=a("#"+a.jgrid.jqID(f),"#"+e))&&h.length&&null!==h[0]&&(m="","custom"===this.edittype&&a.isFunction(l.custom_value)?
l.custom_value.call(n,a("#"+f,"#"+e),"set",m):l.defaultValue?(m=a.isFunction(l.defaultValue)?l.defaultValue.call(n):l.defaultValue,"checkbox"===h[0].type?(p=m.toLowerCase(),0>p.search(/(false|f|0|no|n|off|undefined)/i)&&""!==p?(h[0].checked=!0,h[0].defaultChecked=!0,h[0].value=m):(h[0].checked=!1,h[0].defaultChecked=!1)):h.val(m)):"checkbox"===h[0].type?(h[0].checked=!1,h[0].defaultChecked=!1,m=a(h).attr("offval")):h[0].type&&"select"===h[0].type.substr(0,6)?h[0].selectedIndex=0:h.val(m),!0===d[n.p.id].checkOnSubmit||
d[n.p.id].checkOnUpdate)&&(d[n.p.id]._savedData[f]=m)}),a("#id_g","#"+e).val(b);else{var r=a(c).jqGrid("getInd",b,!0);r&&(a('td[role="gridcell"]',r).each(function(h){f=q[h].name;if("cb"!==f&&"subgrid"!==f&&"rn"!==f&&!0===q[h].editable){if(f===c.p.ExpandColumn&&!0===c.p.treeGrid)k=a(this).text();else try{k=a.unformat.call(c,a(this),{rowId:b,colModel:q[h]},h)}catch(l){k="textarea"===q[h].edittype?a(this).text():a(this).html()}n.p.autoencode&&(k=a.jgrid.htmlDecode(k));if(!0===d[n.p.id].checkOnSubmit||
d[n.p.id].checkOnUpdate)d[n.p.id]._savedData[f]=k;f=a.jgrid.jqID(f);switch(q[h].edittype){case "password":case "text":case "button":case "image":case "textarea":if("&nbsp;"===k||"&#160;"===k||1===k.length&&160===k.charCodeAt(0))k="";a("#"+f,"#"+e).val(k);break;case "select":var m=k.split(","),m=a.map(m,function(b){return a.trim(b)});a("#"+f+" option","#"+e).each(function(){q[h].editoptions.multiple||a.trim(k)!==a.trim(a(this).text())&&m[0]!==a.trim(a(this).text())&&m[0]!==a.trim(a(this).val())?q[h].editoptions.multiple?
-1<a.inArray(a.trim(a(this).text()),m)||-1<a.inArray(a.trim(a(this).val()),m)?this.selected=!0:this.selected=!1:this.selected=!1:this.selected=!0});break;case "checkbox":k=String(k);if(q[h].editoptions&&q[h].editoptions.value)if(q[h].editoptions.value.split(":")[0]===k)a("#"+f,"#"+e)[n.p.useProp?"prop":"attr"]({checked:!0,defaultChecked:!0});else a("#"+f,"#"+e)[n.p.useProp?"prop":"attr"]({checked:!1,defaultChecked:!1});else k=k.toLowerCase(),0>k.search(/(false|f|0|no|n|off|undefined)/i)&&""!==k?(a("#"+
f,"#"+e)[n.p.useProp?"prop":"attr"]("checked",!0),a("#"+f,"#"+e)[n.p.useProp?"prop":"attr"]("defaultChecked",!0)):(a("#"+f,"#"+e)[n.p.useProp?"prop":"attr"]("checked",!1),a("#"+f,"#"+e)[n.p.useProp?"prop":"attr"]("defaultChecked",!1));break;case "custom":try{if(q[h].editoptions&&a.isFunction(q[h].editoptions.custom_value))q[h].editoptions.custom_value.call(n,a("#"+f,"#"+e),"set",k);else throw"e1";}catch(p){"e1"===p?a.jgrid.info_dialog(a.jgrid.errors.errcap,"function 'custom_value' "+a.jgrid.edit.msg.nodefined,
a.jgrid.edit.bClose):a.jgrid.info_dialog(a.jgrid.errors.errcap,p.message,a.jgrid.edit.bClose)}}g++}}),0<g&&a("#id_g",u).val(b))}}function g(){a.each(n.p.colModel,function(a,b){b.editoptions&&!0===b.editoptions.NullIfEmpty&&y.hasOwnProperty(b.name)&&""===y[b.name]&&(y[b.name]="null")})}function k(){var c,e=[!0,"",""],f={},k=n.p.prmNames,l,m,p,q,r,x=a(n).triggerHandler("jqGridAddEditBeforeCheckValues",[a("#"+t),G]);x&&"object"===typeof x&&(y=x);a.isFunction(d[n.p.id].beforeCheckValues)&&(x=d[n.p.id].beforeCheckValues.call(n,
y,a("#"+t),G))&&"object"===typeof x&&(y=x);for(p in y)if(y.hasOwnProperty(p)&&(e=a.jgrid.checkValues.call(n,y[p],p),!1===e[0]))break;g();e[0]&&(f=a(n).triggerHandler("jqGridAddEditClickSubmit",[d[n.p.id],y,G]),void 0===f&&a.isFunction(d[n.p.id].onclickSubmit)&&(f=d[n.p.id].onclickSubmit.call(n,d[n.p.id],y,G)||{}),e=a(n).triggerHandler("jqGridAddEditBeforeSubmit",[y,a("#"+t),G]),void 0===e&&(e=[!0,"",""]),e[0]&&a.isFunction(d[n.p.id].beforeSubmit)&&(e=d[n.p.id].beforeSubmit.call(n,y,a("#"+t),G)));
if(e[0]&&!d[n.p.id].processing){d[n.p.id].processing=!0;a("#sData",u+"_2").addClass("ui-state-active");m=k.oper;l=k.id;y[m]="_empty"===a.trim(y[n.p.id+"_id"])?k.addoper:k.editoper;y[m]!==k.addoper?y[l]=y[n.p.id+"_id"]:void 0===y[l]&&(y[l]=y[n.p.id+"_id"]);delete y[n.p.id+"_id"];y=a.extend(y,d[n.p.id].editData,f);if(!0===n.p.treeGrid)for(r in y[m]===k.addoper&&(q=a(n).jqGrid("getGridParam","selrow"),y["adjacency"===n.p.treeGridModel?n.p.treeReader.parent_id_field:"parent_id"]=q),n.p.treeReader)n.p.treeReader.hasOwnProperty(r)&&
(f=n.p.treeReader[r],!y.hasOwnProperty(f)||y[m]===k.addoper&&"parent_id_field"===r||delete y[f]);y[l]=a.jgrid.stripPref(n.p.idPrefix,y[l]);r=a.extend({url:d[n.p.id].url||a(n).jqGrid("getGridParam","editurl"),type:d[n.p.id].mtype,data:a.isFunction(d[n.p.id].serializeEditData)?d[n.p.id].serializeEditData.call(n,y):y,complete:function(f,g){var p;y[l]=n.p.idPrefix+y[l];300<=f.status&&304!==f.status?(e[0]=!1,e[1]=a(n).triggerHandler("jqGridAddEditErrorTextFormat",[f,G]),a.isFunction(d[n.p.id].errorTextFormat)?
e[1]=d[n.p.id].errorTextFormat.call(n,f,G):e[1]=g+" Status: '"+f.statusText+"'. Error code: "+f.status):(e=a(n).triggerHandler("jqGridAddEditAfterSubmit",[f,y,G]),void 0===e&&(e=[!0,"",""]),e[0]&&a.isFunction(d[n.p.id].afterSubmit)&&(e=d[n.p.id].afterSubmit.call(n,f,y,G)));if(!1===e[0])a("#FormError>td",u).html(e[1]),a("#FormError",u).show();else if(n.p.autoencode&&a.each(y,function(b,c){y[b]=a.jgrid.htmlDecode(c)}),y[m]===k.addoper?(e[2]||(e[2]=a.jgrid.randId()),y[l]=e[2],d[n.p.id].reloadAfterSubmit?
a(n).trigger("reloadGrid"):!0===n.p.treeGrid?a(n).jqGrid("addChildNode",e[2],q,y):a(n).jqGrid("addRowData",e[2],y,b.addedrow),d[n.p.id].closeAfterAdd?(!0!==n.p.treeGrid&&a(n).jqGrid("setSelection",e[2]),a.jgrid.hideModal("#"+a.jgrid.jqID(w.themodal),{gb:"#gbox_"+a.jgrid.jqID(s),jqm:b.jqModal,onClose:d[n.p.id].onClose})):d[n.p.id].clearAfterAdd&&h("_empty",n,t)):(d[n.p.id].reloadAfterSubmit?(a(n).trigger("reloadGrid"),d[n.p.id].closeAfterEdit||setTimeout(function(){a(n).jqGrid("setSelection",y[l])},
1E3)):!0===n.p.treeGrid?a(n).jqGrid("setTreeRow",y[l],y):a(n).jqGrid("setRowData",y[l],y),d[n.p.id].closeAfterEdit&&a.jgrid.hideModal("#"+a.jgrid.jqID(w.themodal),{gb:"#gbox_"+a.jgrid.jqID(s),jqm:b.jqModal,onClose:d[n.p.id].onClose})),a.isFunction(d[n.p.id].afterComplete)&&(c=f,setTimeout(function(){a(n).triggerHandler("jqGridAddEditAfterComplete",[c,y,a("#"+t),G]);d[n.p.id].afterComplete.call(n,c,y,a("#"+t),G);c=null},500)),d[n.p.id].checkOnSubmit||d[n.p.id].checkOnUpdate)if(a("#"+t).data("disabled",
!1),"_empty"!==d[n.p.id]._savedData[n.p.id+"_id"])for(p in d[n.p.id]._savedData)d[n.p.id]._savedData.hasOwnProperty(p)&&y[p]&&(d[n.p.id]._savedData[p]=y[p]);d[n.p.id].processing=!1;a("#sData",u+"_2").removeClass("ui-state-active");try{a(":input:visible","#"+t)[0].focus()}catch(r){}}},a.jgrid.ajaxOptions,d[n.p.id].ajaxEditOptions);r.url||d[n.p.id].useDataProxy||(a.isFunction(n.p.dataProxy)?d[n.p.id].useDataProxy=!0:(e[0]=!1,e[1]+=" "+a.jgrid.errors.nourl));e[0]&&(d[n.p.id].useDataProxy?(f=n.p.dataProxy.call(n,
r,"set_"+n.p.id),void 0===f&&(f=[!0,""]),!1===f[0]?(e[0]=!1,e[1]=f[1]||"Error deleting the selected row!"):(r.data.oper===k.addoper&&d[n.p.id].closeAfterAdd&&a.jgrid.hideModal("#"+a.jgrid.jqID(w.themodal),{gb:"#gbox_"+a.jgrid.jqID(s),jqm:b.jqModal,onClose:d[n.p.id].onClose}),r.data.oper===k.editoper&&d[n.p.id].closeAfterEdit&&a.jgrid.hideModal("#"+a.jgrid.jqID(w.themodal),{gb:"#gbox_"+a.jgrid.jqID(s),jqm:b.jqModal,onClose:d[n.p.id].onClose}))):a.ajax(r))}!1===e[0]&&(a("#FormError>td",u).html(e[1]),
a("#FormError",u).show())}function l(a,b){var c=!1,d;for(d in a)if(a.hasOwnProperty(d)&&a[d]!=b[d]){c=!0;break}return c}function m(){var b=!0;a("#FormError",u).hide();d[n.p.id].checkOnUpdate&&(y={},f(),C=l(y,d[n.p.id]._savedData))&&(a("#"+t).data("disabled",!0),a(".confirm","#"+w.themodal).show(),b=!1);return b}function p(){var b;if("_empty"!==e&&void 0!==n.p.savedRow&&0<n.p.savedRow.length&&a.isFunction(a.fn.jqGrid.restoreRow))for(b=0;b<n.p.savedRow.length;b++)if(n.p.savedRow[b].id==e){a(n).jqGrid("restoreRow",
e);break}}function r(b,c){var d=c[1].length-1;0===b?a("#pData",u+"_2").addClass("ui-state-disabled"):void 0!==c[1][b-1]&&a("#"+a.jgrid.jqID(c[1][b-1])).hasClass("ui-state-disabled")?a("#pData",u+"_2").addClass("ui-state-disabled"):a("#pData",u+"_2").removeClass("ui-state-disabled");b===d?a("#nData",u+"_2").addClass("ui-state-disabled"):void 0!==c[1][b+1]&&a("#"+a.jgrid.jqID(c[1][b+1])).hasClass("ui-state-disabled")?a("#nData",u+"_2").addClass("ui-state-disabled"):a("#nData",u+"_2").removeClass("ui-state-disabled")}
function q(){var b=a(n).jqGrid("getDataIDs"),c=a("#id_g",u).val();return[a.inArray(c,b),b]}var n=this;if(n.grid&&e){var s=n.p.id,t="FrmGrid_"+s,v="TblGrid_"+s,u="#"+a.jgrid.jqID(v),w={themodal:"editmod"+s,modalhead:"edithd"+s,modalcontent:"editcnt"+s,scrollelm:t},x=a.isFunction(d[n.p.id].beforeShowForm)?d[n.p.id].beforeShowForm:!1,z=a.isFunction(d[n.p.id].afterShowForm)?d[n.p.id].afterShowForm:!1,A=a.isFunction(d[n.p.id].beforeInitData)?d[n.p.id].beforeInitData:!1,J=a.isFunction(d[n.p.id].onInitializeForm)?
d[n.p.id].onInitializeForm:!1,B=!0,M=1,H=0,y,C,G,t=a.jgrid.jqID(t);"new"===e?(e="_empty",G="add",b.caption=d[n.p.id].addCaption):(b.caption=d[n.p.id].editCaption,G="edit");b.recreateForm||a(n).data("formProp")&&a.extend(d[a(this)[0].p.id],a(n).data("formProp"));var O=!0;b.checkOnUpdate&&b.jqModal&&!b.modal&&(O=!1);var W=isNaN(d[a(this)[0].p.id].dataheight)?d[a(this)[0].p.id].dataheight:d[a(this)[0].p.id].dataheight+"px",B=isNaN(d[a(this)[0].p.id].datawidth)?d[a(this)[0].p.id].datawidth:d[a(this)[0].p.id].datawidth+
"px",W=a("<form name='FormPost' id='"+t+"' class='FormGrid' onSubmit='return false;' style='width:"+B+";overflow:auto;position:relative;height:"+W+";'></form>").data("disabled",!1),Y=a("<table id='"+v+"' class='EditTable' cellspacing='0' cellpadding='0' border='0'><tbody></tbody></table>"),B=a(n).triggerHandler("jqGridAddEditBeforeInitData",[a("#"+t),G]);void 0===B&&(B=!0);B&&A&&(B=A.call(n,a("#"+t),G));if(!1!==B){p();a(n.p.colModel).each(function(){var a=this.formoptions;M=Math.max(M,a?a.colpos||
0:0);H=Math.max(H,a?a.rowpos||0:0)});a(W).append(Y);A=a("<tr id='FormError' style='display:none'><td class='ui-state-error' colspan='"+2*M+"'></td></tr>");A[0].rp=0;a(Y).append(A);A=a("<tr style='display:none' class='tinfo'><td class='topinfo' colspan='"+2*M+"'>"+d[n.p.id].topinfo+"</td></tr>");A[0].rp=0;a(Y).append(A);var B=(A="rtl"===n.p.direction?!0:!1)?"nData":"pData",D=A?"pData":"nData";c(e,n,Y,M);var B="<a id='"+B+"' class='fm-button ui-state-default ui-corner-left'><span class='ui-icon ui-icon-triangle-1-w'></span></a>",
D="<a id='"+D+"' class='fm-button ui-state-default ui-corner-right'><span class='ui-icon ui-icon-triangle-1-e'></span></a>",aa="<a id='sData' class='fm-button ui-state-default ui-corner-all'>"+b.bSubmit+"</a>",S="<a id='cData' class='fm-button ui-state-default ui-corner-all'>"+b.bCancel+"</a>",v="<table border='0' cellspacing='0' cellpadding='0' class='EditTable' id='"+v+"_2'><tbody><tr><td colspan='2'><hr class='ui-widget-content' style='margin:1px'/></td></tr><tr id='Act_Buttons'><td class='navButton'>"+
(A?D+B:B+D)+"</td><td class='EditButton'>"+aa+S+"</td></tr>"+("<tr style='display:none' class='binfo'><td class='bottominfo' colspan='2'>"+d[n.p.id].bottominfo+"</td></tr>"),v=v+"</tbody></table>";if(0<H){var ba=[];a.each(a(Y)[0].rows,function(a,b){ba[a]=b});ba.sort(function(a,b){return a.rp>b.rp?1:a.rp<b.rp?-1:0});a.each(ba,function(b,c){a("tbody",Y).append(c)})}b.gbox="#gbox_"+a.jgrid.jqID(s);var ga=!1;!0===b.closeOnEscape&&(b.closeOnEscape=!1,ga=!0);v=a("<div></div>").append(W).append(v);a.jgrid.createModal(w,
v,d[a(this)[0].p.id],"#gview_"+a.jgrid.jqID(n.p.id),a("#gbox_"+a.jgrid.jqID(n.p.id))[0]);A&&(a("#pData, #nData",u+"_2").css("float","right"),a(".EditButton",u+"_2").css("text-align","left"));d[n.p.id].topinfo&&a(".tinfo",u).show();d[n.p.id].bottominfo&&a(".binfo",u+"_2").show();v=v=null;a("#"+a.jgrid.jqID(w.themodal)).keydown(function(c){var e=c.target;if(!0===a("#"+t).data("disabled"))return!1;if(!0===d[n.p.id].savekey[0]&&c.which===d[n.p.id].savekey[1]&&"TEXTAREA"!==e.tagName)return a("#sData",
u+"_2").trigger("click"),!1;if(27===c.which){if(!m())return!1;ga&&a.jgrid.hideModal("#"+a.jgrid.jqID(w.themodal),{gb:b.gbox,jqm:b.jqModal,onClose:d[n.p.id].onClose});return!1}if(!0===d[n.p.id].navkeys[0]){if("_empty"===a("#id_g",u).val())return!0;if(c.which===d[n.p.id].navkeys[1])return a("#pData",u+"_2").trigger("click"),!1;if(c.which===d[n.p.id].navkeys[2])return a("#nData",u+"_2").trigger("click"),!1}});b.checkOnUpdate&&(a("a.ui-jqdialog-titlebar-close span","#"+a.jgrid.jqID(w.themodal)).removeClass("jqmClose"),
a("a.ui-jqdialog-titlebar-close","#"+a.jgrid.jqID(w.themodal)).unbind("click").click(function(){if(!m())return!1;a.jgrid.hideModal("#"+a.jgrid.jqID(w.themodal),{gb:"#gbox_"+a.jgrid.jqID(s),jqm:b.jqModal,onClose:d[n.p.id].onClose});return!1}));b.saveicon=a.extend([!0,"left","ui-icon-disk"],b.saveicon);b.closeicon=a.extend([!0,"left","ui-icon-close"],b.closeicon);!0===b.saveicon[0]&&a("#sData",u+"_2").addClass("right"===b.saveicon[1]?"fm-button-icon-right":"fm-button-icon-left").append("<span class='ui-icon "+
b.saveicon[2]+"'></span>");!0===b.closeicon[0]&&a("#cData",u+"_2").addClass("right"===b.closeicon[1]?"fm-button-icon-right":"fm-button-icon-left").append("<span class='ui-icon "+b.closeicon[2]+"'></span>");if(d[n.p.id].checkOnSubmit||d[n.p.id].checkOnUpdate)aa="<a id='sNew' class='fm-button ui-state-default ui-corner-all' style='z-index:1002'>"+b.bYes+"</a>",D="<a id='nNew' class='fm-button ui-state-default ui-corner-all' style='z-index:1002'>"+b.bNo+"</a>",S="<a id='cNew' class='fm-button ui-state-default ui-corner-all' style='z-index:1002'>"+
b.bExit+"</a>",v=b.zIndex||999,v++,a("<div class='"+b.overlayClass+" jqgrid-overlay confirm' style='z-index:"+v+";display:none;'>&#160;</div><div class='confirm ui-widget-content ui-jqconfirm' style='z-index:"+(v+1)+"'>"+b.saveData+"<br/><br/>"+aa+D+S+"</div>").insertAfter("#"+t),a("#sNew","#"+a.jgrid.jqID(w.themodal)).click(function(){k();a("#"+t).data("disabled",!1);a(".confirm","#"+a.jgrid.jqID(w.themodal)).hide();return!1}),a("#nNew","#"+a.jgrid.jqID(w.themodal)).click(function(){a(".confirm",
"#"+a.jgrid.jqID(w.themodal)).hide();a("#"+t).data("disabled",!1);setTimeout(function(){a(":input:visible","#"+t)[0].focus()},0);return!1}),a("#cNew","#"+a.jgrid.jqID(w.themodal)).click(function(){a(".confirm","#"+a.jgrid.jqID(w.themodal)).hide();a("#"+t).data("disabled",!1);a.jgrid.hideModal("#"+a.jgrid.jqID(w.themodal),{gb:"#gbox_"+a.jgrid.jqID(s),jqm:b.jqModal,onClose:d[n.p.id].onClose});return!1});a(n).triggerHandler("jqGridAddEditInitializeForm",[a("#"+t),G]);J&&J.call(n,a("#"+t),G);"_empty"!==
e&&d[n.p.id].viewPagerButtons?a("#pData,#nData",u+"_2").show():a("#pData,#nData",u+"_2").hide();a(n).triggerHandler("jqGridAddEditBeforeShowForm",[a("#"+t),G]);x&&x.call(n,a("#"+t),G);a("#"+a.jgrid.jqID(w.themodal)).data("onClose",d[n.p.id].onClose);a.jgrid.viewModal("#"+a.jgrid.jqID(w.themodal),{gbox:"#gbox_"+a.jgrid.jqID(s),jqm:b.jqModal,overlay:b.overlay,modal:b.modal,overlayClass:b.overlayClass,onHide:function(b){a(n).data("formProp",{top:parseFloat(a(b.w).css("top")),left:parseFloat(a(b.w).css("left")),
width:a(b.w).width(),height:a(b.w).height(),dataheight:a("#"+t).height(),datawidth:a("#"+t).width()});b.w.remove();b.o&&b.o.remove()}});O||a("."+a.jgrid.jqID(b.overlayClass)).click(function(){if(!m())return!1;a.jgrid.hideModal("#"+a.jgrid.jqID(w.themodal),{gb:"#gbox_"+a.jgrid.jqID(s),jqm:b.jqModal,onClose:d[n.p.id].onClose});return!1});a(".fm-button","#"+a.jgrid.jqID(w.themodal)).hover(function(){a(this).addClass("ui-state-hover")},function(){a(this).removeClass("ui-state-hover")});a("#sData",u+"_2").click(function(){y=
{};a("#FormError",u).hide();f();"_empty"===y[n.p.id+"_id"]?k():!0===b.checkOnSubmit?(C=l(y,d[n.p.id]._savedData))?(a("#"+t).data("disabled",!0),a(".confirm","#"+a.jgrid.jqID(w.themodal)).show()):k():k();return!1});a("#cData",u+"_2").click(function(){if(!m())return!1;a.jgrid.hideModal("#"+a.jgrid.jqID(w.themodal),{gb:"#gbox_"+a.jgrid.jqID(s),jqm:b.jqModal,onClose:d[n.p.id].onClose});return!1});a("#nData",u+"_2").click(function(){if(!m())return!1;a("#FormError",u).hide();var c=q();c[0]=parseInt(c[0],
10);if(-1!==c[0]&&c[1][c[0]+1]){a(n).triggerHandler("jqGridAddEditClickPgButtons",["next",a("#"+t),c[1][c[0]]]);var d;if(a.isFunction(b.onclickPgButtons)&&(d=b.onclickPgButtons.call(n,"next",a("#"+t),c[1][c[0]]),void 0!==d&&!1===d)||a("#"+a.jgrid.jqID(c[1][c[0]+1])).hasClass("ui-state-disabled"))return!1;h(c[1][c[0]+1],n,t);a(n).jqGrid("setSelection",c[1][c[0]+1]);a(n).triggerHandler("jqGridAddEditAfterClickPgButtons",["next",a("#"+t),c[1][c[0]]]);a.isFunction(b.afterclickPgButtons)&&b.afterclickPgButtons.call(n,
"next",a("#"+t),c[1][c[0]+1]);r(c[0]+1,c)}return!1});a("#pData",u+"_2").click(function(){if(!m())return!1;a("#FormError",u).hide();var c=q();if(-1!==c[0]&&c[1][c[0]-1]){a(n).triggerHandler("jqGridAddEditClickPgButtons",["prev",a("#"+t),c[1][c[0]]]);var d;if(a.isFunction(b.onclickPgButtons)&&(d=b.onclickPgButtons.call(n,"prev",a("#"+t),c[1][c[0]]),void 0!==d&&!1===d)||a("#"+a.jgrid.jqID(c[1][c[0]-1])).hasClass("ui-state-disabled"))return!1;h(c[1][c[0]-1],n,t);a(n).jqGrid("setSelection",c[1][c[0]-1]);
a(n).triggerHandler("jqGridAddEditAfterClickPgButtons",["prev",a("#"+t),c[1][c[0]]]);a.isFunction(b.afterclickPgButtons)&&b.afterclickPgButtons.call(n,"prev",a("#"+t),c[1][c[0]-1]);r(c[0]-1,c)}return!1});a(n).triggerHandler("jqGridAddEditAfterShowForm",[a("#"+t),G]);z&&z.call(n,a("#"+t),G);x=q();r(x[0],x)}}})},viewGridRow:function(e,b){b=a.extend(!0,{top:0,left:0,width:0,datawidth:"auto",height:"auto",dataheight:"auto",modal:!1,overlay:30,drag:!0,resize:!0,jqModal:!0,closeOnEscape:!1,labelswidth:"30%",
closeicon:[],navkeys:[!1,38,40],onClose:null,beforeShowForm:null,beforeInitData:null,viewPagerButtons:!0,recreateForm:!1},a.jgrid.view,b||{});d[a(this)[0].p.id]=b;return this.each(function(){function f(){!0!==d[l.p.id].closeOnEscape&&!0!==d[l.p.id].navkeys[0]||setTimeout(function(){a(".ui-jqdialog-titlebar-close","#"+a.jgrid.jqID(s.modalhead)).focus()},0)}function c(c,d,e,f){var g,k,h,l=0,m,n,p=[],q=!1,r,s="<td class='CaptionTD form-view-label ui-widget-content' width='"+b.labelswidth+"'>&#160;</td><td class='DataTD form-view-data ui-helper-reset ui-widget-content'>&#160;</td>",
w="",u=["integer","number","currency"],t=0,x=0,v,z,A;for(r=1;r<=f;r++)w+=1===r?s:"<td class='CaptionTD form-view-label ui-widget-content'>&#160;</td><td class='DataTD form-view-data ui-widget-content'>&#160;</td>";a(d.p.colModel).each(function(){(k=this.editrules&&!0===this.editrules.edithidden?!1:!0===this.hidden?!0:!1)||"right"!==this.align||(this.formatter&&-1!==a.inArray(this.formatter,u)?t=Math.max(t,parseInt(this.width,10)):x=Math.max(x,parseInt(this.width,10)))});v=0!==t?t:0!==x?x:0;q=a(d).jqGrid("getInd",
c);a(d.p.colModel).each(function(b){g=this.name;z=!1;n=(k=this.editrules&&!0===this.editrules.edithidden?!1:!0===this.hidden?!0:!1)?"style='display:none'":"";A="boolean"!==typeof this.viewable?!0:this.viewable;if("cb"!==g&&"subgrid"!==g&&"rn"!==g&&A){m=!1===q?"":g===d.p.ExpandColumn&&!0===d.p.treeGrid?a("td:eq("+b+")",d.rows[q]).text():a("td:eq("+b+")",d.rows[q]).html();z="right"===this.align&&0!==v?!0:!1;var c=a.extend({},{rowabove:!1,rowcontent:""},this.formoptions||{}),r=parseInt(c.rowpos,10)||
l+1,s=parseInt(2*(parseInt(c.colpos,10)||1),10);if(c.rowabove){var u=a("<tr><td class='contentinfo' colspan='"+2*f+"'>"+c.rowcontent+"</td></tr>");a(e).append(u);u[0].rp=r}h=a(e).find("tr[rowpos="+r+"]");0===h.length&&(h=a("<tr "+n+" rowpos='"+r+"'></tr>").addClass("FormData").attr("id","trv_"+g),a(h).append(w),a(e).append(h),h[0].rp=r);a("td:eq("+(s-2)+")",h[0]).html("<b>"+(void 0===c.label?d.p.colNames[b]:c.label)+"</b>");a("td:eq("+(s-1)+")",h[0]).append("<span>"+m+"</span>").attr("id","v_"+g);
z&&a("td:eq("+(s-1)+") span",h[0]).css({"text-align":"right",width:v+"px"});p[l]=b;l++}});0<l&&(c=a("<tr class='FormData' style='display:none'><td class='CaptionTD'></td><td colspan='"+(2*f-1)+"' class='DataTD'><input class='FormElement' id='id_g' type='text' name='id' value='"+c+"'/></td></tr>"),c[0].rp=l+99,a(e).append(c));return p}function h(b,c){var d,e,f=0,g,k;if(k=a(c).jqGrid("getInd",b,!0))a("td",k).each(function(b){d=c.p.colModel[b].name;e=c.p.colModel[b].editrules&&!0===c.p.colModel[b].editrules.edithidden?
!1:!0===c.p.colModel[b].hidden?!0:!1;"cb"!==d&&"subgrid"!==d&&"rn"!==d&&(g=d===c.p.ExpandColumn&&!0===c.p.treeGrid?a(this).text():a(this).html(),d=a.jgrid.jqID("v_"+d),a("#"+d+" span","#"+r).html(g),e&&a("#"+d,"#"+r).parents("tr:first").hide(),f++)}),0<f&&a("#id_g","#"+r).val(b)}function g(b,c){var d=c[1].length-1;0===b?a("#pData","#"+r+"_2").addClass("ui-state-disabled"):void 0!==c[1][b-1]&&a("#"+a.jgrid.jqID(c[1][b-1])).hasClass("ui-state-disabled")?a("#pData",r+"_2").addClass("ui-state-disabled"):
a("#pData","#"+r+"_2").removeClass("ui-state-disabled");b===d?a("#nData","#"+r+"_2").addClass("ui-state-disabled"):void 0!==c[1][b+1]&&a("#"+a.jgrid.jqID(c[1][b+1])).hasClass("ui-state-disabled")?a("#nData",r+"_2").addClass("ui-state-disabled"):a("#nData","#"+r+"_2").removeClass("ui-state-disabled")}function k(){var b=a(l).jqGrid("getDataIDs"),c=a("#id_g","#"+r).val();return[a.inArray(c,b),b]}var l=this;if(l.grid&&e){var m=l.p.id,p="ViewGrid_"+a.jgrid.jqID(m),r="ViewTbl_"+a.jgrid.jqID(m),q="ViewGrid_"+
m,n="ViewTbl_"+m,s={themodal:"viewmod"+m,modalhead:"viewhd"+m,modalcontent:"viewcnt"+m,scrollelm:p},t=a.isFunction(d[l.p.id].beforeInitData)?d[l.p.id].beforeInitData:!1,v=!0,u=1,w=0;b.recreateForm||a(l).data("viewProp")&&a.extend(d[a(this)[0].p.id],a(l).data("viewProp"));var x=isNaN(d[a(this)[0].p.id].dataheight)?d[a(this)[0].p.id].dataheight:d[a(this)[0].p.id].dataheight+"px",z=isNaN(d[a(this)[0].p.id].datawidth)?d[a(this)[0].p.id].datawidth:d[a(this)[0].p.id].datawidth+"px",q=a("<form name='FormPost' id='"+
q+"' class='FormGrid' style='width:"+z+";overflow:auto;position:relative;height:"+x+";'></form>"),A=a("<table id='"+n+"' class='EditTable' cellspacing='1' cellpadding='2' border='0' style='table-layout:fixed'><tbody></tbody></table>");t&&(v=t.call(l,a("#"+p)),void 0===v&&(v=!0));if(!1!==v){a(l.p.colModel).each(function(){var a=this.formoptions;u=Math.max(u,a?a.colpos||0:0);w=Math.max(w,a?a.rowpos||0:0)});a(q).append(A);c(e,l,A,u);n="rtl"===l.p.direction?!0:!1;t="<a id='"+(n?"nData":"pData")+"' class='fm-button ui-state-default ui-corner-left'><span class='ui-icon ui-icon-triangle-1-w'></span></a>";
v="<a id='"+(n?"pData":"nData")+"' class='fm-button ui-state-default ui-corner-right'><span class='ui-icon ui-icon-triangle-1-e'></span></a>";x="<a id='cData' class='fm-button ui-state-default ui-corner-all'>"+b.bClose+"</a>";if(0<w){var J=[];a.each(a(A)[0].rows,function(a,b){J[a]=b});J.sort(function(a,b){return a.rp>b.rp?1:a.rp<b.rp?-1:0});a.each(J,function(b,c){a("tbody",A).append(c)})}b.gbox="#gbox_"+a.jgrid.jqID(m);q=a("<div></div>").append(q).append("<table border='0' class='EditTable' id='"+
r+"_2'><tbody><tr id='Act_Buttons'><td class='navButton' width='"+b.labelswidth+"'>"+(n?v+t:t+v)+"</td><td class='EditButton'>"+x+"</td></tr></tbody></table>");a.jgrid.createModal(s,q,b,"#gview_"+a.jgrid.jqID(l.p.id),a("#gview_"+a.jgrid.jqID(l.p.id))[0]);n&&(a("#pData, #nData","#"+r+"_2").css("float","right"),a(".EditButton","#"+r+"_2").css("text-align","left"));b.viewPagerButtons||a("#pData, #nData","#"+r+"_2").hide();q=null;a("#"+s.themodal).keydown(function(c){if(27===c.which)return d[l.p.id].closeOnEscape&&
a.jgrid.hideModal("#"+a.jgrid.jqID(s.themodal),{gb:b.gbox,jqm:b.jqModal,onClose:b.onClose}),!1;if(!0===b.navkeys[0]){if(c.which===b.navkeys[1])return a("#pData","#"+r+"_2").trigger("click"),!1;if(c.which===b.navkeys[2])return a("#nData","#"+r+"_2").trigger("click"),!1}});b.closeicon=a.extend([!0,"left","ui-icon-close"],b.closeicon);!0===b.closeicon[0]&&a("#cData","#"+r+"_2").addClass("right"===b.closeicon[1]?"fm-button-icon-right":"fm-button-icon-left").append("<span class='ui-icon "+b.closeicon[2]+
"'></span>");a.isFunction(b.beforeShowForm)&&b.beforeShowForm.call(l,a("#"+p));a.jgrid.viewModal("#"+a.jgrid.jqID(s.themodal),{gbox:"#gbox_"+a.jgrid.jqID(m),jqm:b.jqModal,overlay:b.overlay,modal:b.modal,onHide:function(b){a(l).data("viewProp",{top:parseFloat(a(b.w).css("top")),left:parseFloat(a(b.w).css("left")),width:a(b.w).width(),height:a(b.w).height(),dataheight:a("#"+p).height(),datawidth:a("#"+p).width()});b.w.remove();b.o&&b.o.remove()}});a(".fm-button:not(.ui-state-disabled)","#"+r+"_2").hover(function(){a(this).addClass("ui-state-hover")},
function(){a(this).removeClass("ui-state-hover")});f();a("#cData","#"+r+"_2").click(function(){a.jgrid.hideModal("#"+a.jgrid.jqID(s.themodal),{gb:"#gbox_"+a.jgrid.jqID(m),jqm:b.jqModal,onClose:b.onClose});return!1});a("#nData","#"+r+"_2").click(function(){a("#FormError","#"+r).hide();var c=k();c[0]=parseInt(c[0],10);-1!==c[0]&&c[1][c[0]+1]&&(a.isFunction(b.onclickPgButtons)&&b.onclickPgButtons.call(l,"next",a("#"+p),c[1][c[0]]),h(c[1][c[0]+1],l),a(l).jqGrid("setSelection",c[1][c[0]+1]),a.isFunction(b.afterclickPgButtons)&&
b.afterclickPgButtons.call(l,"next",a("#"+p),c[1][c[0]+1]),g(c[0]+1,c));f();return!1});a("#pData","#"+r+"_2").click(function(){a("#FormError","#"+r).hide();var c=k();-1!==c[0]&&c[1][c[0]-1]&&(a.isFunction(b.onclickPgButtons)&&b.onclickPgButtons.call(l,"prev",a("#"+p),c[1][c[0]]),h(c[1][c[0]-1],l),a(l).jqGrid("setSelection",c[1][c[0]-1]),a.isFunction(b.afterclickPgButtons)&&b.afterclickPgButtons.call(l,"prev",a("#"+p),c[1][c[0]-1]),g(c[0]-1,c));f();return!1});q=k();g(q[0],q)}}})},delGridRow:function(e,
b){b=a.extend(!0,{top:0,left:0,width:240,height:"auto",dataheight:"auto",modal:!1,overlay:30,drag:!0,resize:!0,url:"",mtype:"POST",reloadAfterSubmit:!0,beforeShowForm:null,beforeInitData:null,afterShowForm:null,beforeSubmit:null,onclickSubmit:null,afterSubmit:null,jqModal:!0,closeOnEscape:!1,delData:{},delicon:[],cancelicon:[],onClose:null,ajaxDelOptions:{},processing:!1,serializeDelData:null,useDataProxy:!1},a.jgrid.del,b||{});d[a(this)[0].p.id]=b;return this.each(function(){var f=this;if(f.grid&&
e){var c=a.isFunction(d[f.p.id].beforeShowForm),h=a.isFunction(d[f.p.id].afterShowForm),g=a.isFunction(d[f.p.id].beforeInitData)?d[f.p.id].beforeInitData:!1,k=f.p.id,l={},m=!0,p="DelTbl_"+a.jgrid.jqID(k),r,q,n,s,t="DelTbl_"+k,v={themodal:"delmod"+k,modalhead:"delhd"+k,modalcontent:"delcnt"+k,scrollelm:p};a.isArray(e)&&(e=e.join());if(void 0!==a("#"+a.jgrid.jqID(v.themodal))[0]){g&&(m=g.call(f,a("#"+p)),void 0===m&&(m=!0));if(!1===m)return;a("#DelData>td","#"+p).text(e);a("#DelError","#"+p).hide();
!0===d[f.p.id].processing&&(d[f.p.id].processing=!1,a("#dData","#"+p).removeClass("ui-state-active"));c&&d[f.p.id].beforeShowForm.call(f,a("#"+p));a.jgrid.viewModal("#"+a.jgrid.jqID(v.themodal),{gbox:"#gbox_"+a.jgrid.jqID(k),jqm:d[f.p.id].jqModal,jqM:!1,overlay:d[f.p.id].overlay,modal:d[f.p.id].modal})}else{var u=isNaN(d[f.p.id].dataheight)?d[f.p.id].dataheight:d[f.p.id].dataheight+"px",w=isNaN(b.datawidth)?b.datawidth:b.datawidth+"px",t="<div id='"+t+"' class='formdata' style='width:"+w+";overflow:auto;position:relative;height:"+
u+";'><table class='DelTable'><tbody>",t=t+"<tr id='DelError' style='display:none'><td class='ui-state-error'></td></tr>",t=t+("<tr id='DelData' style='display:none'><td >"+e+"</td></tr>"),t=t+('<tr><td class="delmsg" style="white-space:pre;">'+d[f.p.id].msg+"</td></tr><tr><td >&#160;</td></tr>"),t=t+"</tbody></table></div>",t=t+("<table cellspacing='0' cellpadding='0' border='0' class='EditTable' id='"+p+"_2'><tbody><tr><td><hr class='ui-widget-content' style='margin:1px'/></td></tr><tr><td class='DelButton EditButton'>"+
("<a id='dData' class='fm-button ui-state-default ui-corner-all'>"+b.bSubmit+"</a>")+"&#160;"+("<a id='eData' class='fm-button ui-state-default ui-corner-all'>"+b.bCancel+"</a>")+"</td></tr></tbody></table>");b.gbox="#gbox_"+a.jgrid.jqID(k);a.jgrid.createModal(v,t,b,"#gview_"+a.jgrid.jqID(f.p.id),a("#gview_"+a.jgrid.jqID(f.p.id))[0]);g&&(m=g.call(f,a("#"+p)),void 0===m&&(m=!0));if(!1===m)return;a(".fm-button","#"+p+"_2").hover(function(){a(this).addClass("ui-state-hover")},function(){a(this).removeClass("ui-state-hover")});
b.delicon=a.extend([!0,"left","ui-icon-scissors"],d[f.p.id].delicon);b.cancelicon=a.extend([!0,"left","ui-icon-cancel"],d[f.p.id].cancelicon);!0===b.delicon[0]&&a("#dData","#"+p+"_2").addClass("right"===b.delicon[1]?"fm-button-icon-right":"fm-button-icon-left").append("<span class='ui-icon "+b.delicon[2]+"'></span>");!0===b.cancelicon[0]&&a("#eData","#"+p+"_2").addClass("right"===b.cancelicon[1]?"fm-button-icon-right":"fm-button-icon-left").append("<span class='ui-icon "+b.cancelicon[2]+"'></span>");
a("#dData","#"+p+"_2").click(function(){var c=[!0,""],e,g=a("#DelData>td","#"+p).text();l={};a.isFunction(d[f.p.id].onclickSubmit)&&(l=d[f.p.id].onclickSubmit.call(f,d[f.p.id],g)||{});a.isFunction(d[f.p.id].beforeSubmit)&&(c=d[f.p.id].beforeSubmit.call(f,g));if(c[0]&&!d[f.p.id].processing){d[f.p.id].processing=!0;n=f.p.prmNames;r=a.extend({},d[f.p.id].delData,l);s=n.oper;r[s]=n.deloper;q=n.id;g=String(g).split(",");if(!g.length)return!1;for(e in g)g.hasOwnProperty(e)&&(g[e]=a.jgrid.stripPref(f.p.idPrefix,
g[e]));r[q]=g.join();a(this).addClass("ui-state-active");e=a.extend({url:d[f.p.id].url||a(f).jqGrid("getGridParam","editurl"),type:d[f.p.id].mtype,data:a.isFunction(d[f.p.id].serializeDelData)?d[f.p.id].serializeDelData.call(f,r):r,complete:function(e,h){var l;300<=e.status&&304!==e.status?(c[0]=!1,a.isFunction(d[f.p.id].errorTextFormat)?c[1]=d[f.p.id].errorTextFormat.call(f,e):c[1]=h+" Status: '"+e.statusText+"'. Error code: "+e.status):a.isFunction(d[f.p.id].afterSubmit)&&(c=d[f.p.id].afterSubmit.call(f,
e,r));if(!1===c[0])a("#DelError>td","#"+p).html(c[1]),a("#DelError","#"+p).show();else{if(d[f.p.id].reloadAfterSubmit&&"local"!==f.p.datatype)a(f).trigger("reloadGrid");else{if(!0===f.p.treeGrid)try{a(f).jqGrid("delTreeNode",f.p.idPrefix+g[0])}catch(m){}else for(l=0;l<g.length;l++)a(f).jqGrid("delRowData",f.p.idPrefix+g[l]);f.p.selrow=null;f.p.selarrrow=[]}a.isFunction(d[f.p.id].afterComplete)&&setTimeout(function(){d[f.p.id].afterComplete.call(f,e,g)},500)}d[f.p.id].processing=!1;a("#dData","#"+
p+"_2").removeClass("ui-state-active");c[0]&&a.jgrid.hideModal("#"+a.jgrid.jqID(v.themodal),{gb:"#gbox_"+a.jgrid.jqID(k),jqm:b.jqModal,onClose:d[f.p.id].onClose})}},a.jgrid.ajaxOptions,d[f.p.id].ajaxDelOptions);e.url||d[f.p.id].useDataProxy||(a.isFunction(f.p.dataProxy)?d[f.p.id].useDataProxy=!0:(c[0]=!1,c[1]+=" "+a.jgrid.errors.nourl));c[0]&&(d[f.p.id].useDataProxy?(e=f.p.dataProxy.call(f,e,"del_"+f.p.id),void 0===e&&(e=[!0,""]),!1===e[0]?(c[0]=!1,c[1]=e[1]||"Error deleting the selected row!"):a.jgrid.hideModal("#"+
a.jgrid.jqID(v.themodal),{gb:"#gbox_"+a.jgrid.jqID(k),jqm:b.jqModal,onClose:d[f.p.id].onClose})):a.ajax(e))}!1===c[0]&&(a("#DelError>td","#"+p).html(c[1]),a("#DelError","#"+p).show());return!1});a("#eData","#"+p+"_2").click(function(){a.jgrid.hideModal("#"+a.jgrid.jqID(v.themodal),{gb:"#gbox_"+a.jgrid.jqID(k),jqm:d[f.p.id].jqModal,onClose:d[f.p.id].onClose});return!1});c&&d[f.p.id].beforeShowForm.call(f,a("#"+p));a.jgrid.viewModal("#"+a.jgrid.jqID(v.themodal),{gbox:"#gbox_"+a.jgrid.jqID(k),jqm:d[f.p.id].jqModal,
overlay:d[f.p.id].overlay,modal:d[f.p.id].modal})}h&&d[f.p.id].afterShowForm.call(f,a("#"+p));!0===d[f.p.id].closeOnEscape&&setTimeout(function(){a(".ui-jqdialog-titlebar-close","#"+a.jgrid.jqID(v.modalhead)).focus()},0)}})},navGrid:function(d,b,f,c,h,g,k){b=a.extend({edit:!0,editicon:"ui-icon-pencil",add:!0,addicon:"ui-icon-plus",del:!0,delicon:"ui-icon-trash",search:!0,searchicon:"ui-icon-search",refresh:!0,refreshicon:"ui-icon-refresh",refreshstate:"firstpage",view:!1,viewicon:"ui-icon-document",
position:"left",closeOnEscape:!0,beforeRefresh:null,afterRefresh:null,cloneToTop:!1,alertwidth:200,alertheight:"auto",alerttop:null,alertleft:null,alertzIndex:null},a.jgrid.nav,b||{});return this.each(function(){if(!this.nav){var l={themodal:"alertmod_"+this.p.id,modalhead:"alerthd_"+this.p.id,modalcontent:"alertcnt_"+this.p.id},m=this,p;if(m.grid&&"string"===typeof d){void 0===a("#"+l.themodal)[0]&&(b.alerttop||b.alertleft||(void 0!==window.innerWidth?(b.alertleft=window.innerWidth,b.alerttop=window.innerHeight):
void 0!==document.documentElement&&void 0!==document.documentElement.clientWidth&&0!==document.documentElement.clientWidth?(b.alertleft=document.documentElement.clientWidth,b.alerttop=document.documentElement.clientHeight):(b.alertleft=1024,b.alerttop=768),b.alertleft=b.alertleft/2-parseInt(b.alertwidth,10)/2,b.alerttop=b.alerttop/2-25),a.jgrid.createModal(l,"<div>"+b.alerttext+"</div><span tabindex='0'><span tabindex='-1' id='jqg_alrt'></span></span>",{gbox:"#gbox_"+a.jgrid.jqID(m.p.id),jqModal:!0,
drag:!0,resize:!0,caption:b.alertcap,top:b.alerttop,left:b.alertleft,width:b.alertwidth,height:b.alertheight,closeOnEscape:b.closeOnEscape,zIndex:b.alertzIndex},"#gview_"+a.jgrid.jqID(m.p.id),a("#gbox_"+a.jgrid.jqID(m.p.id))[0],!0));var r=1,q,n=function(){a(this).hasClass("ui-state-disabled")||a(this).addClass("ui-state-hover")},s=function(){a(this).removeClass("ui-state-hover")};b.cloneToTop&&m.p.toppager&&(r=2);for(q=0;q<r;q++){var t=a("<table cellspacing='0' cellpadding='0' border='0' class='ui-pg-table navtable' style='float:left;table-layout:auto;'><tbody><tr></tr></tbody></table>"),
v,u;0===q?(v=d,u=m.p.id,v===m.p.toppager&&(u+="_top",r=1)):(v=m.p.toppager,u=m.p.id+"_top");"rtl"===m.p.direction&&a(t).attr("dir","rtl").css("float","right");b.add&&(c=c||{},p=a("<td class='ui-pg-button ui-corner-all'></td>"),a(p).append("<div class='ui-pg-div'><span class='ui-icon "+b.addicon+"'></span>"+b.addtext+"</div>"),a("tr",t).append(p),a(p,t).attr({title:b.addtitle||"",id:c.id||"add_"+u}).click(function(){a(this).hasClass("ui-state-disabled")||(a.isFunction(b.addfunc)?b.addfunc.call(m):
a(m).jqGrid("editGridRow","new",c));return!1}).hover(n,s),p=null);b.edit&&(p=a("<td class='ui-pg-button ui-corner-all'></td>"),f=f||{},a(p).append("<div class='ui-pg-div'><span class='ui-icon "+b.editicon+"'></span>"+b.edittext+"</div>"),a("tr",t).append(p),a(p,t).attr({title:b.edittitle||"",id:f.id||"edit_"+u}).click(function(){if(!a(this).hasClass("ui-state-disabled")){var c=m.p.selrow;c?a.isFunction(b.editfunc)?b.editfunc.call(m,c):a(m).jqGrid("editGridRow",c,f):(a.jgrid.viewModal("#"+l.themodal,
{gbox:"#gbox_"+a.jgrid.jqID(m.p.id),jqm:!0}),a("#jqg_alrt").focus())}return!1}).hover(n,s),p=null);b.view&&(p=a("<td class='ui-pg-button ui-corner-all'></td>"),k=k||{},a(p).append("<div class='ui-pg-div'><span class='ui-icon "+b.viewicon+"'></span>"+b.viewtext+"</div>"),a("tr",t).append(p),a(p,t).attr({title:b.viewtitle||"",id:k.id||"view_"+u}).click(function(){if(!a(this).hasClass("ui-state-disabled")){var c=m.p.selrow;c?a.isFunction(b.viewfunc)?b.viewfunc.call(m,c):a(m).jqGrid("viewGridRow",c,k):
(a.jgrid.viewModal("#"+l.themodal,{gbox:"#gbox_"+a.jgrid.jqID(m.p.id),jqm:!0}),a("#jqg_alrt").focus())}return!1}).hover(n,s),p=null);b.del&&(p=a("<td class='ui-pg-button ui-corner-all'></td>"),h=h||{},a(p).append("<div class='ui-pg-div'><span class='ui-icon "+b.delicon+"'></span>"+b.deltext+"</div>"),a("tr",t).append(p),a(p,t).attr({title:b.deltitle||"",id:h.id||"del_"+u}).click(function(){if(!a(this).hasClass("ui-state-disabled")){var c;m.p.multiselect?(c=m.p.selarrrow,0===c.length&&(c=null)):c=
m.p.selrow;c?a.isFunction(b.delfunc)?b.delfunc.call(m,c):a(m).jqGrid("delGridRow",c,h):(a.jgrid.viewModal("#"+l.themodal,{gbox:"#gbox_"+a.jgrid.jqID(m.p.id),jqm:!0}),a("#jqg_alrt").focus())}return!1}).hover(n,s),p=null);(b.add||b.edit||b.del||b.view)&&a("tr",t).append("<td class='ui-pg-button ui-state-disabled' style='width:4px;'><span class='ui-separator'></span></td>");b.search&&(p=a("<td class='ui-pg-button ui-corner-all'></td>"),g=g||{},a(p).append("<div class='ui-pg-div'><span class='ui-icon "+
b.searchicon+"'></span>"+b.searchtext+"</div>"),a("tr",t).append(p),a(p,t).attr({title:b.searchtitle||"",id:g.id||"search_"+u}).click(function(){a(this).hasClass("ui-state-disabled")||(a.isFunction(b.searchfunc)?b.searchfunc.call(m,g):a(m).jqGrid("searchGrid",g));return!1}).hover(n,s),g.showOnLoad&&!0===g.showOnLoad&&a(p,t).click(),p=null);b.refresh&&(p=a("<td class='ui-pg-button ui-corner-all'></td>"),a(p).append("<div class='ui-pg-div'><span class='ui-icon "+b.refreshicon+"'></span>"+b.refreshtext+
"</div>"),a("tr",t).append(p),a(p,t).attr({title:b.refreshtitle||"",id:"refresh_"+u}).click(function(){if(!a(this).hasClass("ui-state-disabled")){a.isFunction(b.beforeRefresh)&&b.beforeRefresh.call(m);m.p.search=!1;m.p.resetsearch=!0;try{var c=m.p.id;m.p.postData.filters="";try{a("#fbox_"+a.jgrid.jqID(c)).jqFilter("resetFilter")}catch(d){}a.isFunction(m.clearToolbar)&&m.clearToolbar.call(m,!1)}catch(e){}switch(b.refreshstate){case "firstpage":a(m).trigger("reloadGrid",[{page:1}]);break;case "current":a(m).trigger("reloadGrid",
[{current:!0}])}a.isFunction(b.afterRefresh)&&b.afterRefresh.call(m)}return!1}).hover(n,s),p=null);p=a(".ui-jqgrid").css("font-size")||"11px";a("body").append("<div id='testpg2' class='ui-jqgrid ui-widget ui-widget-content' style='font-size:"+p+";visibility:hidden;' ></div>");p=a(t).clone().appendTo("#testpg2").width();a("#testpg2").remove();a(v+"_"+b.position,v).append(t);m.p._nvtd&&(p>m.p._nvtd[0]&&(a(v+"_"+b.position,v).width(p),m.p._nvtd[0]=p),m.p._nvtd[1]=p);t=p=p=null;this.nav=!0}}}})},navButtonAdd:function(d,
b){b=a.extend({caption:"newButton",title:"",buttonicon:"ui-icon-newwin",onClickButton:null,position:"last",cursor:"pointer"},b||{});return this.each(function(){if(this.grid){"string"===typeof d&&0!==d.indexOf("#")&&(d="#"+a.jgrid.jqID(d));var f=a(".navtable",d)[0],c=this;if(f&&(!b.id||void 0===a("#"+a.jgrid.jqID(b.id),f)[0])){var h=a("<td></td>");"NONE"===b.buttonicon.toString().toUpperCase()?a(h).addClass("ui-pg-button ui-corner-all").append("<div class='ui-pg-div'>"+b.caption+"</div>"):a(h).addClass("ui-pg-button ui-corner-all").append("<div class='ui-pg-div'><span class='ui-icon "+
b.buttonicon+"'></span>"+b.caption+"</div>");b.id&&a(h).attr("id",b.id);"first"===b.position?0===f.rows[0].cells.length?a("tr",f).append(h):a("tr td:eq(0)",f).before(h):a("tr",f).append(h);a(h,f).attr("title",b.title||"").click(function(d){a(this).hasClass("ui-state-disabled")||a.isFunction(b.onClickButton)&&b.onClickButton.call(c,d);return!1}).hover(function(){a(this).hasClass("ui-state-disabled")||a(this).addClass("ui-state-hover")},function(){a(this).removeClass("ui-state-hover")})}}})},navSeparatorAdd:function(d,
b){b=a.extend({sepclass:"ui-separator",sepcontent:"",position:"last"},b||{});return this.each(function(){if(this.grid){"string"===typeof d&&0!==d.indexOf("#")&&(d="#"+a.jgrid.jqID(d));var f=a(".navtable",d)[0];if(f){var c="<td class='ui-pg-button ui-state-disabled' style='width:4px;'><span class='"+b.sepclass+"'></span>"+b.sepcontent+"</td>";"first"===b.position?0===f.rows[0].cells.length?a("tr",f).append(c):a("tr td:eq(0)",f).before(c):a("tr",f).append(c)}}})},GridToForm:function(d,b){return this.each(function(){var f=
this,c;if(f.grid){var h=a(f).jqGrid("getRowData",d);if(h)for(c in h)h.hasOwnProperty(c)&&(a("[name="+a.jgrid.jqID(c)+"]",b).is("input:radio")||a("[name="+a.jgrid.jqID(c)+"]",b).is("input:checkbox")?a("[name="+a.jgrid.jqID(c)+"]",b).each(function(){if(a(this).val()==h[c])a(this)[f.p.useProp?"prop":"attr"]("checked",!0);else a(this)[f.p.useProp?"prop":"attr"]("checked",!1)}):a("[name="+a.jgrid.jqID(c)+"]",b).val(h[c]))}})},FormToGrid:function(d,b,f,c){return this.each(function(){if(this.grid){f||(f=
"set");c||(c="first");var h=a(b).serializeArray(),g={};a.each(h,function(a,b){g[b.name]=b.value});"add"===f?a(this).jqGrid("addRowData",d,g,c):"set"===f&&a(this).jqGrid("setRowData",d,g)}})}})})(jQuery);
(function(a){a.jgrid.inlineEdit=a.jgrid.inlineEdit||{};a.jgrid.extend({editRow:function(d,e,b,f,c,h,g,k,l){var m={},p=a.makeArray(arguments).slice(1);"object"===a.type(p[0])?m=p[0]:(void 0!==e&&(m.keys=e),a.isFunction(b)&&(m.oneditfunc=b),a.isFunction(f)&&(m.successfunc=f),void 0!==c&&(m.url=c),void 0!==h&&(m.extraparam=h),a.isFunction(g)&&(m.aftersavefunc=g),a.isFunction(k)&&(m.errorfunc=k),a.isFunction(l)&&(m.afterrestorefunc=l));m=a.extend(!0,{keys:!1,oneditfunc:null,successfunc:null,url:null,
extraparam:{},aftersavefunc:null,errorfunc:null,afterrestorefunc:null,restoreAfterError:!0,mtype:"POST"},a.jgrid.inlineEdit,m);return this.each(function(){var b=this,c,e,f,g=0,k=null,h={},l,p;b.grid&&(l=a(b).jqGrid("getInd",d,!0),!1!==l&&(f=a.isFunction(m.beforeEditRow)?m.beforeEditRow.call(b,m,d):void 0,void 0===f&&(f=!0),f&&(f=a(l).attr("editable")||"0","0"!==f||a(l).hasClass("not-editable-row")||(p=b.p.colModel,a('td[role="gridcell"]',l).each(function(f){c=p[f].name;var l=!0===b.p.treeGrid&&c===
b.p.ExpandColumn;if(l)e=a("span:first",this).html();else try{e=a.unformat.call(b,this,{rowId:d,colModel:p[f]},f)}catch(m){e=p[f].edittype&&"textarea"===p[f].edittype?a(this).text():a(this).html()}if("cb"!==c&&"subgrid"!==c&&"rn"!==c&&(b.p.autoencode&&(e=a.jgrid.htmlDecode(e)),h[c]=e,!0===p[f].editable)){null===k&&(k=f);l?a("span:first",this).html(""):a(this).html("");var s=a.extend({},p[f].editoptions||{},{id:d+"_"+c,name:c});p[f].edittype||(p[f].edittype="text");if("&nbsp;"===e||"&#160;"===e||1===
e.length&&160===e.charCodeAt(0))e="";var w=a.jgrid.createEl.call(b,p[f].edittype,s,e,!0,a.extend({},a.jgrid.ajaxOptions,b.p.ajaxSelectOptions||{}));a(w).addClass("editable");l?a("span:first",this).append(w):a(this).append(w);a.jgrid.bindEv.call(b,w,s);"select"===p[f].edittype&&void 0!==p[f].editoptions&&!0===p[f].editoptions.multiple&&void 0===p[f].editoptions.dataUrl&&a.jgrid.msie&&a(w).width(a(w).width());g++}}),0<g&&(h.id=d,b.p.savedRow.push(h),a(l).attr("editable","1"),setTimeout(function(){a("td:eq("+
k+") input",l).focus()},0),!0===m.keys&&a(l).bind("keydown",function(c){if(27===c.keyCode){a(b).jqGrid("restoreRow",d,m.afterrestorefunc);if(b.p._inlinenav)try{a(b).jqGrid("showAddEditButtons")}catch(e){}return!1}if(13===c.keyCode){if("TEXTAREA"===c.target.tagName)return!0;if(a(b).jqGrid("saveRow",d,m)&&b.p._inlinenav)try{a(b).jqGrid("showAddEditButtons")}catch(f){}return!1}}),a(b).triggerHandler("jqGridInlineEditRow",[d,m]),a.isFunction(m.oneditfunc)&&m.oneditfunc.call(b,d))))))})},saveRow:function(d,
e,b,f,c,h,g){var k=a.makeArray(arguments).slice(1),l={};"object"===a.type(k[0])?l=k[0]:(a.isFunction(e)&&(l.successfunc=e),void 0!==b&&(l.url=b),void 0!==f&&(l.extraparam=f),a.isFunction(c)&&(l.aftersavefunc=c),a.isFunction(h)&&(l.errorfunc=h),a.isFunction(g)&&(l.afterrestorefunc=g));var l=a.extend(!0,{successfunc:null,url:null,extraparam:{},aftersavefunc:null,errorfunc:null,afterrestorefunc:null,restoreAfterError:!0,mtype:"POST"},a.jgrid.inlineEdit,l),m=!1,p=this[0],r,q={},n={},s={},t,v,u;if(!p.grid)return m;
u=a(p).jqGrid("getInd",d,!0);if(!1===u)return m;k=a.isFunction(l.beforeSaveRow)?l.beforeSaveRow.call(p,l,d):void 0;void 0===k&&(k=!0);if(k){k=a(u).attr("editable");l.url=l.url||p.p.editurl;if("1"===k){var w;a('td[role="gridcell"]',u).each(function(b){w=p.p.colModel[b];r=w.name;if("cb"!==r&&"subgrid"!==r&&!0===w.editable&&"rn"!==r&&!a(this).hasClass("not-editable-cell")){switch(w.edittype){case "checkbox":var c=["Yes","No"];w.editoptions&&(c=w.editoptions.value.split(":"));q[r]=a("input",this).is(":checked")?
c[0]:c[1];break;case "text":case "password":case "textarea":case "button":q[r]=a("input, textarea",this).val();break;case "select":if(w.editoptions.multiple){var c=a("select",this),d=[];q[r]=a(c).val();q[r]=q[r]?q[r].join(","):"";a("select option:selected",this).each(function(b,c){d[b]=a(c).text()});n[r]=d.join(",")}else q[r]=a("select option:selected",this).val(),n[r]=a("select option:selected",this).text();w.formatter&&"select"===w.formatter&&(n={});break;case "custom":try{if(w.editoptions&&a.isFunction(w.editoptions.custom_value)){if(q[r]=
w.editoptions.custom_value.call(p,a(".customelement",this),"get"),void 0===q[r])throw"e2";}else throw"e1";}catch(e){"e1"===e&&a.jgrid.info_dialog(a.jgrid.errors.errcap,"function 'custom_value' "+a.jgrid.edit.msg.nodefined,a.jgrid.edit.bClose),"e2"===e?a.jgrid.info_dialog(a.jgrid.errors.errcap,"function 'custom_value' "+a.jgrid.edit.msg.novalue,a.jgrid.edit.bClose):a.jgrid.info_dialog(a.jgrid.errors.errcap,e.message,a.jgrid.edit.bClose)}}v=a.jgrid.checkValues.call(p,q[r],b);if(!1===v[0])return!1;p.p.autoencode&&
(q[r]=a.jgrid.htmlEncode(q[r]));"clientArray"!==l.url&&w.editoptions&&!0===w.editoptions.NullIfEmpty&&""===q[r]&&(s[r]="null")}});if(!1===v[0]){try{var x=a(p).jqGrid("getGridRowById",d),z=a.jgrid.findPos(x);a.jgrid.info_dialog(a.jgrid.errors.errcap,v[1],a.jgrid.edit.bClose,{left:z[0],top:z[1]+a(x).outerHeight()})}catch(A){alert(v[1])}return m}k=p.p.prmNames;x=d;z=!1===p.p.keyIndex?k.id:p.p.colModel[p.p.keyIndex+(!0===p.p.rownumbers?1:0)+(!0===p.p.multiselect?1:0)+(!0===p.p.subGrid?1:0)].name;q&&(q[k.oper]=
k.editoper,void 0===q[z]||""===q[z]?q[z]=d:u.id!==p.p.idPrefix+q[z]&&(k=a.jgrid.stripPref(p.p.idPrefix,d),void 0!==p.p._index[k]&&(p.p._index[q[z]]=p.p._index[k],delete p.p._index[k]),d=p.p.idPrefix+q[z],a(u).attr("id",d),p.p.selrow===x&&(p.p.selrow=d),a.isArray(p.p.selarrrow)&&(k=a.inArray(x,p.p.selarrrow),0<=k&&(p.p.selarrrow[k]=d)),p.p.multiselect&&(k="jqg_"+p.p.id+"_"+d,a("input.cbox",u).attr("id",k).attr("name",k))),void 0===p.p.inlineData&&(p.p.inlineData={}),q=a.extend({},q,p.p.inlineData,
l.extraparam));if("clientArray"===l.url){q=a.extend({},q,n);p.p.autoencode&&a.each(q,function(b,c){q[b]=a.jgrid.htmlDecode(c)});k=a(p).jqGrid("setRowData",d,q);a(u).attr("editable","0");for(z=0;z<p.p.savedRow.length;z++)if(String(p.p.savedRow[z].id)===String(x)){t=z;break}0<=t&&p.p.savedRow.splice(t,1);a(p).triggerHandler("jqGridInlineAfterSaveRow",[d,k,q,l]);a.isFunction(l.aftersavefunc)&&l.aftersavefunc.call(p,d,k,l);m=!0;a(u).removeClass("jqgrid-new-row").unbind("keydown")}else a("#lui_"+a.jgrid.jqID(p.p.id)).show(),
s=a.extend({},q,s),s[z]=a.jgrid.stripPref(p.p.idPrefix,s[z]),a.ajax(a.extend({url:l.url,data:a.isFunction(p.p.serializeRowData)?p.p.serializeRowData.call(p,s):s,type:l.mtype,async:!1,complete:function(b,c){a("#lui_"+a.jgrid.jqID(p.p.id)).hide();if("success"===c){var e=!0,f;f=a(p).triggerHandler("jqGridInlineSuccessSaveRow",[b,d,l]);a.isArray(f)||(f=[!0,q]);f[0]&&a.isFunction(l.successfunc)&&(f=l.successfunc.call(p,b));a.isArray(f)?(e=f[0],q=f[1]||q):e=f;if(!0===e){p.p.autoencode&&a.each(q,function(b,
c){q[b]=a.jgrid.htmlDecode(c)});q=a.extend({},q,n);a(p).jqGrid("setRowData",d,q);a(u).attr("editable","0");for(e=0;e<p.p.savedRow.length;e++)if(String(p.p.savedRow[e].id)===String(d)){t=e;break}0<=t&&p.p.savedRow.splice(t,1);a(p).triggerHandler("jqGridInlineAfterSaveRow",[d,b,q,l]);a.isFunction(l.aftersavefunc)&&l.aftersavefunc.call(p,d,b);m=!0;a(u).removeClass("jqgrid-new-row").unbind("keydown")}else a(p).triggerHandler("jqGridInlineErrorSaveRow",[d,b,c,null,l]),a.isFunction(l.errorfunc)&&l.errorfunc.call(p,
d,b,c,null),!0===l.restoreAfterError&&a(p).jqGrid("restoreRow",d,l.afterrestorefunc)}},error:function(b,c,e){a("#lui_"+a.jgrid.jqID(p.p.id)).hide();a(p).triggerHandler("jqGridInlineErrorSaveRow",[d,b,c,e,l]);if(a.isFunction(l.errorfunc))l.errorfunc.call(p,d,b,c,e);else{b=b.responseText||b.statusText;try{a.jgrid.info_dialog(a.jgrid.errors.errcap,'<div class="ui-state-error">'+b+"</div>",a.jgrid.edit.bClose,{buttonalign:"right"})}catch(f){alert(b)}}!0===l.restoreAfterError&&a(p).jqGrid("restoreRow",
d,l.afterrestorefunc)}},a.jgrid.ajaxOptions,p.p.ajaxRowOptions||{}))}return m}},restoreRow:function(d,e){var b=a.makeArray(arguments).slice(1),f={};"object"===a.type(b[0])?f=b[0]:a.isFunction(e)&&(f.afterrestorefunc=e);f=a.extend(!0,{},a.jgrid.inlineEdit,f);return this.each(function(){var b=this,e=-1,g,k={},l;if(b.grid&&(g=a(b).jqGrid("getInd",d,!0),!1!==g&&(l=a.isFunction(f.beforeCancelRow)?f.beforeCancelRow.call(b,f,sr):void 0,void 0===l&&(l=!0),l))){for(l=0;l<b.p.savedRow.length;l++)if(String(b.p.savedRow[l].id)===
String(d)){e=l;break}if(0<=e){if(a.isFunction(a.fn.datepicker))try{a("input.hasDatepicker","#"+a.jgrid.jqID(g.id)).datepicker("hide")}catch(m){}a.each(b.p.colModel,function(){!0===this.editable&&b.p.savedRow[e].hasOwnProperty(this.name)&&(k[this.name]=b.p.savedRow[e][this.name])});a(b).jqGrid("setRowData",d,k);a(g).attr("editable","0").unbind("keydown");b.p.savedRow.splice(e,1);a("#"+a.jgrid.jqID(d),"#"+a.jgrid.jqID(b.p.id)).hasClass("jqgrid-new-row")&&setTimeout(function(){a(b).jqGrid("delRowData",
d);a(b).jqGrid("showAddEditButtons")},0)}a(b).triggerHandler("jqGridInlineAfterRestoreRow",[d]);a.isFunction(f.afterrestorefunc)&&f.afterrestorefunc.call(b,d)}})},addRow:function(d){d=a.extend(!0,{rowID:null,initdata:{},position:"first",useDefValues:!0,useFormatter:!1,addRowParams:{extraparam:{}}},d||{});return this.each(function(){if(this.grid){var e=this,b=a.isFunction(d.beforeAddRow)?d.beforeAddRow.call(e,d.addRowParams):void 0;void 0===b&&(b=!0);b&&(d.rowID=a.isFunction(d.rowID)?d.rowID.call(e,
d):null!=d.rowID?d.rowID:a.jgrid.randId(),!0===d.useDefValues&&a(e.p.colModel).each(function(){if(this.editoptions&&this.editoptions.defaultValue){var b=this.editoptions.defaultValue,b=a.isFunction(b)?b.call(e):b;d.initdata[this.name]=b}}),a(e).jqGrid("addRowData",d.rowID,d.initdata,d.position),d.rowID=e.p.idPrefix+d.rowID,a("#"+a.jgrid.jqID(d.rowID),"#"+a.jgrid.jqID(e.p.id)).addClass("jqgrid-new-row"),d.useFormatter?a("#"+a.jgrid.jqID(d.rowID)+" .ui-inline-edit","#"+a.jgrid.jqID(e.p.id)).click():
(b=e.p.prmNames,d.addRowParams.extraparam[b.oper]=b.addoper,a(e).jqGrid("editRow",d.rowID,d.addRowParams),a(e).jqGrid("setSelection",d.rowID)))}})},inlineNav:function(d,e){e=a.extend(!0,{edit:!0,editicon:"ui-icon-pencil",add:!0,addicon:"ui-icon-plus",save:!0,saveicon:"ui-icon-disk",cancel:!0,cancelicon:"ui-icon-cancel",addParams:{addRowParams:{extraparam:{}}},editParams:{},restoreAfterSelect:!0},a.jgrid.nav,e||{});return this.each(function(){if(this.grid){var b=this,f,c=a.jgrid.jqID(b.p.id);b.p._inlinenav=
!0;if(!0===e.addParams.useFormatter){var h=b.p.colModel,g;for(g=0;g<h.length;g++)if(h[g].formatter&&"actions"===h[g].formatter){h[g].formatoptions&&(h=a.extend({keys:!1,onEdit:null,onSuccess:null,afterSave:null,onError:null,afterRestore:null,extraparam:{},url:null},h[g].formatoptions),e.addParams.addRowParams={keys:h.keys,oneditfunc:h.onEdit,successfunc:h.onSuccess,url:h.url,extraparam:h.extraparam,aftersavefunc:h.afterSave,errorfunc:h.onError,afterrestorefunc:h.afterRestore});break}}e.add&&a(b).jqGrid("navButtonAdd",
d,{caption:e.addtext,title:e.addtitle,buttonicon:e.addicon,id:b.p.id+"_iladd",onClickButton:function(){a(b).jqGrid("addRow",e.addParams);e.addParams.useFormatter||(a("#"+c+"_ilsave").removeClass("ui-state-disabled"),a("#"+c+"_ilcancel").removeClass("ui-state-disabled"),a("#"+c+"_iladd").addClass("ui-state-disabled"),a("#"+c+"_iledit").addClass("ui-state-disabled"))}});e.edit&&a(b).jqGrid("navButtonAdd",d,{caption:e.edittext,title:e.edittitle,buttonicon:e.editicon,id:b.p.id+"_iledit",onClickButton:function(){var d=
a(b).jqGrid("getGridParam","selrow");d?(a(b).jqGrid("editRow",d,e.editParams),a("#"+c+"_ilsave").removeClass("ui-state-disabled"),a("#"+c+"_ilcancel").removeClass("ui-state-disabled"),a("#"+c+"_iladd").addClass("ui-state-disabled"),a("#"+c+"_iledit").addClass("ui-state-disabled")):(a.jgrid.viewModal("#alertmod",{gbox:"#gbox_"+c,jqm:!0}),a("#jqg_alrt").focus())}});e.save&&(a(b).jqGrid("navButtonAdd",d,{caption:e.savetext||"",title:e.savetitle||"Save row",buttonicon:e.saveicon,id:b.p.id+"_ilsave",onClickButton:function(){var d=
b.p.savedRow[0].id;if(d){var f=b.p.prmNames,g=f.oper,h=e.editParams;a("#"+a.jgrid.jqID(d),"#"+c).hasClass("jqgrid-new-row")?(e.addParams.addRowParams.extraparam[g]=f.addoper,h=e.addParams.addRowParams):(e.editParams.extraparam||(e.editParams.extraparam={}),e.editParams.extraparam[g]=f.editoper);a(b).jqGrid("saveRow",d,h)&&a(b).jqGrid("showAddEditButtons")}else a.jgrid.viewModal("#alertmod",{gbox:"#gbox_"+c,jqm:!0}),a("#jqg_alrt").focus()}}),a("#"+c+"_ilsave").addClass("ui-state-disabled"));e.cancel&&
(a(b).jqGrid("navButtonAdd",d,{caption:e.canceltext||"",title:e.canceltitle||"Cancel row editing",buttonicon:e.cancelicon,id:b.p.id+"_ilcancel",onClickButton:function(){var d=b.p.savedRow[0].id,f=e.editParams;d?(a("#"+a.jgrid.jqID(d),"#"+c).hasClass("jqgrid-new-row")&&(f=e.addParams.addRowParams),a(b).jqGrid("restoreRow",d,f),a(b).jqGrid("showAddEditButtons")):(a.jgrid.viewModal("#alertmod",{gbox:"#gbox_"+c,jqm:!0}),a("#jqg_alrt").focus())}}),a("#"+c+"_ilcancel").addClass("ui-state-disabled"));!0===
e.restoreAfterSelect&&(f=a.isFunction(b.p.beforeSelectRow)?b.p.beforeSelectRow:!1,b.p.beforeSelectRow=function(c,d){var g=!0;0<b.p.savedRow.length&&!0===b.p._inlinenav&&c!==b.p.selrow&&null!==b.p.selrow&&(b.p.selrow===e.addParams.rowID?a(b).jqGrid("delRowData",b.p.selrow):a(b).jqGrid("restoreRow",b.p.selrow,e.editParams),a(b).jqGrid("showAddEditButtons"));f&&(g=f.call(b,c,d));return g})}})},showAddEditButtons:function(){return this.each(function(){if(this.grid){var d=a.jgrid.jqID(this.p.id);a("#"+
d+"_ilsave").addClass("ui-state-disabled");a("#"+d+"_ilcancel").addClass("ui-state-disabled");a("#"+d+"_iladd").removeClass("ui-state-disabled");a("#"+d+"_iledit").removeClass("ui-state-disabled")}})}})})(jQuery);
(function(a){a.jgrid.extend({editCell:function(d,e,b){return this.each(function(){var f=this,c,h,g,k;if(f.grid&&!0===f.p.cellEdit){e=parseInt(e,10);f.p.selrow=f.rows[d].id;f.p.knv||a(f).jqGrid("GridNav");if(0<f.p.savedRow.length){if(!0===b&&d==f.p.iRow&&e==f.p.iCol)return;a(f).jqGrid("saveCell",f.p.savedRow[0].id,f.p.savedRow[0].ic)}else window.setTimeout(function(){a("#"+a.jgrid.jqID(f.p.knv)).attr("tabindex","-1").focus()},0);k=f.p.colModel[e];c=k.name;if("subgrid"!==c&&"cb"!==c&&"rn"!==c){g=a("td:eq("+
e+")",f.rows[d]);if(!0!==k.editable||!0!==b||g.hasClass("not-editable-cell"))0<=parseInt(f.p.iCol,10)&&0<=parseInt(f.p.iRow,10)&&(a("td:eq("+f.p.iCol+")",f.rows[f.p.iRow]).removeClass("edit-cell ui-state-highlight"),a(f.rows[f.p.iRow]).removeClass("selected-row ui-state-hover")),g.addClass("edit-cell ui-state-highlight"),a(f.rows[d]).addClass("selected-row ui-state-hover"),h=g.html().replace(/\&#160\;/ig,""),a(f).triggerHandler("jqGridSelectCell",[f.rows[d].id,c,h,d,e]),a.isFunction(f.p.onSelectCell)&&
f.p.onSelectCell.call(f,f.rows[d].id,c,h,d,e);else{0<=parseInt(f.p.iCol,10)&&0<=parseInt(f.p.iRow,10)&&(a("td:eq("+f.p.iCol+")",f.rows[f.p.iRow]).removeClass("edit-cell ui-state-highlight"),a(f.rows[f.p.iRow]).removeClass("selected-row ui-state-hover"));a(g).addClass("edit-cell ui-state-highlight");a(f.rows[d]).addClass("selected-row ui-state-hover");try{h=a.unformat.call(f,g,{rowId:f.rows[d].id,colModel:k},e)}catch(l){h=k.edittype&&"textarea"===k.edittype?a(g).text():a(g).html()}f.p.autoencode&&
(h=a.jgrid.htmlDecode(h));k.edittype||(k.edittype="text");f.p.savedRow.push({id:d,ic:e,name:c,v:h});if("&nbsp;"===h||"&#160;"===h||1===h.length&&160===h.charCodeAt(0))h="";if(a.isFunction(f.p.formatCell)){var m=f.p.formatCell.call(f,f.rows[d].id,c,h,d,e);void 0!==m&&(h=m)}a(f).triggerHandler("jqGridBeforeEditCell",[f.rows[d].id,c,h,d,e]);a.isFunction(f.p.beforeEditCell)&&f.p.beforeEditCell.call(f,f.rows[d].id,c,h,d,e);var m=a.extend({},k.editoptions||{},{id:d+"_"+c,name:c}),p=a.jgrid.createEl.call(f,
k.edittype,m,h,!0,a.extend({},a.jgrid.ajaxOptions,f.p.ajaxSelectOptions||{}));a(g).html("").append(p).attr("tabindex","0");a.jgrid.bindEv.call(f,p,m);window.setTimeout(function(){a(p).focus()},0);a("input, select, textarea",g).bind("keydown",function(b){27===b.keyCode&&(0<a("input.hasDatepicker",g).length?a(".ui-datepicker").is(":hidden")?a(f).jqGrid("restoreCell",d,e):a("input.hasDatepicker",g).datepicker("hide"):a(f).jqGrid("restoreCell",d,e));if(13===b.keyCode)return a(f).jqGrid("saveCell",d,e),
!1;if(9===b.keyCode){if(f.grid.hDiv.loading)return!1;b.shiftKey?a(f).jqGrid("prevCell",d,e):a(f).jqGrid("nextCell",d,e)}b.stopPropagation()});a(f).triggerHandler("jqGridAfterEditCell",[f.rows[d].id,c,h,d,e]);a.isFunction(f.p.afterEditCell)&&f.p.afterEditCell.call(f,f.rows[d].id,c,h,d,e)}f.p.iCol=e;f.p.iRow=d}}})},saveCell:function(d,e){return this.each(function(){var b=this,f;if(b.grid&&!0===b.p.cellEdit){f=1<=b.p.savedRow.length?0:null;if(null!==f){var c=a("td:eq("+e+")",b.rows[d]),h,g,k=b.p.colModel[e],
l=k.name,m=a.jgrid.jqID(l);switch(k.edittype){case "select":if(k.editoptions.multiple){var m=a("#"+d+"_"+m,b.rows[d]),p=[];(h=a(m).val())?h.join(","):h="";a("option:selected",m).each(function(b,c){p[b]=a(c).text()});g=p.join(",")}else h=a("#"+d+"_"+m+" option:selected",b.rows[d]).val(),g=a("#"+d+"_"+m+" option:selected",b.rows[d]).text();k.formatter&&(g=h);break;case "checkbox":var r=["Yes","No"];k.editoptions&&(r=k.editoptions.value.split(":"));g=h=a("#"+d+"_"+m,b.rows[d]).is(":checked")?r[0]:r[1];
break;case "password":case "text":case "textarea":case "button":g=h=a("#"+d+"_"+m,b.rows[d]).val();break;case "custom":try{if(k.editoptions&&a.isFunction(k.editoptions.custom_value)){h=k.editoptions.custom_value.call(b,a(".customelement",c),"get");if(void 0===h)throw"e2";g=h}else throw"e1";}catch(q){"e1"===q&&a.jgrid.info_dialog(a.jgrid.errors.errcap,"function 'custom_value' "+a.jgrid.edit.msg.nodefined,a.jgrid.edit.bClose),"e2"===q?a.jgrid.info_dialog(a.jgrid.errors.errcap,"function 'custom_value' "+
a.jgrid.edit.msg.novalue,a.jgrid.edit.bClose):a.jgrid.info_dialog(a.jgrid.errors.errcap,q.message,a.jgrid.edit.bClose)}}if(g!==b.p.savedRow[f].v){if(f=a(b).triggerHandler("jqGridBeforeSaveCell",[b.rows[d].id,l,h,d,e]))g=h=f;a.isFunction(b.p.beforeSaveCell)&&(f=b.p.beforeSaveCell.call(b,b.rows[d].id,l,h,d,e))&&(g=h=f);var n=a.jgrid.checkValues.call(b,h,e);if(!0===n[0]){f=a(b).triggerHandler("jqGridBeforeSubmitCell",[b.rows[d].id,l,h,d,e])||{};a.isFunction(b.p.beforeSubmitCell)&&((f=b.p.beforeSubmitCell.call(b,
b.rows[d].id,l,h,d,e))||(f={}));0<a("input.hasDatepicker",c).length&&a("input.hasDatepicker",c).datepicker("hide");if("remote"===b.p.cellsubmit)if(b.p.cellurl){var s={};b.p.autoencode&&(h=a.jgrid.htmlEncode(h));s[l]=h;r=b.p.prmNames;k=r.id;m=r.oper;s[k]=a.jgrid.stripPref(b.p.idPrefix,b.rows[d].id);s[m]=r.editoper;s=a.extend(f,s);a("#lui_"+a.jgrid.jqID(b.p.id)).show();b.grid.hDiv.loading=!0;a.ajax(a.extend({url:b.p.cellurl,data:a.isFunction(b.p.serializeCellData)?b.p.serializeCellData.call(b,s):s,
type:"POST",complete:function(f,k){a("#lui_"+b.p.id).hide();b.grid.hDiv.loading=!1;if("success"===k){var m=a(b).triggerHandler("jqGridAfterSubmitCell",[b,f,s.id,l,h,d,e])||[!0,""];!0===m[0]&&a.isFunction(b.p.afterSubmitCell)&&(m=b.p.afterSubmitCell.call(b,f,s.id,l,h,d,e));!0===m[0]?(a(c).empty(),a(b).jqGrid("setCell",b.rows[d].id,e,g,!1,!1,!0),a(c).addClass("dirty-cell"),a(b.rows[d]).addClass("edited"),a(b).triggerHandler("jqGridAfterSaveCell",[b.rows[d].id,l,h,d,e]),a.isFunction(b.p.afterSaveCell)&&
b.p.afterSaveCell.call(b,b.rows[d].id,l,h,d,e),b.p.savedRow.splice(0,1)):(a.jgrid.info_dialog(a.jgrid.errors.errcap,m[1],a.jgrid.edit.bClose),a(b).jqGrid("restoreCell",d,e))}},error:function(c,f,g){a("#lui_"+a.jgrid.jqID(b.p.id)).hide();b.grid.hDiv.loading=!1;a(b).triggerHandler("jqGridErrorCell",[c,f,g]);a.isFunction(b.p.errorCell)?b.p.errorCell.call(b,c,f,g):a.jgrid.info_dialog(a.jgrid.errors.errcap,c.status+" : "+c.statusText+"<br/>"+f,a.jgrid.edit.bClose);a(b).jqGrid("restoreCell",d,e)}},a.jgrid.ajaxOptions,
b.p.ajaxCellOptions||{}))}else try{a.jgrid.info_dialog(a.jgrid.errors.errcap,a.jgrid.errors.nourl,a.jgrid.edit.bClose),a(b).jqGrid("restoreCell",d,e)}catch(t){}"clientArray"===b.p.cellsubmit&&(a(c).empty(),a(b).jqGrid("setCell",b.rows[d].id,e,g,!1,!1,!0),a(c).addClass("dirty-cell"),a(b.rows[d]).addClass("edited"),a(b).triggerHandler("jqGridAfterSaveCell",[b.rows[d].id,l,h,d,e]),a.isFunction(b.p.afterSaveCell)&&b.p.afterSaveCell.call(b,b.rows[d].id,l,h,d,e),b.p.savedRow.splice(0,1))}else try{window.setTimeout(function(){a.jgrid.info_dialog(a.jgrid.errors.errcap,
h+" "+n[1],a.jgrid.edit.bClose)},100),a(b).jqGrid("restoreCell",d,e)}catch(v){}}else a(b).jqGrid("restoreCell",d,e)}window.setTimeout(function(){a("#"+a.jgrid.jqID(b.p.knv)).attr("tabindex","-1").focus()},0)}})},restoreCell:function(d,e){return this.each(function(){var b=this,f;if(b.grid&&!0===b.p.cellEdit){f=1<=b.p.savedRow.length?0:null;if(null!==f){var c=a("td:eq("+e+")",b.rows[d]);if(a.isFunction(a.fn.datepicker))try{a("input.hasDatepicker",c).datepicker("hide")}catch(h){}a(c).empty().attr("tabindex",
"-1");a(b).jqGrid("setCell",b.rows[d].id,e,b.p.savedRow[f].v,!1,!1,!0);a(b).triggerHandler("jqGridAfterRestoreCell",[b.rows[d].id,b.p.savedRow[f].v,d,e]);a.isFunction(b.p.afterRestoreCell)&&b.p.afterRestoreCell.call(b,b.rows[d].id,b.p.savedRow[f].v,d,e);b.p.savedRow.splice(0,1)}window.setTimeout(function(){a("#"+b.p.knv).attr("tabindex","-1").focus()},0)}})},nextCell:function(d,e){return this.each(function(){var b=!1,f;if(this.grid&&!0===this.p.cellEdit){for(f=e+1;f<this.p.colModel.length;f++)if(!0===
this.p.colModel[f].editable){b=f;break}!1!==b?a(this).jqGrid("editCell",d,b,!0):0<this.p.savedRow.length&&a(this).jqGrid("saveCell",d,e)}})},prevCell:function(d,e){return this.each(function(){var b=!1,f;if(this.grid&&!0===this.p.cellEdit){for(f=e-1;0<=f;f--)if(!0===this.p.colModel[f].editable){b=f;break}!1!==b?a(this).jqGrid("editCell",d,b,!0):0<this.p.savedRow.length&&a(this).jqGrid("saveCell",d,e)}})},GridNav:function(){return this.each(function(){function d(c,d,e){if("v"===e.substr(0,1)){var f=
a(b.grid.bDiv)[0].clientHeight,h=a(b.grid.bDiv)[0].scrollTop,r=b.rows[c].offsetTop+b.rows[c].clientHeight,q=b.rows[c].offsetTop;"vd"===e&&r>=f&&(a(b.grid.bDiv)[0].scrollTop=a(b.grid.bDiv)[0].scrollTop+b.rows[c].clientHeight);"vu"===e&&q<h&&(a(b.grid.bDiv)[0].scrollTop=a(b.grid.bDiv)[0].scrollTop-b.rows[c].clientHeight)}"h"===e&&(e=a(b.grid.bDiv)[0].clientWidth,f=a(b.grid.bDiv)[0].scrollLeft,h=b.rows[c].cells[d].offsetLeft,b.rows[c].cells[d].offsetLeft+b.rows[c].cells[d].clientWidth>=e+parseInt(f,
10)?a(b.grid.bDiv)[0].scrollLeft=a(b.grid.bDiv)[0].scrollLeft+b.rows[c].cells[d].clientWidth:h<f&&(a(b.grid.bDiv)[0].scrollLeft=a(b.grid.bDiv)[0].scrollLeft-b.rows[c].cells[d].clientWidth))}function e(a,c){var d,e;if("lft"===c)for(d=a+1,e=a;0<=e;e--)if(!0!==b.p.colModel[e].hidden){d=e;break}if("rgt"===c)for(d=a-1,e=a;e<b.p.colModel.length;e++)if(!0!==b.p.colModel[e].hidden){d=e;break}return d}var b=this;if(b.grid&&!0===b.p.cellEdit){b.p.knv=b.p.id+"_kn";var f=a("<div style='position:fixed;top:0px;width:1px;height:1px;' tabindex='0'><div tabindex='-1' style='width:1px;height:1px;' id='"+
b.p.knv+"'></div></div>"),c,h;a(f).insertBefore(b.grid.cDiv);a("#"+b.p.knv).focus().keydown(function(f){h=f.keyCode;"rtl"===b.p.direction&&(37===h?h=39:39===h&&(h=37));switch(h){case 38:0<b.p.iRow-1&&(d(b.p.iRow-1,b.p.iCol,"vu"),a(b).jqGrid("editCell",b.p.iRow-1,b.p.iCol,!1));break;case 40:b.p.iRow+1<=b.rows.length-1&&(d(b.p.iRow+1,b.p.iCol,"vd"),a(b).jqGrid("editCell",b.p.iRow+1,b.p.iCol,!1));break;case 37:0<=b.p.iCol-1&&(c=e(b.p.iCol-1,"lft"),d(b.p.iRow,c,"h"),a(b).jqGrid("editCell",b.p.iRow,c,
!1));break;case 39:b.p.iCol+1<=b.p.colModel.length-1&&(c=e(b.p.iCol+1,"rgt"),d(b.p.iRow,c,"h"),a(b).jqGrid("editCell",b.p.iRow,c,!1));break;case 13:0<=parseInt(b.p.iCol,10)&&0<=parseInt(b.p.iRow,10)&&a(b).jqGrid("editCell",b.p.iRow,b.p.iCol,!0);break;default:return!0}return!1})}})},getChangedCells:function(d){var e=[];d||(d="all");this.each(function(){var b=this,f;b.grid&&!0===b.p.cellEdit&&a(b.rows).each(function(c){var h={};a(this).hasClass("edited")&&(a("td",this).each(function(e){f=b.p.colModel[e].name;
if("cb"!==f&&"subgrid"!==f)if("dirty"===d){if(a(this).hasClass("dirty-cell"))try{h[f]=a.unformat.call(b,this,{rowId:b.rows[c].id,colModel:b.p.colModel[e]},e)}catch(k){h[f]=a.jgrid.htmlDecode(a(this).html())}}else try{h[f]=a.unformat.call(b,this,{rowId:b.rows[c].id,colModel:b.p.colModel[e]},e)}catch(l){h[f]=a.jgrid.htmlDecode(a(this).html())}}),h.id=this.id,e.push(h))})});return e}})})(jQuery);
(function(a){a.jgrid.extend({setSubGrid:function(){return this.each(function(){var d,e;this.p.subGridOptions=a.extend({plusicon:"ui-icon-plus",minusicon:"ui-icon-minus",openicon:"ui-icon-carat-1-sw",expandOnLoad:!1,delayOnLoad:50,selectOnExpand:!1,selectOnCollapse:!1,reloadOnExpand:!0},this.p.subGridOptions||{});this.p.colNames.unshift("");this.p.colModel.unshift({name:"subgrid",width:a.jgrid.cell_width?this.p.subGridWidth+this.p.cellLayout:this.p.subGridWidth,sortable:!1,resizable:!1,hidedlg:!0,
search:!1,fixed:!0});d=this.p.subGridModel;if(d[0])for(d[0].align=a.extend([],d[0].align||[]),e=0;e<d[0].name.length;e++)d[0].align[e]=d[0].align[e]||"left"})},addSubGridCell:function(a,e){var b="",f,c;this.each(function(){b=this.formatCol(a,e);c=this.p.id;f=this.p.subGridOptions.plusicon});return'<td role="gridcell" aria-describedby="'+c+'_subgrid" class="ui-sgcollapsed sgcollapsed" '+b+"><a style='cursor:pointer;'><span class='ui-icon "+f+"'></span></a></td>"},addSubGrid:function(d,e){return this.each(function(){var b=
this;if(b.grid){var f=function(c,d,e){d=a("<td align='"+b.p.subGridModel[0].align[e]+"'></td>").html(d);a(c).append(d)},c=function(c,d){var e,g,h,k=a("<table cellspacing='0' cellpadding='0' border='0'><tbody></tbody></table>"),l=a("<tr></tr>");for(g=0;g<b.p.subGridModel[0].name.length;g++)e=a("<th class='ui-state-default ui-th-subgrid ui-th-column ui-th-"+b.p.direction+"'></th>"),a(e).html(b.p.subGridModel[0].name[g]),a(e).width(b.p.subGridModel[0].width[g]),a(l).append(e);a(k).append(l);c&&(h=b.p.xmlReader.subgrid,
a(h.root+" "+h.row,c).each(function(){l=a("<tr class='ui-widget-content ui-subtblcell'></tr>");if(!0===h.repeatitems)a(h.cell,this).each(function(b){f(l,a(this).text()||"&#160;",b)});else{var c=b.p.subGridModel[0].mapping||b.p.subGridModel[0].name;if(c)for(g=0;g<c.length;g++)f(l,a(c[g],this).text()||"&#160;",g)}a(k).append(l)}));e=a("table:first",b.grid.bDiv).attr("id")+"_";a("#"+a.jgrid.jqID(e+d)).append(k);b.grid.hDiv.loading=!1;a("#load_"+a.jgrid.jqID(b.p.id)).hide();return!1},h=function(c,d){var e,
g,h,k,l,m=a("<table cellspacing='0' cellpadding='0' border='0'><tbody></tbody></table>"),n=a("<tr></tr>");for(g=0;g<b.p.subGridModel[0].name.length;g++)e=a("<th class='ui-state-default ui-th-subgrid ui-th-column ui-th-"+b.p.direction+"'></th>"),a(e).html(b.p.subGridModel[0].name[g]),a(e).width(b.p.subGridModel[0].width[g]),a(n).append(e);a(m).append(n);if(c&&(k=b.p.jsonReader.subgrid,e=a.jgrid.getAccessor(c,k.root),void 0!==e))for(g=0;g<e.length;g++){h=e[g];n=a("<tr class='ui-widget-content ui-subtblcell'></tr>");
if(!0===k.repeatitems)for(k.cell&&(h=h[k.cell]),l=0;l<h.length;l++)f(n,h[l]||"&#160;",l);else{var p=b.p.subGridModel[0].mapping||b.p.subGridModel[0].name;if(p.length)for(l=0;l<p.length;l++)f(n,h[p[l]]||"&#160;",l)}a(m).append(n)}g=a("table:first",b.grid.bDiv).attr("id")+"_";a("#"+a.jgrid.jqID(g+d)).append(m);b.grid.hDiv.loading=!1;a("#load_"+a.jgrid.jqID(b.p.id)).hide();return!1},g=function(d){var e,f,g,k;e=a(d).attr("id");f={nd_:(new Date).getTime()};f[b.p.prmNames.subgridid]=e;if(!b.p.subGridModel[0])return!1;
if(b.p.subGridModel[0].params)for(k=0;k<b.p.subGridModel[0].params.length;k++)for(g=0;g<b.p.colModel.length;g++)b.p.colModel[g].name===b.p.subGridModel[0].params[k]&&(f[b.p.colModel[g].name]=a("td:eq("+g+")",d).text().replace(/\&#160\;/ig,""));if(!b.grid.hDiv.loading)switch(b.grid.hDiv.loading=!0,a("#load_"+a.jgrid.jqID(b.p.id)).show(),b.p.subgridtype||(b.p.subgridtype=b.p.datatype),a.isFunction(b.p.subgridtype)?b.p.subgridtype.call(b,f):b.p.subgridtype=b.p.subgridtype.toLowerCase(),b.p.subgridtype){case "xml":case "json":a.ajax(a.extend({type:b.p.mtype,
url:b.p.subGridUrl,dataType:b.p.subgridtype,data:a.isFunction(b.p.serializeSubGridData)?b.p.serializeSubGridData.call(b,f):f,complete:function(d){"xml"===b.p.subgridtype?c(d.responseXML,e):h(a.jgrid.parse(d.responseText),e)}},a.jgrid.ajaxOptions,b.p.ajaxSubgridOptions||{}))}return!1},k,l,m,p=0,r,q;a.each(b.p.colModel,function(){!0!==this.hidden&&"rn"!==this.name&&"cb"!==this.name||p++});var n=b.rows.length,s=1;void 0!==e&&0<e&&(s=e,n=e+1);for(;s<n;)a(b.rows[s]).hasClass("jqgrow")&&a(b.rows[s].cells[d]).bind("click",
function(){var c=a(this).parent("tr")[0];q=c.nextSibling;if(a(this).hasClass("sgcollapsed")){l=b.p.id;k=c.id;if(!0===b.p.subGridOptions.reloadOnExpand||!1===b.p.subGridOptions.reloadOnExpand&&!a(q).hasClass("ui-subgrid")){m=1<=d?"<td colspan='"+d+"'>&#160;</td>":"";r=a(b).triggerHandler("jqGridSubGridBeforeExpand",[l+"_"+k,k]);(r=!1===r||"stop"===r?!1:!0)&&a.isFunction(b.p.subGridBeforeExpand)&&(r=b.p.subGridBeforeExpand.call(b,l+"_"+k,k));if(!1===r)return!1;a(c).after("<tr role='row' class='ui-subgrid'>"+
m+"<td class='ui-widget-content subgrid-cell'><span class='ui-icon "+b.p.subGridOptions.openicon+"'></span></td><td colspan='"+parseInt(b.p.colNames.length-1-p,10)+"' class='ui-widget-content subgrid-data'><div id="+l+"_"+k+" class='tablediv'></div></td></tr>");a(b).triggerHandler("jqGridSubGridRowExpanded",[l+"_"+k,k]);a.isFunction(b.p.subGridRowExpanded)?b.p.subGridRowExpanded.call(b,l+"_"+k,k):g(c)}else a(q).show();a(this).html("<a style='cursor:pointer;'><span class='ui-icon "+b.p.subGridOptions.minusicon+
"'></span></a>").removeClass("sgcollapsed").addClass("sgexpanded");b.p.subGridOptions.selectOnExpand&&a(b).jqGrid("setSelection",k)}else if(a(this).hasClass("sgexpanded")){r=a(b).triggerHandler("jqGridSubGridRowColapsed",[l+"_"+k,k]);r=!1===r||"stop"===r?!1:!0;k=c.id;r&&a.isFunction(b.p.subGridRowColapsed)&&(r=b.p.subGridRowColapsed.call(b,l+"_"+k,k));if(!1===r)return!1;!0===b.p.subGridOptions.reloadOnExpand?a(q).remove(".ui-subgrid"):a(q).hasClass("ui-subgrid")&&a(q).hide();a(this).html("<a style='cursor:pointer;'><span class='ui-icon "+
b.p.subGridOptions.plusicon+"'></span></a>").removeClass("sgexpanded").addClass("sgcollapsed");b.p.subGridOptions.selectOnCollapse&&a(b).jqGrid("setSelection",k)}return!1}),s++;!0===b.p.subGridOptions.expandOnLoad&&a(b.rows).filter(".jqgrow").each(function(b,c){a(c.cells[0]).click()});b.subGridXml=function(a,b){c(a,b)};b.subGridJson=function(a,b){h(a,b)}}})},expandSubGridRow:function(d){return this.each(function(){if((this.grid||d)&&!0===this.p.subGrid){var e=a(this).jqGrid("getInd",d,!0);e&&(e=a("td.sgcollapsed",
e)[0])&&a(e).trigger("click")}})},collapseSubGridRow:function(d){return this.each(function(){if((this.grid||d)&&!0===this.p.subGrid){var e=a(this).jqGrid("getInd",d,!0);e&&(e=a("td.sgexpanded",e)[0])&&a(e).trigger("click")}})},toggleSubGridRow:function(d){return this.each(function(){if((this.grid||d)&&!0===this.p.subGrid){var e=a(this).jqGrid("getInd",d,!0);if(e){var b=a("td.sgcollapsed",e)[0];b?a(b).trigger("click"):(b=a("td.sgexpanded",e)[0])&&a(b).trigger("click")}}})}})})(jQuery);
(function(a){a.jgrid.extend({setTreeNode:function(d,e){return this.each(function(){var b=this;if(b.grid&&b.p.treeGrid)for(var f=b.p.expColInd,c=b.p.treeReader.expanded_field,h=b.p.treeReader.leaf_field,g=b.p.treeReader.level_field,k=b.p.treeReader.icon_field,l=b.p.treeReader.loaded,m,p,r,q;d<e;)q=a.jgrid.stripPref(b.p.idPrefix,b.rows[d].id),q=b.p.data[b.p._index[q]],"nested"!==b.p.treeGridModel||q[h]||(m=parseInt(q[b.p.treeReader.left_field],10),p=parseInt(q[b.p.treeReader.right_field],10),q[h]=p===
m+1?"true":"false",b.rows[d].cells[b.p._treeleafpos].innerHTML=q[h]),m=parseInt(q[g],10),0===b.p.tree_root_level?(r=m+1,p=m):(r=m,p=m-1),r="<div class='tree-wrap tree-wrap-"+b.p.direction+"' style='width:"+18*r+"px;'>",r+="<div style='"+("rtl"===b.p.direction?"right:":"left:")+18*p+"px;' class='ui-icon ",void 0!==q[l]&&(q[l]="true"===q[l]||!0===q[l]?!0:!1),"true"===q[h]||!0===q[h]?(r+=(void 0!==q[k]&&""!==q[k]?q[k]:b.p.treeIcons.leaf)+" tree-leaf treeclick",q[h]=!0,p="leaf"):(q[h]=!1,p=""),q[c]=("true"===
q[c]||!0===q[c]?!0:!1)&&(q[l]||void 0===q[l]),r=!1===q[c]?r+(!0===q[h]?"'":b.p.treeIcons.plus+" tree-plus treeclick'"):r+(!0===q[h]?"'":b.p.treeIcons.minus+" tree-minus treeclick'"),r+="></div></div>",a(b.rows[d].cells[f]).wrapInner("<span class='cell-wrapper"+p+"'></span>").prepend(r),m!==parseInt(b.p.tree_root_level,10)&&((q=(q=a(b).jqGrid("getNodeParent",q))&&q.hasOwnProperty(c)?q[c]:!0)||a(b.rows[d]).css("display","none")),a(b.rows[d].cells[f]).find("div.treeclick").bind("click",function(d){d=
a.jgrid.stripPref(b.p.idPrefix,a(d.target||d.srcElement,b.rows).closest("tr.jqgrow")[0].id);d=b.p._index[d];b.p.data[d][h]||(b.p.data[d][c]?(a(b).jqGrid("collapseRow",b.p.data[d]),a(b).jqGrid("collapseNode",b.p.data[d])):(a(b).jqGrid("expandRow",b.p.data[d]),a(b).jqGrid("expandNode",b.p.data[d])));return!1}),!0===b.p.ExpandColClick&&a(b.rows[d].cells[f]).find("span.cell-wrapper").css("cursor","pointer").bind("click",function(d){d=a.jgrid.stripPref(b.p.idPrefix,a(d.target||d.srcElement,b.rows).closest("tr.jqgrow")[0].id);
var e=b.p._index[d];b.p.data[e][h]||(b.p.data[e][c]?(a(b).jqGrid("collapseRow",b.p.data[e]),a(b).jqGrid("collapseNode",b.p.data[e])):(a(b).jqGrid("expandRow",b.p.data[e]),a(b).jqGrid("expandNode",b.p.data[e])));a(b).jqGrid("setSelection",d);return!1}),d++})},setTreeGrid:function(){return this.each(function(){var d=this,e=0,b,f=!1,c,h,g=[];if(d.p.treeGrid){d.p.treedatatype||a.extend(d.p,{treedatatype:d.p.datatype});d.p.subGrid=!1;d.p.altRows=!1;d.p.pgbuttons=!1;d.p.pginput=!1;d.p.gridview=!0;null===
d.p.rowTotal&&(d.p.rowNum=1E4);d.p.multiselect=!1;d.p.rowList=[];d.p.expColInd=0;b="ui-icon-triangle-1-"+("rtl"===d.p.direction?"w":"e");d.p.treeIcons=a.extend({plus:b,minus:"ui-icon-triangle-1-s",leaf:"ui-icon-radio-off"},d.p.treeIcons||{});"nested"===d.p.treeGridModel?d.p.treeReader=a.extend({level_field:"level",left_field:"lft",right_field:"rgt",leaf_field:"isLeaf",expanded_field:"expanded",loaded:"loaded",icon_field:"icon"},d.p.treeReader):"adjacency"===d.p.treeGridModel&&(d.p.treeReader=a.extend({level_field:"level",
parent_id_field:"parent",leaf_field:"isLeaf",expanded_field:"expanded",loaded:"loaded",icon_field:"icon"},d.p.treeReader));for(c in d.p.colModel)if(d.p.colModel.hasOwnProperty(c))for(h in b=d.p.colModel[c].name,b!==d.p.ExpandColumn||f||(f=!0,d.p.expColInd=e),e++,d.p.treeReader)d.p.treeReader.hasOwnProperty(h)&&d.p.treeReader[h]===b&&g.push(b);a.each(d.p.treeReader,function(b,c){c&&-1===a.inArray(c,g)&&("leaf_field"===b&&(d.p._treeleafpos=e),e++,d.p.colNames.push(c),d.p.colModel.push({name:c,width:1,
hidden:!0,sortable:!1,resizable:!1,hidedlg:!0,editable:!0,search:!1}))})}})},expandRow:function(d){this.each(function(){var e=this;if(e.grid&&e.p.treeGrid){var b=a(e).jqGrid("getNodeChildren",d),f=e.p.treeReader.expanded_field;a(b).each(function(){var b=e.p.idPrefix+a.jgrid.getAccessor(this,e.p.localReader.id);a(a(e).jqGrid("getGridRowById",b)).css("display","");this[f]&&a(e).jqGrid("expandRow",this)})}})},collapseRow:function(d){this.each(function(){var e=this;if(e.grid&&e.p.treeGrid){var b=a(e).jqGrid("getNodeChildren",
d),f=e.p.treeReader.expanded_field;a(b).each(function(){var b=e.p.idPrefix+a.jgrid.getAccessor(this,e.p.localReader.id);a(a(e).jqGrid("getGridRowById",b)).css("display","none");this[f]&&a(e).jqGrid("collapseRow",this)})}})},getRootNodes:function(){var d=[];this.each(function(){var e=this;if(e.grid&&e.p.treeGrid)switch(e.p.treeGridModel){case "nested":var b=e.p.treeReader.level_field;a(e.p.data).each(function(){parseInt(this[b],10)===parseInt(e.p.tree_root_level,10)&&d.push(this)});break;case "adjacency":var f=
e.p.treeReader.parent_id_field;a(e.p.data).each(function(){null!==this[f]&&"null"!==String(this[f]).toLowerCase()||d.push(this)})}});return d},getNodeDepth:function(d){var e=null;this.each(function(){if(this.grid&&this.p.treeGrid)switch(this.p.treeGridModel){case "nested":e=parseInt(d[this.p.treeReader.level_field],10)-parseInt(this.p.tree_root_level,10);break;case "adjacency":e=a(this).jqGrid("getNodeAncestors",d).length}});return e},getNodeParent:function(d){var e=null;this.each(function(){var b=
this;if(b.grid&&b.p.treeGrid)switch(b.p.treeGridModel){case "nested":var f=b.p.treeReader.left_field,c=b.p.treeReader.right_field,h=b.p.treeReader.level_field,g=parseInt(d[f],10),k=parseInt(d[c],10),l=parseInt(d[h],10);a(this.p.data).each(function(){if(parseInt(this[h],10)===l-1&&parseInt(this[f],10)<g&&parseInt(this[c],10)>k)return e=this,!1});break;case "adjacency":var m=b.p.treeReader.parent_id_field,p=b.p.localReader.id;a(this.p.data).each(function(){if(this[p]===a.jgrid.stripPref(b.p.idPrefix,
d[m]))return e=this,!1})}});return e},getNodeChildren:function(d){var e=[];this.each(function(){var b=this;if(b.grid&&b.p.treeGrid)switch(b.p.treeGridModel){case "nested":var f=b.p.treeReader.left_field,c=b.p.treeReader.right_field,h=b.p.treeReader.level_field,g=parseInt(d[f],10),k=parseInt(d[c],10),l=parseInt(d[h],10);a(this.p.data).each(function(){parseInt(this[h],10)===l+1&&parseInt(this[f],10)>g&&parseInt(this[c],10)<k&&e.push(this)});break;case "adjacency":var m=b.p.treeReader.parent_id_field,
p=b.p.localReader.id;a(this.p.data).each(function(){this[m]==a.jgrid.stripPref(b.p.idPrefix,d[p])&&e.push(this)})}});return e},getFullTreeNode:function(d){var e=[];this.each(function(){var b=this,f;if(b.grid&&b.p.treeGrid)switch(b.p.treeGridModel){case "nested":var c=b.p.treeReader.left_field,h=b.p.treeReader.right_field,g=b.p.treeReader.level_field,k=parseInt(d[c],10),l=parseInt(d[h],10),m=parseInt(d[g],10);a(this.p.data).each(function(){parseInt(this[g],10)>=m&&parseInt(this[c],10)>=k&&parseInt(this[c],
10)<=l&&e.push(this)});break;case "adjacency":if(d){e.push(d);var p=b.p.treeReader.parent_id_field,r=b.p.localReader.id;a(this.p.data).each(function(c){f=e.length;for(c=0;c<f;c++)if(a.jgrid.stripPref(b.p.idPrefix,e[c][r])===this[p]){e.push(this);break}})}}});return e},getNodeAncestors:function(d){var e=[];this.each(function(){if(this.grid&&this.p.treeGrid)for(var b=a(this).jqGrid("getNodeParent",d);b;)e.push(b),b=a(this).jqGrid("getNodeParent",b)});return e},isVisibleNode:function(d){var e=!0;this.each(function(){if(this.grid&&
this.p.treeGrid){var b=a(this).jqGrid("getNodeAncestors",d),f=this.p.treeReader.expanded_field;a(b).each(function(){e=e&&this[f];if(!e)return!1})}});return e},isNodeLoaded:function(d){var e;this.each(function(){if(this.grid&&this.p.treeGrid){var b=this.p.treeReader.leaf_field,f=this.p.treeReader.loaded;e=void 0!==d?void 0!==d[f]?d[f]:d[b]||0<a(this).jqGrid("getNodeChildren",d).length?!0:!1:!1}});return e},expandNode:function(d){return this.each(function(){if(this.grid&&this.p.treeGrid){var e=this.p.treeReader.expanded_field,
b=this.p.treeReader.parent_id_field,f=this.p.treeReader.loaded,c=this.p.treeReader.level_field,h=this.p.treeReader.left_field,g=this.p.treeReader.right_field;if(!d[e]){var k=a.jgrid.getAccessor(d,this.p.localReader.id),l=a("#"+this.p.idPrefix+a.jgrid.jqID(k),this.grid.bDiv)[0],m=this.p._index[k];a(this).jqGrid("isNodeLoaded",this.p.data[m])?(d[e]=!0,a("div.treeclick",l).removeClass(this.p.treeIcons.plus+" tree-plus").addClass(this.p.treeIcons.minus+" tree-minus")):this.grid.hDiv.loading||(d[e]=!0,
a("div.treeclick",l).removeClass(this.p.treeIcons.plus+" tree-plus").addClass(this.p.treeIcons.minus+" tree-minus"),this.p.treeANode=l.rowIndex,this.p.datatype=this.p.treedatatype,"nested"===this.p.treeGridModel?a(this).jqGrid("setGridParam",{postData:{nodeid:k,n_left:d[h],n_right:d[g],n_level:d[c]}}):a(this).jqGrid("setGridParam",{postData:{nodeid:k,parentid:d[b],n_level:d[c]}}),a(this).trigger("reloadGrid"),d[f]=!0,"nested"===this.p.treeGridModel?a(this).jqGrid("setGridParam",{postData:{nodeid:"",
n_left:"",n_right:"",n_level:""}}):a(this).jqGrid("setGridParam",{postData:{nodeid:"",parentid:"",n_level:""}}))}}})},collapseNode:function(d){return this.each(function(){if(this.grid&&this.p.treeGrid){var e=this.p.treeReader.expanded_field;d[e]&&(d[e]=!1,e=a.jgrid.getAccessor(d,this.p.localReader.id),e=a("#"+this.p.idPrefix+a.jgrid.jqID(e),this.grid.bDiv)[0],a("div.treeclick",e).removeClass(this.p.treeIcons.minus+" tree-minus").addClass(this.p.treeIcons.plus+" tree-plus"))}})},SortTree:function(d,
e,b,f){return this.each(function(){if(this.grid&&this.p.treeGrid){var c,h,g,k=[],l=this,m;c=a(this).jqGrid("getRootNodes");c=a.jgrid.from(c);c.orderBy(d,e,b,f);m=c.select();c=0;for(h=m.length;c<h;c++)g=m[c],k.push(g),a(this).jqGrid("collectChildrenSortTree",k,g,d,e,b,f);a.each(k,function(b){var c=a.jgrid.getAccessor(this,l.p.localReader.id);a("#"+a.jgrid.jqID(l.p.id)+" tbody tr:eq("+b+")").after(a("tr#"+a.jgrid.jqID(c),l.grid.bDiv))});k=m=c=null}})},collectChildrenSortTree:function(d,e,b,f,c,h){return this.each(function(){if(this.grid&&
this.p.treeGrid){var g,k,l,m;g=a(this).jqGrid("getNodeChildren",e);g=a.jgrid.from(g);g.orderBy(b,f,c,h);m=g.select();g=0;for(k=m.length;g<k;g++)l=m[g],d.push(l),a(this).jqGrid("collectChildrenSortTree",d,l,b,f,c,h)}})},setTreeRow:function(d,e){var b=!1;this.each(function(){this.grid&&this.p.treeGrid&&(b=a(this).jqGrid("setRowData",d,e))});return b},delTreeNode:function(d){return this.each(function(){var e=this.p.localReader.id,b,f=this.p.treeReader.left_field,c=this.p.treeReader.right_field,h,g,k;
if(this.grid&&this.p.treeGrid&&(b=this.p._index[d],void 0!==b)){h=parseInt(this.p.data[b][c],10);g=h-parseInt(this.p.data[b][f],10)+1;var l=a(this).jqGrid("getFullTreeNode",this.p.data[b]);if(0<l.length)for(b=0;b<l.length;b++)a(this).jqGrid("delRowData",l[b][e]);if("nested"===this.p.treeGridModel){e=a.jgrid.from(this.p.data).greater(f,h,{stype:"integer"}).select();if(e.length)for(k in e)e.hasOwnProperty(k)&&(e[k][f]=parseInt(e[k][f],10)-g);e=a.jgrid.from(this.p.data).greater(c,h,{stype:"integer"}).select();
if(e.length)for(k in e)e.hasOwnProperty(k)&&(e[k][c]=parseInt(e[k][c],10)-g)}}})},addChildNode:function(d,e,b,f){var c=this[0];if(b){var h=c.p.treeReader.expanded_field,g=c.p.treeReader.leaf_field,k=c.p.treeReader.level_field,l=c.p.treeReader.parent_id_field,m=c.p.treeReader.left_field,p=c.p.treeReader.right_field,r=c.p.treeReader.loaded,q,n,s,t,v;q=0;var u=e,w;void 0===f&&(f=!1);if(void 0===d||null===d){v=c.p.data.length-1;if(0<=v)for(;0<=v;)q=Math.max(q,parseInt(c.p.data[v][c.p.localReader.id],
10)),v--;d=q+1}var x=a(c).jqGrid("getInd",e);w=!1;void 0===e||null===e||""===e?(u=e=null,q="last",t=c.p.tree_root_level,v=c.p.data.length+1):(q="after",n=c.p._index[e],s=c.p.data[n],e=s[c.p.localReader.id],t=parseInt(s[k],10)+1,v=a(c).jqGrid("getFullTreeNode",s),v.length?(u=v=v[v.length-1][c.p.localReader.id],v=a(c).jqGrid("getInd",u)+1):v=a(c).jqGrid("getInd",e)+1,s[g]&&(w=!0,s[h]=!0,a(c.rows[x]).find("span.cell-wrapperleaf").removeClass("cell-wrapperleaf").addClass("cell-wrapper").end().find("div.tree-leaf").removeClass(c.p.treeIcons.leaf+
" tree-leaf").addClass(c.p.treeIcons.minus+" tree-minus"),c.p.data[n][g]=!1,s[r]=!0));n=v+1;void 0===b[h]&&(b[h]=!1);void 0===b[r]&&(b[r]=!1);b[k]=t;void 0===b[g]&&(b[g]=!0);"adjacency"===c.p.treeGridModel&&(b[l]=e);if("nested"===c.p.treeGridModel){var z;if(null!==e){g=parseInt(s[p],10);k=a.jgrid.from(c.p.data);k=k.greaterOrEquals(p,g,{stype:"integer"});k=k.select();if(k.length)for(z in k)k.hasOwnProperty(z)&&(k[z][m]=k[z][m]>g?parseInt(k[z][m],10)+2:k[z][m],k[z][p]=k[z][p]>=g?parseInt(k[z][p],10)+
2:k[z][p]);b[m]=g;b[p]=g+1}else{g=parseInt(a(c).jqGrid("getCol",p,!1,"max"),10);k=a.jgrid.from(c.p.data).greater(m,g,{stype:"integer"}).select();if(k.length)for(z in k)k.hasOwnProperty(z)&&(k[z][m]=parseInt(k[z][m],10)+2);k=a.jgrid.from(c.p.data).greater(p,g,{stype:"integer"}).select();if(k.length)for(z in k)k.hasOwnProperty(z)&&(k[z][p]=parseInt(k[z][p],10)+2);b[m]=g+1;b[p]=g+2}}if(null===e||a(c).jqGrid("isNodeLoaded",s)||w)a(c).jqGrid("addRowData",d,b,q,u),a(c).jqGrid("setTreeNode",v,n);s&&!s[h]&&
f&&a(c.rows[x]).find("div.treeclick").click()}}})})(jQuery);
(function(a){a.extend(a.jgrid,{template:function(d){var e=a.makeArray(arguments).slice(1),b,f=e.length;null==d&&(d="");return d.replace(/\{([\w\-]+)(?:\:([\w\.]*)(?:\((.*?)?\))?)?\}/g,function(c,d){if(!isNaN(parseInt(d,10)))return e[parseInt(d,10)];for(b=0;b<f;b++)if(a.isArray(e[b]))for(var g=e[b],k=g.length;k--;)if(d===g[k].nm)return g[k].v})}});a.jgrid.extend({groupingSetup:function(){return this.each(function(){var d,e,b=this.p.colModel,f=this.p.groupingView;if(null===f||"object"!==typeof f&&!a.isFunction(f))this.p.grouping=
!1;else if(f.groupField.length){void 0===f.visibiltyOnNextGrouping&&(f.visibiltyOnNextGrouping=[]);f.lastvalues=[];f._locgr||(f.groups=[]);f.counters=[];for(d=0;d<f.groupField.length;d++)f.groupOrder[d]||(f.groupOrder[d]="asc"),f.groupText[d]||(f.groupText[d]="{0}"),"boolean"!==typeof f.groupColumnShow[d]&&(f.groupColumnShow[d]=!0),"boolean"!==typeof f.groupSummary[d]&&(f.groupSummary[d]=!1),f.groupSummaryPos[d]||(f.groupSummaryPos[d]="footer"),!0===f.groupColumnShow[d]?(f.visibiltyOnNextGrouping[d]=
!0,a(this).jqGrid("showCol",f.groupField[d])):(f.visibiltyOnNextGrouping[d]=a("#"+a.jgrid.jqID(this.p.id+"_"+f.groupField[d])).is(":visible"),a(this).jqGrid("hideCol",f.groupField[d]));f.summary=[];f.hideFirstGroupCol&&(f.formatDisplayField[0]=function(a){return a});d=0;for(e=b.length;d<e;d++)f.hideFirstGroupCol&&!b[d].hidden&&f.groupField[0]===b[d].name&&(b[d].formatter=function(){return""}),b[d].summaryType&&(b[d].summaryDivider?f.summary.push({nm:b[d].name,st:b[d].summaryType,v:"",sd:b[d].summaryDivider,
vd:"",sr:b[d].summaryRound,srt:b[d].summaryRoundType||"round"}):f.summary.push({nm:b[d].name,st:b[d].summaryType,v:"",sr:b[d].summaryRound,srt:b[d].summaryRoundType||"round"}))}else this.p.grouping=!1})},groupingPrepare:function(d,e){this.each(function(){var b=this.p.groupingView,f=this,c,h=b.groupField.length,g,k,l,m=0;for(c=0;c<h;c++)g=b.groupField[c],l=b.displayField[c],k=d[g],l=null==l?null:d[l],null==l&&(l=k),void 0!==k&&(0===e?(b.groups.push({idx:c,dataIndex:g,value:k,displayValue:l,startRow:e,
cnt:1,summary:[]}),b.lastvalues[c]=k,b.counters[c]={cnt:1,pos:b.groups.length-1,summary:a.extend(!0,[],b.summary)}):"object"===typeof k||(a.isArray(b.isInTheSameGroup)&&a.isFunction(b.isInTheSameGroup[c])?b.isInTheSameGroup[c].call(f,b.lastvalues[c],k,c,b):b.lastvalues[c]===k)?1===m?(b.groups.push({idx:c,dataIndex:g,value:k,displayValue:l,startRow:e,cnt:1,summary:[]}),b.lastvalues[c]=k,b.counters[c]={cnt:1,pos:b.groups.length-1,summary:a.extend(!0,[],b.summary)}):(b.counters[c].cnt+=1,b.groups[b.counters[c].pos].cnt=
b.counters[c].cnt):(b.groups.push({idx:c,dataIndex:g,value:k,displayValue:l,startRow:e,cnt:1,summary:[]}),b.lastvalues[c]=k,m=1,b.counters[c]={cnt:1,pos:b.groups.length-1,summary:a.extend(!0,[],b.summary)}),a.each(b.counters[c].summary,function(){a.isFunction(this.st)?this.v=this.st.call(f,this.v,this.nm,d):(this.v=a(f).jqGrid("groupingCalculations.handler",this.st,this.v,this.nm,this.sr,this.srt,d),"avg"===this.st.toLowerCase()&&this.sd&&(this.vd=a(f).jqGrid("groupingCalculations.handler",this.st,
this.vd,this.sd,this.sr,this.srt,d)))}),b.groups[b.counters[c].pos].summary=b.counters[c].summary)});return this},groupingToggle:function(d){this.each(function(){var e=this.p.groupingView,b=d.split("_"),f=parseInt(b[b.length-2],10);b.splice(b.length-2,2);var c=b.join("_"),b=e.minusicon,h=e.plusicon,g=a("#"+a.jgrid.jqID(d)),g=g.length?g[0].nextSibling:null,k=a("#"+a.jgrid.jqID(d)+" span.tree-wrap-"+this.p.direction),l=function(b){b=a.map(b.split(" "),function(a){if(a.substring(0,c.length+1)===c+"_")return parseInt(a.substring(c.length+
1),10)});return 0<b.length?b[0]:void 0},m,p=!1,r=this.p.frozenColumns?this.p.id+"_frozen":!1,q=r?a("#"+a.jgrid.jqID(d),"#"+a.jgrid.jqID(r)):!1,q=q&&q.length?q[0].nextSibling:null;if(k.hasClass(b)){if(e.showSummaryOnHide){if(g)for(;g&&!(a(g).hasClass("jqfoot")&&parseInt(a(g).attr("jqfootlevel"),10)<=f);)a(g).hide(),g=g.nextSibling,r&&(a(q).hide(),q=q.nextSibling)}else if(g)for(;g;){e=l(g.className);if(void 0!==e&&e<=f)break;a(g).hide();g=g.nextSibling;r&&(a(q).hide(),q=q.nextSibling)}k.removeClass(b).addClass(h);
p=!0}else{if(g)for(m=void 0;g;){e=l(g.className);void 0===m&&(m=void 0===e);if(void 0!==e){if(e<=f)break;e===f+1&&(a(g).show().find(">td>span.tree-wrap-"+this.p.direction).removeClass(b).addClass(h),r&&a(q).show().find(">td>span.tree-wrap-"+this.p.direction).removeClass(b).addClass(h))}else m&&(a(g).show(),r&&a(q).show());g=g.nextSibling;r&&(q=q.nextSibling)}k.removeClass(h).addClass(b)}a(this).triggerHandler("jqGridGroupingClickGroup",[d,p]);a.isFunction(this.p.onClickGroup)&&this.p.onClickGroup.call(this,
d,p)});return!1},groupingRender:function(d,e,b,f){return this.each(function(){function c(a,b,c){var d=!1;if(0===b)d=c[a];else{var e=c[a].idx;if(0===e)d=c[a];else for(;0<=a;a--)if(c[a].idx===e-b){d=c[a];break}}return d}function h(b,d,f,h){var k=c(b,d,f),l=g.p.colModel,m,n=k.cnt;b="";var p;for(p=h;p<e;p++){var q="<td "+g.formatCol(p,1,"")+">&#160;</td>",r="{0}";a.each(k.summary,function(){if(this.nm===l[p].name){l[p].summaryTpl&&(r=l[p].summaryTpl);"string"===typeof this.st&&"avg"===this.st.toLowerCase()&&
(this.sd&&this.vd?this.v/=this.vd:this.v&&0<n&&(this.v/=n));try{this.groupCount=k.cnt,this.groupIndex=k.dataIndex,this.groupValue=k.value,m=g.formatter("",this.v,p,this)}catch(b){m=this.v}q="<td "+g.formatCol(p,1,"")+">"+a.jgrid.format(r,m)+"</td>";return!1}});b+=q}return b}var g=this,k=g.p.groupingView,l="",m="",p,r,q=k.groupCollapse?k.plusicon:k.minusicon,n,s=[],t=k.groupField.length,q=q+(" tree-wrap-"+g.p.direction);a.each(g.p.colModel,function(a,b){var c;for(c=0;c<t;c++)if(k.groupField[c]===b.name){s[c]=
a;break}});var v=0,u=a.makeArray(k.groupSummary);u.reverse();a.each(k.groups,function(c,x){if(k._locgr&&!(x.startRow+x.cnt>(b-1)*f&&x.startRow<b*f))return!0;v++;r=g.p.id+"ghead_"+x.idx;p=r+"_"+c;m="<span style='cursor:pointer;' class='ui-icon "+q+"' onclick=\"jQuery('#"+a.jgrid.jqID(g.p.id)+"').jqGrid('groupingToggle','"+p+"');return false;\"></span>";try{a.isArray(k.formatDisplayField)&&a.isFunction(k.formatDisplayField[x.idx])?(x.displayValue=k.formatDisplayField[x.idx].call(g,x.displayValue,x.value,
g.p.colModel[s[x.idx]],x.idx,k),n=x.displayValue):n=g.formatter(p,x.displayValue,s[x.idx],x.value)}catch(z){n=x.displayValue}"header"===k.groupSummaryPos[x.idx]?(l+='<tr id="'+p+'"'+(k.groupCollapse&&0<x.idx?' style="display:none;" ':" ")+'role="row" class= "ui-widget-content jqgroup ui-row-'+g.p.direction+" "+r+'"><td style="padding-left:'+12*x.idx+'px;">'+m+a.jgrid.template(k.groupText[x.idx],n,x.cnt,x.summary)+"</td>",l+=h(c,x.idx-1,k.groups,1),l+="</tr>"):l+='<tr id="'+p+'"'+(k.groupCollapse&&
0<x.idx?' style="display:none;" ':" ")+'role="row" class= "ui-widget-content jqgroup ui-row-'+g.p.direction+" "+r+'"><td style="padding-left:'+12*x.idx+'px;" colspan="'+e+'">'+m+a.jgrid.template(k.groupText[x.idx],n,x.cnt,x.summary)+"</td></tr>";if(t-1===x.idx){var A=k.groups[c+1],J,B=0;J=x.startRow;var M=void 0!==A?k.groups[c+1].startRow:d.length;k._locgr&&(B=(b-1)*f,B>x.startRow&&(J=B));for(;J<M&&d[J-B];J++)l+=d[J-B].join("");if("header"!==k.groupSummaryPos[x.idx]){var H;if(void 0!==A){for(H=0;H<
k.groupField.length&&A.dataIndex!==k.groupField[H];H++);v=k.groupField.length-H}for(A=0;A<v;A++)u[A]&&(B="",k.groupCollapse&&!k.showSummaryOnHide&&(B=' style="display:none;"'),l+="<tr"+B+' jqfootlevel="'+(x.idx-A)+'" role="row" class="ui-widget-content jqfoot ui-row-'+g.p.direction+'">',l+=h(c,A,k.groups,0),l+="</tr>");v=H}}});a("#"+a.jgrid.jqID(g.p.id)+" tbody:first").append(l);l=null})},groupingGroupBy:function(d,e){return this.each(function(){"string"===typeof d&&(d=[d]);var b=this.p.groupingView;
this.p.grouping=!0;void 0===b.visibiltyOnNextGrouping&&(b.visibiltyOnNextGrouping=[]);var f;for(f=0;f<b.groupField.length;f++)!b.groupColumnShow[f]&&b.visibiltyOnNextGrouping[f]&&a(this).jqGrid("showCol",b.groupField[f]);for(f=0;f<d.length;f++)b.visibiltyOnNextGrouping[f]=a("#"+a.jgrid.jqID(this.p.id)+"_"+a.jgrid.jqID(d[f])).is(":visible");this.p.groupingView=a.extend(this.p.groupingView,e||{});b.groupField=d;a(this).trigger("reloadGrid")})},groupingRemove:function(d){return this.each(function(){void 0===
d&&(d=!0);this.p.grouping=!1;if(!0===d){var e=this.p.groupingView,b;for(b=0;b<e.groupField.length;b++)!e.groupColumnShow[b]&&e.visibiltyOnNextGrouping[b]&&a(this).jqGrid("showCol",e.groupField);a("tr.jqgroup, tr.jqfoot","#"+a.jgrid.jqID(this.p.id)+" tbody:first").remove();a("tr.jqgrow:hidden","#"+a.jgrid.jqID(this.p.id)+" tbody:first").show()}else a(this).trigger("reloadGrid")})},groupingCalculations:{handler:function(a,e,b,f,c,h){var g={sum:function(){return parseFloat(e||0)+parseFloat(h[b]||0)},
min:function(){return""===e?parseFloat(h[b]||0):Math.min(parseFloat(e),parseFloat(h[b]||0))},max:function(){return""===e?parseFloat(h[b]||0):Math.max(parseFloat(e),parseFloat(h[b]||0))},count:function(){""===e&&(e=0);return h.hasOwnProperty(b)?e+1:0},avg:function(){return g.sum()}};if(!g[a])throw"jqGrid Grouping No such method: "+a;a=g[a]();null!=f&&("fixed"===c?a=a.toFixed(f):(f=Math.pow(10,f),a=Math.round(a*f)/f));return a}}})})(jQuery);
(function(a){a.jgrid.extend({jqGridImport:function(d){d=a.extend({imptype:"xml",impstring:"",impurl:"",mtype:"GET",impData:{},xmlGrid:{config:"roots>grid",data:"roots>rows"},jsonGrid:{config:"grid",data:"data"},ajaxOptions:{}},d||{});return this.each(function(){var e=this,b=function(b,c){var d=a(c.xmlGrid.config,b)[0],f=a(c.xmlGrid.data,b)[0],m,p;if(xmlJsonClass.xml2json&&a.jgrid.parse){d=xmlJsonClass.xml2json(d," ");d=a.jgrid.parse(d);for(p in d)d.hasOwnProperty(p)&&(m=d[p]);f?(f=d.grid.datatype,
d.grid.datatype="xmlstring",d.grid.datastr=b,a(e).jqGrid(m).jqGrid("setGridParam",{datatype:f})):a(e).jqGrid(m)}else alert("xml2json or parse are not present")},f=function(b,c){if(b&&"string"===typeof b){var d=!1;a.jgrid.useJSON&&(a.jgrid.useJSON=!1,d=!0);var f=a.jgrid.parse(b);d&&(a.jgrid.useJSON=!0);d=f[c.jsonGrid.config];if(f=f[c.jsonGrid.data]){var m=d.datatype;d.datatype="jsonstring";d.datastr=f;a(e).jqGrid(d).jqGrid("setGridParam",{datatype:m})}else a(e).jqGrid(d)}};switch(d.imptype){case "xml":a.ajax(a.extend({url:d.impurl,
type:d.mtype,data:d.impData,dataType:"xml",complete:function(c,f){"success"===f&&(b(c.responseXML,d),a(e).triggerHandler("jqGridImportComplete",[c,d]),a.isFunction(d.importComplete)&&d.importComplete(c))}},d.ajaxOptions));break;case "xmlstring":if(d.impstring&&"string"===typeof d.impstring){var c=a.parseXML(d.impstring);c&&(b(c,d),a(e).triggerHandler("jqGridImportComplete",[c,d]),a.isFunction(d.importComplete)&&d.importComplete(c),d.impstring=null);c=null}break;case "json":a.ajax(a.extend({url:d.impurl,
type:d.mtype,data:d.impData,dataType:"json",complete:function(b){try{f(b.responseText,d),a(e).triggerHandler("jqGridImportComplete",[b,d]),a.isFunction(d.importComplete)&&d.importComplete(b)}catch(c){}}},d.ajaxOptions));break;case "jsonstring":d.impstring&&"string"===typeof d.impstring&&(f(d.impstring,d),a(e).triggerHandler("jqGridImportComplete",[d.impstring,d]),a.isFunction(d.importComplete)&&d.importComplete(d.impstring),d.impstring=null)}})},jqGridExport:function(d){d=a.extend({exptype:"xmlstring",
root:"grid",ident:"\t"},d||{});var e=null;this.each(function(){if(this.grid){var b,f=a.extend(!0,{},a(this).jqGrid("getGridParam"));f.rownumbers&&(f.colNames.splice(0,1),f.colModel.splice(0,1));f.multiselect&&(f.colNames.splice(0,1),f.colModel.splice(0,1));f.subGrid&&(f.colNames.splice(0,1),f.colModel.splice(0,1));f.knv=null;if(f.treeGrid)for(b in f.treeReader)f.treeReader.hasOwnProperty(b)&&(f.colNames.splice(f.colNames.length-1),f.colModel.splice(f.colModel.length-1));switch(d.exptype){case "xmlstring":e=
"<"+d.root+">"+xmlJsonClass.json2xml(f,d.ident)+"</"+d.root+">";break;case "jsonstring":e="{"+xmlJsonClass.toJson(f,d.root,d.ident,!1)+"}",void 0!==f.postData.filters&&(e=e.replace(/filters":"/,'filters":'),e=e.replace(/}]}"/,"}]}"))}}});return e},excelExport:function(d){d=a.extend({exptype:"remote",url:null,oper:"oper",tag:"excel",exportOptions:{}},d||{});return this.each(function(){if(this.grid){var e;"remote"===d.exptype&&(e=a.extend({},this.p.postData),e[d.oper]=d.tag,e=jQuery.param(e),e=-1!==
d.url.indexOf("?")?d.url+"&"+e:d.url+"?"+e,window.location=e)}})}})})(jQuery);
(function(a){a.jgrid.msie&&8===a.jgrid.msiever()&&(a.expr[":"].hidden=function(a){return 0===a.offsetWidth||0===a.offsetHeight||"none"===a.style.display});a.jgrid._multiselect=!1;if(a.ui&&a.ui.multiselect){if(a.ui.multiselect.prototype._setSelected){var d=a.ui.multiselect.prototype._setSelected;a.ui.multiselect.prototype._setSelected=function(e,b){var f=d.call(this,e,b);if(b&&this.selectedList){var c=this.element;this.selectedList.find("li").each(function(){a(this).data("optionLink")&&a(this).data("optionLink").remove().appendTo(c)})}return f}}a.ui.multiselect.prototype.destroy&&
(a.ui.multiselect.prototype.destroy=function(){this.element.show();this.container.remove();void 0===a.Widget?a.widget.prototype.destroy.apply(this,arguments):a.Widget.prototype.destroy.apply(this,arguments)});a.jgrid._multiselect=!0}a.jgrid.extend({sortableColumns:function(d){return this.each(function(){function b(){f.p.disableClick=!0}var f=this,c=a.jgrid.jqID(f.p.id),c={tolerance:"pointer",axis:"x",scrollSensitivity:"1",items:">th:not(:has(#jqgh_"+c+"_cb,#jqgh_"+c+"_rn,#jqgh_"+c+"_subgrid),:hidden)",
placeholder:{element:function(b){return a(document.createElement(b[0].nodeName)).addClass(b[0].className+" ui-sortable-placeholder ui-state-highlight").removeClass("ui-sortable-helper")[0]},update:function(a,b){b.height(a.currentItem.innerHeight()-parseInt(a.currentItem.css("paddingTop")||0,10)-parseInt(a.currentItem.css("paddingBottom")||0,10));b.width(a.currentItem.innerWidth()-parseInt(a.currentItem.css("paddingLeft")||0,10)-parseInt(a.currentItem.css("paddingRight")||0,10))}},update:function(b,
c){var d=a(c.item).parent(),d=a(">th",d),e={},h=f.p.id+"_";a.each(f.p.colModel,function(a){e[this.name]=a});var r=[];d.each(function(){var b=a(">div",this).get(0).id.replace(/^jqgh_/,"").replace(h,"");e.hasOwnProperty(b)&&r.push(e[b])});a(f).jqGrid("remapColumns",r,!0,!0);a.isFunction(f.p.sortable.update)&&f.p.sortable.update(r);setTimeout(function(){f.p.disableClick=!1},50)}};f.p.sortable.options?a.extend(c,f.p.sortable.options):a.isFunction(f.p.sortable)&&(f.p.sortable={update:f.p.sortable});if(c.start){var h=
c.start;c.start=function(a,c){b();h.call(this,a,c)}}else c.start=b;f.p.sortable.exclude&&(c.items+=":not("+f.p.sortable.exclude+")");d.sortable(c).data("sortable").floating=!0})},columnChooser:function(d){function b(b,c){b&&("string"===typeof b?a.fn[b]&&a.fn[b].apply(c,a.makeArray(arguments).slice(2)):a.isFunction(b)&&b.apply(c,a.makeArray(arguments).slice(2)))}var f=this;if(!a("#colchooser_"+a.jgrid.jqID(f[0].p.id)).length){var c=a('<div id="colchooser_'+f[0].p.id+'" style="position:relative;overflow:hidden"><div><select multiple="multiple"></select></div></div>'),
h=a("select",c);d=a.extend({width:420,height:240,classname:null,done:function(a){a&&f.jqGrid("remapColumns",a,!0)},msel:"multiselect",dlog:"dialog",dialog_opts:{minWidth:470},dlog_opts:function(b){var c={};c[b.bSubmit]=function(){b.apply_perm();b.cleanup(!1)};c[b.bCancel]=function(){b.cleanup(!0)};return a.extend(!0,{buttons:c,close:function(){b.cleanup(!0)},modal:b.modal||!1,resizable:b.resizable||!0,width:b.width+20},b.dialog_opts||{})},apply_perm:function(){a("option",h).each(function(){this.selected?
f.jqGrid("showCol",g[this.value].name):f.jqGrid("hideCol",g[this.value].name)});var b=[];a("option:selected",h).each(function(){b.push(parseInt(this.value,10))});a.each(b,function(){delete l[g[parseInt(this,10)].name]});a.each(l,function(){var a=parseInt(this,10);var c=b,d=a;if(0<=d){var e=c.slice(),f=e.splice(d,Math.max(c.length-d,d));d>c.length&&(d=c.length);e[d]=a;b=e.concat(f)}else b=void 0});d.done&&d.done.call(f,b)},cleanup:function(a){b(d.dlog,c,"destroy");b(d.msel,h,"destroy");c.remove();
a&&d.done&&d.done.call(f)},msel_opts:{}},a.jgrid.col,d||{});if(a.ui&&a.ui.multiselect&&"multiselect"===d.msel){if(!a.jgrid._multiselect){alert("Multiselect plugin loaded after jqGrid. Please load the plugin before the jqGrid!");return}d.msel_opts=a.extend(a.ui.multiselect.defaults,d.msel_opts)}d.caption&&c.attr("title",d.caption);d.classname&&(c.addClass(d.classname),h.addClass(d.classname));d.width&&(a(">div",c).css({width:d.width,margin:"0 auto"}),h.css("width",d.width));d.height&&(a(">div",c).css("height",
d.height),h.css("height",d.height-10));var g=f.jqGrid("getGridParam","colModel"),k=f.jqGrid("getGridParam","colNames"),l={},m=[];h.empty();a.each(g,function(b){l[this.name]=b;this.hidedlg?this.hidden||m.push(b):h.append("<option value='"+b+"' "+(this.hidden?"":"selected='selected'")+">"+a.jgrid.stripHtml(k[b])+"</option>")});var p=a.isFunction(d.dlog_opts)?d.dlog_opts.call(f,d):d.dlog_opts;b(d.dlog,c,p);p=a.isFunction(d.msel_opts)?d.msel_opts.call(f,d):d.msel_opts;b(d.msel,h,p)}},sortableRows:function(d){return this.each(function(){var b=
this;b.grid&&!b.p.treeGrid&&a.fn.sortable&&(d=a.extend({cursor:"move",axis:"y",items:".jqgrow"},d||{}),d.start&&a.isFunction(d.start)?(d._start_=d.start,delete d.start):d._start_=!1,d.update&&a.isFunction(d.update)?(d._update_=d.update,delete d.update):d._update_=!1,d.start=function(f,c){a(c.item).css("border-width","0");a("td",c.item).each(function(a){this.style.width=b.grid.cols[a].style.width});if(b.p.subGrid){var h=a(c.item).attr("id");try{a(b).jqGrid("collapseSubGridRow",h)}catch(g){}}d._start_&&
d._start_.apply(this,[f,c])},d.update=function(f,c){a(c.item).css("border-width","");!0===b.p.rownumbers&&a("td.jqgrid-rownum",b.rows).each(function(c){a(this).html(c+1+(parseInt(b.p.page,10)-1)*parseInt(b.p.rowNum,10))});d._update_&&d._update_.apply(this,[f,c])},a("tbody:first",b).sortable(d),a("tbody:first",b).disableSelection())})},gridDnD:function(d){return this.each(function(){function b(){var b=a.data(f,"dnd");a("tr.jqgrow:not(.ui-draggable)",f).draggable(a.isFunction(b.drag)?b.drag.call(a(f),
b):b.drag)}var f=this,c,h;if(f.grid&&!f.p.treeGrid&&a.fn.draggable&&a.fn.droppable)if(void 0===a("#jqgrid_dnd")[0]&&a("body").append("<table id='jqgrid_dnd' class='ui-jqgrid-dnd'></table>"),"string"===typeof d&&"updateDnD"===d&&!0===f.p.jqgdnd)b();else if(d=a.extend({drag:function(b){return a.extend({start:function(c,d){var e;if(f.p.subGrid){e=a(d.helper).attr("id");try{a(f).jqGrid("collapseSubGridRow",e)}catch(h){}}for(e=0;e<a.data(f,"dnd").connectWith.length;e++)0===a(a.data(f,"dnd").connectWith[e]).jqGrid("getGridParam",
"reccount")&&a(a.data(f,"dnd").connectWith[e]).jqGrid("addRowData","jqg_empty_row",{});d.helper.addClass("ui-state-highlight");a("td",d.helper).each(function(a){this.style.width=f.grid.headers[a].width+"px"});b.onstart&&a.isFunction(b.onstart)&&b.onstart.call(a(f),c,d)},stop:function(c,d){var e;d.helper.dropped&&!b.dragcopy&&(e=a(d.helper).attr("id"),void 0===e&&(e=a(this).attr("id")),a(f).jqGrid("delRowData",e));for(e=0;e<a.data(f,"dnd").connectWith.length;e++)a(a.data(f,"dnd").connectWith[e]).jqGrid("delRowData",
"jqg_empty_row");b.onstop&&a.isFunction(b.onstop)&&b.onstop.call(a(f),c,d)}},b.drag_opts||{})},drop:function(b){return a.extend({accept:function(b){if(!a(b).hasClass("jqgrow"))return b;b=a(b).closest("table.ui-jqgrid-btable");return 0<b.length&&void 0!==a.data(b[0],"dnd")?(b=a.data(b[0],"dnd").connectWith,-1!==a.inArray("#"+a.jgrid.jqID(this.id),b)?!0:!1):!1},drop:function(c,d){if(a(d.draggable).hasClass("jqgrow")){var e=a(d.draggable).attr("id"),e=d.draggable.parent().parent().jqGrid("getRowData",
e);if(!b.dropbyname){var h=0,r={},q,n,s=a("#"+a.jgrid.jqID(this.id)).jqGrid("getGridParam","colModel");try{for(n in e)e.hasOwnProperty(n)&&(q=s[h].name,"cb"!==q&&"rn"!==q&&"subgrid"!==q&&e.hasOwnProperty(n)&&s[h]&&(r[q]=e[n]),h++);e=r}catch(t){}}d.helper.dropped=!0;b.beforedrop&&a.isFunction(b.beforedrop)&&(q=b.beforedrop.call(this,c,d,e,a("#"+a.jgrid.jqID(f.p.id)),a(this)),void 0!==q&&null!==q&&"object"===typeof q&&(e=q));if(d.helper.dropped){var v;b.autoid&&(a.isFunction(b.autoid)?v=b.autoid.call(this,
e):(v=Math.ceil(1E3*Math.random()),v=b.autoidprefix+v));a("#"+a.jgrid.jqID(this.id)).jqGrid("addRowData",v,e,b.droppos)}b.ondrop&&a.isFunction(b.ondrop)&&b.ondrop.call(this,c,d,e)}}},b.drop_opts||{})},onstart:null,onstop:null,beforedrop:null,ondrop:null,drop_opts:{activeClass:"ui-state-active",hoverClass:"ui-state-hover"},drag_opts:{revert:"invalid",helper:"clone",cursor:"move",appendTo:"#jqgrid_dnd",zIndex:5E3},dragcopy:!1,dropbyname:!1,droppos:"first",autoid:!0,autoidprefix:"dnd_"},d||{}),d.connectWith)for(d.connectWith=
d.connectWith.split(","),d.connectWith=a.map(d.connectWith,function(b){return a.trim(b)}),a.data(f,"dnd",d),0===f.p.reccount||f.p.jqgdnd||b(),f.p.jqgdnd=!0,c=0;c<d.connectWith.length;c++)h=d.connectWith[c],a(h).droppable(a.isFunction(d.drop)?d.drop.call(a(f),d):d.drop)})},gridResize:function(d){return this.each(function(){var b=this,f=a.jgrid.jqID(b.p.id);b.grid&&a.fn.resizable&&(d=a.extend({},d||{}),d.alsoResize?(d._alsoResize_=d.alsoResize,delete d.alsoResize):d._alsoResize_=!1,d.stop&&a.isFunction(d.stop)?
(d._stop_=d.stop,delete d.stop):d._stop_=!1,d.stop=function(c,h){a(b).jqGrid("setGridParam",{height:a("#gview_"+f+" .ui-jqgrid-bdiv").height()});a(b).jqGrid("setGridWidth",h.size.width,d.shrinkToFit);d._stop_&&d._stop_.call(b,c,h)},d.alsoResize=d._alsoResize_?eval("("+("{'#gview_"+f+" .ui-jqgrid-bdiv':true,'"+d._alsoResize_+"':true}")+")"):a(".ui-jqgrid-bdiv","#gview_"+f),delete d._alsoResize_,a("#gbox_"+f).resizable(d))})}})})(jQuery);
function tableToGrid(a,d){jQuery(a).each(function(){if(!this.grid){jQuery(this).width("99%");var a=jQuery(this).width(),b=jQuery("tr td:first-child input[type=checkbox]:first",jQuery(this)),f=jQuery("tr td:first-child input[type=radio]:first",jQuery(this)),b=0<b.length,f=!b&&0<f.length,c=b||f,h=[],g=[];jQuery("th",jQuery(this)).each(function(){0===h.length&&c?(h.push({name:"__selection__",index:"__selection__",width:0,hidden:!0}),g.push("__selection__")):(h.push({name:jQuery(this).attr("id")||jQuery.trim(jQuery.jgrid.stripHtml(jQuery(this).html())).split(" ").join("_"),
index:jQuery(this).attr("id")||jQuery.trim(jQuery.jgrid.stripHtml(jQuery(this).html())).split(" ").join("_"),width:jQuery(this).width()||150}),g.push(jQuery(this).html()))});var k=[],l=[],m=[];jQuery("tbody > tr",jQuery(this)).each(function(){var a={},b=0;jQuery("td",jQuery(this)).each(function(){if(0===b&&c){var d=jQuery("input",jQuery(this)),e=d.attr("value");l.push(e||k.length);d.is(":checked")&&m.push(e);a[h[b].name]=d.attr("value")}else a[h[b].name]=jQuery(this).html();b++});0<b&&k.push(a)});
jQuery(this).empty();jQuery(this).addClass("scroll");jQuery(this).jqGrid(jQuery.extend({datatype:"local",width:a,colNames:g,colModel:h,multiselect:b},d||{}));for(a=0;a<k.length;a++)f=null,0<l.length&&(f=l[a])&&f.replace&&(f=encodeURIComponent(f).replace(/[.\-%]/g,"_")),null===f&&(f=a+1),jQuery(this).jqGrid("addRowData",f,k[a]);for(a=0;a<m.length;a++)jQuery(this).jqGrid("setSelection",m[a])}})}
(function(a){function d(a,b){var d,c,h=[],g;if(!this||"function"!==typeof a||a instanceof RegExp)throw new TypeError;g=this.length;for(d=0;d<g;d++)if(this.hasOwnProperty(d)&&(c=this[d],a.call(b,c,d,this))){h.push(c);break}return h}a.assocArraySize=function(a){var b=0,d;for(d in a)a.hasOwnProperty(d)&&b++;return b};a.jgrid.extend({pivotSetup:function(e,b){var f=[],c=[],h=[],g=[],k={grouping:!0,groupingView:{groupField:[],groupSummary:[],groupSummaryPos:[]}},l=[],m=a.extend({rowTotals:!1,rowTotalsText:"Total",
colTotals:!1,groupSummary:!0,groupSummaryPos:"header",frozenStaticCols:!1},b||{});this.each(function(){function b(a,c,e){a=d.call(a,c,e);return 0<a.length?a[0]:null}function r(a,b){var c=0,d=!0,e;for(e in a){if(a[e]!=this[c]){d=!1;break}c++;if(c>=this.length)break}d&&(t=b);return d}function q(b,c,d,e){var f=c.length,h,k,l,m;m=a.isArray(d)?d.length:1;g=[];for(l=g.root=0;l<m;l++){var n=[],p;for(h=0;h<f;h++){if(null==d)p=k=a.trim(c[h].member)+"_"+c[h].aggregator;else{p=d[l].replace(/\s+/g,"");try{k=
1===f?p:p+"_"+c[h].aggregator+"_"+h}catch(q){}}var r=e,s=k,t=n,u=k,v=e[k],w=c[h].member,x=b,y=void 0;switch(c[h].aggregator){case "sum":y=parseFloat(v||0)+parseFloat(x[w]||0);break;case "count":if(""===v||null==v)v=0;y=x.hasOwnProperty(w)?v+1:0;break;case "min":y=""===v||null==v?parseFloat(x[w]||0):Math.min(parseFloat(v),parseFloat(x[w]||0));break;case "max":y=""===v||null==v?parseFloat(x[w]||0):Math.max(parseFloat(v),parseFloat(x[w]||0))}r[s]=t[u]=y}g[p]=n}return e}function n(a){var b,c,d,e,g;for(d in a)if(a.hasOwnProperty(d)){if("object"!==
typeof a[d]&&("level"===d&&(void 0===O[a.level]&&(O[a.level]="",0<a.level&&"_r_Totals"!==a.text&&(l[a.level-1]={useColSpanStyle:!1,groupHeaders:[]})),O[a.level]!==a.text&&a.children.length&&"_r_Totals"!==a.text&&0<a.level&&(l[a.level-1].groupHeaders.push({titleText:a.text}),c=l[a.level-1].groupHeaders.length,g=1===c?Y:W+(c-1)*z,l[a.level-1].groupHeaders[c-1].startColumnName=f[g].name,l[a.level-1].groupHeaders[c-1].numberOfColumns=f.length-g,W=f.length),O[a.level]=a.text),a.level===x&&"level"===d&&
0<x))if(1<z){c=1;for(b in a.fields)1===c&&l[x-1].groupHeaders.push({startColumnName:b,numberOfColumns:1,titleText:a.text}),c++;l[x-1].groupHeaders[l[x-1].groupHeaders.length-1].numberOfColumns=c-1}else l.splice(x-1,1);null!=a[d]&&"object"===typeof a[d]&&n(a[d]);if("level"===d&&0<a.level)for(b in c=0,a.fields){g={};for(e in m.aggregates[c])if(m.aggregates[c].hasOwnProperty(e))switch(e){case "member":case "label":case "aggregator":break;default:g[e]=m.aggregates[c][e]}1<z?(g.name=b,g.label=m.aggregates[c].label||
b):(g.name=a.text,g.label="_r_Totals"===a.text?m.rowTotalsText:a.text);f.push(g);c++}}}var s,t,v,u=e.length,w,x,z,A,J=0;m.rowTotals&&0<m.yDimension.length&&(m.yDimension.splice(0,0,{dataName:m.yDimension[0].dataName}),m.yDimension[0].converter=function(){return"_r_Totals"});w=a.isArray(m.xDimension)?m.xDimension.length:0;x=m.yDimension.length;z=a.isArray(m.aggregates)?m.aggregates.length:0;if(0===w||0===z)throw"xDimension or aggregates optiona are not set!";var B;for(v=0;v<w;v++)B={name:m.xDimension[v].dataName,
frozen:m.frozenStaticCols},B=a.extend(!0,B,m.xDimension[v]),f.push(B);B=w-1;for(var M={};J<u;){s=e[J];var H=[],y=[];A={};v=0;do H[v]=a.trim(s[m.xDimension[v].dataName]),A[m.xDimension[v].dataName]=H[v],v++;while(v<w);var C=0;t=-1;v=b(c,r,H);if(!v){C=0;if(1<=x){for(C=0;C<x;C++)y[C]=a.trim(s[m.yDimension[C].dataName]),m.yDimension[C].converter&&a.isFunction(m.yDimension[C].converter)&&(y[C]=m.yDimension[C].converter.call(this,y[C],H,y));A=q(s,m.aggregates,y,A)}else 0===x&&(A=q(s,m.aggregates,null,A));
c.push(A)}else if(0<=t){C=0;if(1<=x){for(C=0;C<x;C++)y[C]=a.trim(s[m.yDimension[C].dataName]),m.yDimension[C].converter&&a.isFunction(m.yDimension[C].converter)&&(y[C]=m.yDimension[C].converter.call(this,y[C],H,y));v=q(s,m.aggregates,y,v)}else 0===x&&(v=q(s,m.aggregates,null,v));c[t]=v}s=0;var H=A=null,G;for(G in g){if(0===s)M.children&&void 0!==M.children||(M={text:G,level:0,children:[]}),A=M.children;else{H=null;for(v=0;v<A.length;v++)if(A[v].text===G){H=A[v];break}H?A=H.children:(A.push({children:[],
text:G,level:s,fields:g[G]}),A=A[A.length-1].children)}s++}J++}var O=[],W=f.length,Y=W;0<x&&(l[x-1]={useColSpanStyle:!1,groupHeaders:[]});n(M,0);if(m.colTotals)for(J=c.length;J--;)for(v=w;v<f.length;v++)u=f[v].name,h[u]=h[u]?h[u]+parseFloat(c[J][u]||0):parseFloat(c[J][u]||0);if(0<B)for(v=0;v<B;v++)k.groupingView.groupField[v]=f[v].name,k.groupingView.groupSummary[v]=m.groupSummary,k.groupingView.groupSummaryPos[v]=m.groupSummaryPos;else k.grouping=!1;k.sortname=f[B].name;k.groupingView.hideFirstGroupCol=
!0});return{colModel:f,rows:c,groupOptions:k,groupHeaders:l,summary:h}},jqPivot:function(d,b,f,c){return this.each(function(){function h(c){var d=jQuery(g).jqGrid("pivotSetup",c,b),e=0<a.assocArraySize(d.summary)?!0:!1,h=a.jgrid.from(d.rows);for(c=0;c<d.groupOptions.groupingView.groupField.length;c++)h.orderBy(d.groupOptions.groupingView.groupField[c],"a","text","");jQuery(g).jqGrid(a.extend({datastr:a.extend(h.select(),e?{userdata:d.summary}:{}),datatype:"jsonstring",footerrow:e,userDataOnFooter:e,
colModel:d.colModel,viewrecords:!0,sortname:b.xDimension[0].dataName},f||{},d.groupOptions));d=d.groupHeaders;if(d.length)for(c=0;c<d.length;c++)d[c]&&d[c].groupHeaders.length&&jQuery(g).jqGrid("setGroupHeaders",d[c]);b.frozenStaticCols&&jQuery(g).jqGrid("setFrozenColumns")}var g=this;"string"===typeof d?a.ajax(a.extend({url:d,dataType:"json",success:function(b){h(a.jgrid.getAccessor(b,c&&c.reader?c.reader:"rows"))}},c||{})):h(d)})}})})(jQuery);