src/ztfy/myams/resources/js/ext/jquery-tablednd.min.js
changeset 108 41b902f8a713
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/ztfy/myams/resources/js/ext/jquery-tablednd.min.js	Fri Mar 27 15:53:44 2015 +0100
@@ -0,0 +1,1 @@
+!function(e,c,a,g){var d="ontouchstart" in a.documentElement,b="touchstart mousedown",f="touchmove mousemove",h="touchend mouseup";d&&e.each("touchstart touchmove touchend".split(" "),function(k,j){e.event.fixHooks[j]=e.event.mouseHooks});e(a).ready(function(){function i(k){var j={},l=k.match(/([^;:]+)/g)||[];while(l.length){j[l.shift()]=l.shift().trim()}return j}e("table").each(function(){if(e(this).data("table")=="dnd"){e(this).tableDnD({onDragStyle:e(this).data("ondragstyle")&&i(e(this).data("ondragstyle"))||null,onDropStyle:e(this).data("ondropstyle")&&i(e(this).data("ondropstyle"))||null,onDragClass:e(this).data("ondragclass")==g&&"tDnD_whileDrag"||e(this).data("ondragclass"),onDrop:e(this).data("ondrop")&&new Function("table","row",e(this).data("ondrop")),onDragStart:e(this).data("ondragstart")&&new Function("table","row",e(this).data("ondragstart")),scrollAmount:e(this).data("scrollamount")||5,sensitivity:e(this).data("sensitivity")||10,hierarchyLevel:e(this).data("hierarchylevel")||0,indentArtifact:e(this).data("indentartifact")||'<div class="indent">&nbsp;</div>',autoWidthAdjust:e(this).data("autowidthadjust")||true,autoCleanRelations:e(this).data("autocleanrelations")||true,jsonPretifySeparator:e(this).data("jsonpretifyseparator")||"\t",serializeRegexp:e(this).data("serializeregexp")&&new RegExp(e(this).data("serializeregexp"))||/[^\-]*$/,serializeParamName:e(this).data("serializeparamname")||false,dragHandle:e(this).data("draghandle")||null})}})});jQuery.tableDnD={currentTable:null,dragObject:null,mouseOffset:null,oldX:0,oldY:0,build:function(i){this.each(function(){this.tableDnDConfig=e.extend({onDragStyle:null,onDropStyle:null,onDragClass:"tDnD_whileDrag",onDrop:null,onDragStart:null,scrollAmount:5,sensitivity:10,hierarchyLevel:0,indentArtifact:'<div class="indent">&nbsp;</div>',autoWidthAdjust:true,autoCleanRelations:true,jsonPretifySeparator:"\t",serializeRegexp:/[^\-]*$/,serializeParamName:false,dragHandle:null},i||{});e.tableDnD.makeDraggable(this);this.tableDnDConfig.hierarchyLevel&&e.tableDnD.makeIndented(this)});return this},makeIndented:function(p){var i=p.tableDnDConfig,q=p.rows,m=e(q).first().find("td:first")[0],o=0,j=0,l,k;if(e(p).hasClass("indtd")){return null}k=e(p).addClass("indtd").attr("style");e(p).css({whiteSpace:"nowrap"});for(var n=0;n<q.length;n++){if(j<e(q[n]).find("td:first").text().length){j=e(q[n]).find("td:first").text().length;l=n}}e(m).css({width:"auto"});for(n=0;n<i.hierarchyLevel;n++){e(q[l]).find("td:first").prepend(i.indentArtifact)}m&&e(m).css({width:m.offsetWidth});k&&e(p).css(k);for(n=0;n<i.hierarchyLevel;n++){e(q[l]).find("td:first").children(":first").remove()}i.hierarchyLevel&&e(q).each(function(){o=e(this).data("level")||0;o<=i.hierarchyLevel&&e(this).data("level",o)||e(this).data("level",0);for(var r=0;r<e(this).data("level");r++){e(this).find("td:first").prepend(i.indentArtifact)}});return this},makeDraggable:function(j){var i=j.tableDnDConfig;i.dragHandle&&e(i.dragHandle,j).each(function(){e(this).bind(b,function(k){e.tableDnD.initialiseDrag(e(this).parents("tr")[0],j,this,k,i);return false})})||e(j.rows).each(function(){if(!e(this).hasClass("nodrag")){e(this).bind(b,function(k){if(k.target.tagName=="TD"){e.tableDnD.initialiseDrag(this,j,this,k,i);return false}}).css("cursor","move")}})},currentOrder:function(){var i=this.currentTable.rows;return e.map(i,function(j){return(e(j).data("level")+j.id).replace(/\s/g,"")}).join("")},initialiseDrag:function(k,j,m,l,i){this.dragObject=k;this.currentTable=j;this.mouseOffset=this.getMouseOffset(m,l);this.originalOrder=this.currentOrder();e(a).bind(f,this.mousemove).bind(h,this.mouseup);i.onDragStart&&i.onDragStart(j,m)},updateTables:function(){this.each(function(){if(this.tableDnDConfig){e.tableDnD.makeDraggable(this)}})},mouseCoords:function(i){i=i||c.event;if(i.changedTouches){return{x:i.changedTouches[0].clientX,y:i.changedTouches[0].clientY}}if(i.pageX||i.pageY){return{x:i.pageX,y:i.pageY}}return{x:i.clientX+a.body.scrollLeft-a.body.clientLeft,y:i.clientY+a.body.scrollTop-a.body.clientTop}},getMouseOffset:function(l,k){var i,j;k=k||c.event;j=this.getPosition(l);i=this.mouseCoords(k);return{x:i.x-j.x,y:i.y-j.y}},getPosition:function(i){var k=0,j=0;if(i.offsetHeight==0){i=i.firstChild}while(i.offsetParent){k+=i.offsetLeft;j+=i.offsetTop;i=i.offsetParent}k+=i.offsetLeft;j+=i.offsetTop;return{x:k,y:j}},autoScroll:function(i){var j=this.currentTable.tableDnDConfig,k=c.pageYOffset,l=c.innerHeight?c.innerHeight:a.documentElement.clientHeight?a.documentElement.clientHeight:a.body.clientHeight;if(a.all){if(typeof a.compatMode!="undefined"&&a.compatMode!="BackCompat"){k=a.documentElement.scrollTop}else{if(typeof a.body!="undefined"){k=a.body.scrollTop}}}i.y-k<j.scrollAmount&&c.scrollBy(0,-j.scrollAmount)||l-(i.y-k)<j.scrollAmount&&c.scrollBy(0,j.scrollAmount)},moveVerticle:function(i,j){if(0!=i.vertical&&j&&this.dragObject!=j&&this.dragObject.parentNode==j.parentNode){0>i.vertical&&this.dragObject.parentNode.insertBefore(this.dragObject,j.nextSibling)||0<i.vertical&&this.dragObject.parentNode.insertBefore(this.dragObject,j)}},moveHorizontal:function(i,k){var j=this.currentTable.tableDnDConfig,l;if(!j.hierarchyLevel||0==i.horizontal||!k||this.dragObject!=k){return null}l=e(k).data("level");0<i.horizontal&&l>0&&e(k).find("td:first").children(":first").remove()&&e(k).data("level",--l);0>i.horizontal&&l<j.hierarchyLevel&&e(k).prev().data("level")>=l&&e(k).children(":first").prepend(j.indentArtifact)&&e(k).data("level",++l)},mousemove:function(o){var n=e(e.tableDnD.dragObject),m=e.tableDnD.currentTable.tableDnDConfig,l,k,j,i,p;o&&o.preventDefault();if(!e.tableDnD.dragObject){return false}o.type=="touchmove"&&event.preventDefault();m.onDragClass&&n.addClass(m.onDragClass)||n.css(m.onDragStyle);k=e.tableDnD.mouseCoords(o);i=k.x-e.tableDnD.mouseOffset.x;p=k.y-e.tableDnD.mouseOffset.y;e.tableDnD.autoScroll(k);l=e.tableDnD.findDropTargetRow(n,p);j=e.tableDnD.findDragDirection(i,p);e.tableDnD.moveVerticle(j,l);e.tableDnD.moveHorizontal(j,l);return false},findDragDirection:function(o,n){var l=this.currentTable.tableDnDConfig.sensitivity,r=this.oldX,p=this.oldY,j=r-l,m=r+l,q=p-l,k=p+l,i={horizontal:o>=j&&o<=m?0:o>r?-1:1,vertical:n>=q&&n<=k?0:n>p?-1:1};if(i.horizontal!=0){this.oldX=o}if(i.vertical!=0){this.oldY=n}return i},findDropTargetRow:function(n,q){var m=0,o=this.currentTable.rows,k=this.currentTable.tableDnDConfig,j=0,p=null;for(var l=0;l<o.length;l++){p=o[l];j=this.getPosition(p).y;m=parseInt(p.offsetHeight)/2;if(p.offsetHeight==0){j=this.getPosition(p.firstChild).y;m=parseInt(p.firstChild.offsetHeight)/2}if(q>(j-m)&&q<(j+m)){if(n.is(p)||(k.onAllowDrop&&!k.onAllowDrop(n,p))||e(p).hasClass("nodrop")){return null}else{return p}}}return null},processMouseup:function(){if(!this.currentTable||!this.dragObject){return null}var i=this.currentTable.tableDnDConfig,j=this.dragObject,l=0,k=0;e(a).unbind(f,this.mousemove).unbind(h,this.mouseup);i.hierarchyLevel&&i.autoCleanRelations&&e(this.currentTable.rows).first().find("td:first").children().each(function(){k=e(this).parents("tr:first").data("level");k&&e(this).parents("tr:first").data("level",--k)&&e(this).remove()})&&i.hierarchyLevel>1&&e(this.currentTable.rows).each(function(){k=e(this).data("level");if(k>1){l=e(this).prev().data("level");while(k>l+1){e(this).find("td:first").children(":first").remove();e(this).data("level",--k)}}});i.onDragClass&&e(j).removeClass(i.onDragClass)||e(j).css(i.onDropStyle);this.dragObject=null;i.onDrop&&this.originalOrder!=this.currentOrder()&&e(j).hide().fadeIn("fast")&&i.onDrop(this.currentTable,j);this.currentTable=null},mouseup:function(i){i&&i.preventDefault();e.tableDnD.processMouseup();return false},jsonize:function(i){var j=this.currentTable;if(i){return JSON.stringify(this.tableData(j),null,j.tableDnDConfig.jsonPretifySeparator)}return JSON.stringify(this.tableData(j))},serialize:function(){return e.param(this.tableData(this.currentTable))},serializeTable:function(l){var j="";var o=l.tableDnDConfig.serializeParamName||l.id;var m=l.rows;for(var k=0;k<m.length;k++){if(j.length>0){j+="&"}var n=m[k].id;if(n&&l.tableDnDConfig&&l.tableDnDConfig.serializeRegexp){n=n.match(l.tableDnDConfig.serializeRegexp)[0];j+=o+"[]="+n}}return j},serializeTables:function(){var i=[];e("table").each(function(){this.id&&i.push(e.param(this.tableData(this)))});return i.join("&")},tableData:function(u){var n=u.tableDnDConfig,k=[],l=0,t=0,s=null,p={},m,r,j,v;if(!u){u=this.currentTable}if(!u||!u.id||!u.rows||!u.rows.length){return{error:{code:500,message:"Not a valid table, no serializable unique id provided."}}}v=n.autoCleanRelations&&u.rows||e.makeArray(u.rows);r=n.serializeParamName||u.id;j=r;m=function(i){if(i&&n&&n.serializeRegexp){return i.match(n.serializeRegexp)[0]}return i};p[j]=[];!n.autoCleanRelations&&e(v[0]).data("level")&&v.unshift({id:"undefined"});for(var o=0;o<v.length;o++){if(n.hierarchyLevel){t=e(v[o]).data("level")||0;if(t==0){j=r;k=[]}else{if(t>l){k.push([j,l]);j=m(v[o-1].id)}else{if(t<l){for(var q=0;q<k.length;q++){if(k[q][1]==t){j=k[q][0]}if(k[q][1]>=l){k[q][1]=0}}}}}l=t;if(!e.isArray(p[j])){p[j]=[]}s=m(v[o].id);s&&p[j].push(s)}else{s=m(v[o].id);s&&p[j].push(s)}}return p}};jQuery.fn.extend({tableDnD:e.tableDnD.build,tableDnDUpdate:e.tableDnD.updateTables,tableDnDSerialize:e.proxy(e.tableDnD.serialize,e.tableDnD),tableDnDSerializeAll:e.tableDnD.serializeTables,tableDnDData:e.proxy(e.tableDnD.tableData,e.tableDnD)})}(jQuery,window,window.document);
\ No newline at end of file