git-svn-id: file:///svn-source/pmgr/branches/ledger_transactions_20090605/site@103 97e9348a-65ac-dc4b-aefc-98561f571b83
78 lines
3.2 KiB
JavaScript
78 lines
3.2 KiB
JavaScript
;(function($){
|
|
/**
|
|
* jqGrid extension for manipulating columns properties
|
|
* Piotr Roznicki roznicki@o2.pl
|
|
* http://www.roznicki.prv.pl
|
|
* Dual licensed under the MIT and GPL licenses:
|
|
* http://www.opensource.org/licenses/mit-license.php
|
|
* http://www.gnu.org/licenses/gpl.html
|
|
**/
|
|
$.fn.extend({
|
|
setColumns : function(p) {
|
|
p = $.extend({
|
|
top : 0,
|
|
left: 0,
|
|
width: 200,
|
|
height: 195,
|
|
modal: false,
|
|
drag: true,
|
|
closeicon: 'ico-close.gif',
|
|
beforeShowForm: null,
|
|
afterShowForm: null,
|
|
afterSubmitForm: null
|
|
}, $.jgrid.col, p ||{});
|
|
return this.each(function(){
|
|
var $t = this;
|
|
if (!$t.grid ) { return; }
|
|
var onBeforeShow = typeof p.beforeShowForm === 'function' ? true: false;
|
|
var onAfterShow = typeof p.afterShowForm === 'function' ? true: false;
|
|
var onAfterSubmit = typeof p.afterSubmitForm === 'function' ? true: false;
|
|
if(!p.imgpath) { p.imgpath= $t.p.imgpath; } // Added From Tony Tomov
|
|
var gID = $("table:first",$t.grid.bDiv).attr("id");
|
|
var IDs = {themodal:'colmod'+gID,modalhead:'colhd'+gID,modalcontent:'colcnt'+gID};
|
|
var dtbl = "ColTbl_"+gID;
|
|
if ( $("#"+IDs.themodal).html() != null ) {
|
|
if(onBeforeShow) { p.beforeShowForm($("#"+dtbl)); }
|
|
viewModal("#"+IDs.themodal,{modal:p.modal});
|
|
if(onAfterShow) { p.afterShowForm($("#"+dtbl)); }
|
|
} else {
|
|
var tbl =$("<table id='"+dtbl+"' class='ColTable'><tbody></tbody></table>");
|
|
for(i=0;i<this.p.colNames.length;i++){
|
|
if(!$t.p.colModel[i].hidedlg) { // added from T. Tomov
|
|
$(tbl).append("<tr><td ><input type='checkbox' id='col_" + this.p.colModel[i].name + "' class='cbox' value='T' " +
|
|
((this.p.colModel[i].hidden==undefined)?"checked":"") + "/>" + "<label for='col_" + this.p.colModel[i].name + "'>" + this.p.colNames[i] + "(" + this.p.colModel[i].name + ")</label></td></tr>");
|
|
}
|
|
}
|
|
var bS ="<input id='dData' type='button' value='"+p.bSubmit+"'/>";
|
|
var bC ="<input id='eData' type='button' value='"+p.bCancel+"'/>";
|
|
$(tbl).append("<tr><td class='ColButton'>"+bS+" "+bC+"</td></tr>");
|
|
createModal(IDs,tbl,p,$t.grid.hDiv,$t.grid.hDiv);
|
|
if( p.drag) { DnRModal("#"+IDs.themodal,"#"+IDs.modalhead+" td.modaltext"); }
|
|
$("#dData","#"+dtbl).click(function(e){
|
|
for(i=0;i<$t.p.colModel.length;i++){
|
|
if(!$t.p.colModel[i].hidedlg) { // added from T. Tomov
|
|
if($("#col_" + $t.p.colModel[i].name).attr("checked")) {
|
|
$($t).showCol($t.p.colModel[i].name);
|
|
$("#col_" + $t.p.colModel[i].name).attr("defaultChecked",true); // Added from T. Tomov IE BUG
|
|
} else {
|
|
$($t).hideCol($t.p.colModel[i].name);
|
|
$("#col_" + $t.p.colModel[i].name).attr("defaultChecked",""); // Added from T. Tomov IE BUG
|
|
}
|
|
}
|
|
}
|
|
$("#"+IDs.themodal).jqmHide();
|
|
if (onAfterSubmit) { p.afterSubmitForm($("#"+dtbl)); }
|
|
return false;
|
|
});
|
|
$("#eData", "#"+dtbl).click(function(e){
|
|
$("#"+IDs.themodal).jqmHide();
|
|
return false;
|
|
});
|
|
if(onBeforeShow) { p.beforeShowForm($("#"+dtbl)); }
|
|
viewModal("#"+IDs.themodal,{modal:p.modal});
|
|
if(onAfterShow) { p.afterShowForm($("#"+dtbl)); }
|
|
}
|
|
});
|
|
}
|
|
});
|
|
})(jQuery); |