/* (c) 2008-2014 Samnan ur Rehman @web http://mywebsql.net @license http://mywebsql.net/license */ var curEditField=null,curEditType=null,fieldInfo=null,editOptions={sortable:!0,highlight:!0,selectable:!0,editEvent:"dblclick",editFunc:editTableCell},selectedRow=-1,res_modified=!1,editHorizontal=!1,editListOpen=!1; function setupTable(a,b){res_modified=!1;b.editEvent||(b.editEvent="dblclick");b.editFunc||(b.editFunc=editTableCell);b.sortable&&2<$("#"+a+" tbody tr").length&&(createTableHeader(a.substr(0,4)),1==b.sortable?$("#dataHeader thead th").live("click",function(){if($(this).attr("class").match(/tch|th_nosort/))return!0;var a=$(this).index();editTableName&&""!=editTableName&&a--;goSort(a)}):"inline"==b.sortable&&$("#"+a).sorttable());b.highlight&&($("#"+a+" > tbody > tr").live("mouseenter",function(){$(this).addClass("ui-state-hover")}), $("#"+a+" > tbody > tr").live("mouseleave",function(){$(this).removeClass("ui-state-hover")}));b.selectable&&$("#"+a+" > tbody > tr").live("click",function(){null!=selectedRow&&$(selectedRow).removeClass("ui-state-active");$(this).addClass("ui-state-active");selectedRow=this});b.editable&&(editOptions=b,$("#"+a+" td.edit").bind(b.editEvent,b.editFunc),jQuery.support.touch&&$("#"+a+" td.edit").bind("taphold",b.editFunc),$("#inplace-text textarea").unbind("keydown").bind("keydown",checkEditField))} function editTableCell(){td=$(this);null!=curEditField&&closeEditor(!0);isBlob=td.find("span.i").length;txt=(isText=td.find("span.d").length)?td.find("span.d").text():isBlob?td.find("span.i").text():td.text();tstyle=td.hasClass("tr")?"right":"left";td.data("defText",txt);curEditField=this;index=td.index()-2;fi=getFieldInfo(index);w=td.width()-(isBlob?22:0);h=td.height();td.attr("width",w);(input=createCellEditor(td,fi,txt,w,h,tstyle))&&setTimeout(function(){input.focus();td.ensureVisible($("#results-div"), editHorizontal)},50)} function closeEditor(a,b){if(curEditField){obj=$(curEditField);txt="";var c={};if(a){if(1';1==b.blob?"binary"==b.type?(code+='',code+="",a.find("span.i").html(code),input=a.find("input"),input.val(c).bind(keyEvent,checkEditField).blur(function(){closeEditor(!0)})):(span=$(a).find("span.d"), c=span.text(),optionsGet("ui-edit-popup")?($("#dialog-text-editor").dialog({autoOpen:!0,width:500,height:300,modal:!0,open:function(){$("#text-editor").val(c);window.hotkeys.suspend(!0)},buttons:[{text:__("Cancel"),click:function(){window.hotkeys.suspend(!1);$(this).dialog("close")}},{text:__("Save"),click:function(){c=$("#text-editor").val();span.text(c);a.find("span.i").text(0==c.length?"":c.length<=MAX_TEXT_LENGTH_DISPLAY?c:"Text Data ["+formatBytes(c.length)+"]").removeClass("tnl");var b={};b.value= c;b.setNull=!1;a.parent().hasClass("n")||a.parent().addClass("x");a.data("edit",b).addClass("x");"function"==typeof showNavBtn&&showNavBtn("update","gensql");curEditField=null;window.hotkeys.suspend(!1);$(this).dialog("close")}}]}),input=null):(d=a.width()-20,200>d&&(d=200),textarea=$("#inplace-text textarea"),textarea.width(d).val(c),$("#inplace-text").show().position({of:a,my:"left top",at:"left top",offset:0}),$("#inplace-text textarea").blur(function(){closeEditor(!0)}),curEditType="text",input= textarea)):(code+='',b.list&&0▾':!b.type||"datetime"!=b.type&&"date"!=b.type||(code+='
;'),code+="",a.html(code),input=a.find("input"),input.val(c).select().bind(keyEvent,checkEditField).blur(function(a){editListOpen||closeEditor(!0)}), b.list&&0=$(b+" tbody tr").length)){var c="data"==a?"#results-div":"#info-div";$("#"+a+"Header").remove();var d=$(b).clone();d.find("tbody").remove();d.attr("id",a+"Header").appendTo(c);$(c).scroll(function(){var a=parseInt($(this).scrollTop());d.css({top:a+"px"})})}} function resizeTableHeader(a){var b="#"+a+"Table";if(!(2>=$(b+" tbody tr").length)){a=$("#"+a+"Header");a.width($(b).width());var b=$(b+" thead th"),c=b.length;for(i=0;ip.left&&a.prop("scrollLeft",p.left)):(pt=a.prop("scrollTop"),ph=a.height(),p=this.position(),h=this.height(),php.top&&a.prop("scrollTop",p.top))}; $.fn.setSearchFilter=function(a){""==a?$("tr",this).removeClass("ui-helper-hidden"):(string=a.toUpperCase(),$("tbody tr",this).each(function(){var a=!1;$("td",this).each(function(){if($(this).text().toUpperCase().match(string))return a=!0});a?$(this).removeClass("ui-helper-hidden"):$(this).addClass("ui-helper-hidden")}))}; (function(a){a.fn.sorttable=function(b){return this.each(function(){var c=a(this),d=a("#"+c.attr("id").replace("Table","Header"));b=b||{};b=a.extend({},a.fn.sorttable.default_sort_fns,b);d.on("click.sorttable","thead th",function(){var d=a(this),f=0,e=a.fn.sorttable.dir;d.parents("tr").find("th").slice(0,d.index()).each(function(){var b=a(this).attr("colspan")||1;f+=parseInt(b,10)});var g=d.data("sort-default")||e.ASC;d.data("sort-dir")&&(g=d.data("sort-dir")===e.ASC?e.DESC:e.ASC);var m=d.data("sort")|| null;null!==m&&(c.css("display"),setTimeout(function(){var k=[],n=b[m],l=c.children("tbody").children("tr");l.each(function(b,c){var d=a(c).children().eq(f),e=d.data("sort-value"),d="undefined"!==typeof e?e:d.text();k.push([d,c])});k.sort(function(a,b){return n(a[0],b[0])});g!=e.ASC&&k.reverse();l=a.map(k,function(a){return a[1]});c.children("tbody").append(l);c.find("th").data("sort-dir",null).removeClass("sorting-desc sorting-asc");d.data("sort-dir",g).addClass("sorting-"+g);d.parent().find("span").remove(); c.find("thead span").remove();d.find("div").append(g==e.ASC?" ▴":" ▾");c.find("thead th:eq("+f+") div").append(g==e.ASC?" ▴":" ▾");resizeTableHeader("info");a("tbody tr",c).each(function(b){a("td:eq(0)",this).html(b+1)});c.css("display")},10))})})};a.fn.sorttable.dir={ASC:"asc",DESC:"desc"};a.fn.sorttable.default_sort_fns={numeric:function(a,c){return"NULL"!=a&&"NULL"!=c?parseInt(a,10)-parseInt(c,10):"NULL"== a?-1:1},"float":function(a,c){return"NULL"!=a&&"NULL"!=c?parseFloat(a)-parseFloat(c):"NULL"==a?-1:1},text:function(a,c){return"NULL"!=a&&"NULL"!=c?a.localeCompare(c):"NULL"==a?-1:1},"text-ins":function(a,c){a=a.toLocaleLowerCase();c=c.toLocaleLowerCase();return a.localeCompare(c)}}})(jQuery);