siddharth_application/assets/js/tsort.min.js
venbatechnologies@gmail.com 3650012dcb capital po updates done
2017-06-30 20:49:26 +05:30

19 lines
5.7 KiB
JavaScript
Executable File

/*
* jQuery Animated Table Sorter 0.2.2 (02/25/2013)
*
* http://www.matanhershberg.com/plugins/jquery-animated-table-sorter/
*
*/
(function(a){a.fn.tableSort=function(q){var b=a.extend({animation:"slide",rowspan:!1,sortAs:{},speed:300,distance:"300px",delay:1},q);return this.each(function(){function q(e){for(var b="",d=0;d<=e.length;d++)if(a.isNumeric(e.charAt(d))||"."==e.charAt(d))b+=e.charAt(d);return b}var h=[],n=[],l=!1,p=[],j=[],r=[],m=[],f,c=a(this),l=!1;!0==b.rowspan&&a(c).find("td").each(function(){if(void 0!=a(this).attr("rowspan")){var b=a(this).attr("rowspan");a(this).removeAttr("rowspan");for(var c=a(this).parent().index(),
d=1;1<b;){switch(a(this).index()){case 0:a(this).clone().prependTo(a(this).parent().parent().children().eq(c+d));break;default:a(this).clone().insertAfter(a(this).parent().parent().children().eq(c+d).children().eq(a(this).index()-1))}d++;b--}}});0>=b.delay&&(b.delay=1);a(c).find("tr:first-child th").each(function(e){if(void 0!=b.sortBy)switch(b.sortBy[e]){case "text":case "numeric":case "nosort":m[e]=b.sortBy[e];return}if(void 0!=a(this).attr("data-sort"))switch(a(this).attr("data-sort")){case "text":case "numeric":case "nosort":m[e]=
a(this).attr("data-sort");return}for(var g=a(c).find("tr:eq(1) td:eq("+e+")").text(),d=0,h=0,f=0;f<=g.length-1;f++)a.isNumeric(g.charAt(f))||","==g.charAt(f)||"."==g.charAt(f)?d++:h++;m[e]=d>h?"numeric":"text"});a(c).css("position","relative");a(c).find("tr:first-child th").each(function(b){"nosort"!=m[b]&&a('<div class="sortArrow"><div class="sortArrowAscending"></div><div class="sortArrowDescending"></div></div>').appendTo(a(this))});a(c).find("tr:first-child th").each(function(){r.push(a(this).outerWidth(!0))});
a(c).find("tr td, tr th").each(function(){a(this).css({minWidth:r[a(this).index()]})});a(c).find("tr").each(function(){a(this).width(a(this).outerWidth(!0));a(this).height(a(this).outerHeight(!0))});a(c).height(a(this).outerHeight()).width(a(this).outerWidth());var g=0;a(c).find("tr").each(function(){a(this).css("top",g);g+=a(this).outerHeight()});a(c).find("tr").each(function(){a(this).css("position","absolute")});a(c).find("tr th").each(function(b){"nosort"!=m[b]&&a(this).css("cursor","pointer")});
a(c).find("tr th").click(function(){if(!l&&"nosort"!=m[a(this).index()]){f=a(this).index();0==h.length&&a(c).find("tr").each(function(d){0<d&&a(this).addClass("tsort_id-"+(d-1));a(this).find("td").each(function(c){a(this).is(":first-child")&&(h.push({}),h[h.length-1].id=d-1,h[h.length-1].td=[],h[h.length-1].height=a(this).parent().height());void 0!=a(this).attr("data-sortAs")?h[h.length-1].td.push(a(this).attr("data-sortAs")):void 0!=typeof b.sortAs&&void 0!=b.sortAs[a(this).text()]?h[h.length-1].td.push(b.sortAs[a(this).text()]):
"numeric"==m[c]?h[h.length-1].td.push(q(a(this).text())):h[h.length-1].td.push(a(this).text())})});p[f]||(p[f]=h.concat(),"numeric"==m[f]?p[f].sort(function(a,b){return a.td[f]-b.td[f]}):"text"==m[f]&&p[f].sort(function(a,b){return a.td[f].localeCompare(b.td[f])}));if(0==j.length)j.push({column_id:f,direction:"ascending"});else if(0!=j.length)if(f==j[j.length-1].column_id)switch(j[j.length-1].direction){case "ascending":j.push({column_id:f,direction:"descending"});break;case "descending":j.push({column_id:f,
direction:"ascending"})}else j.push({column_id:f,direction:"ascending"});var e=p[f],e="ascending"==j[j.length-1].direction?e.concat():e.concat().reverse();g=a(c).find("tr").height();if("none"==b.animation)for(index=0;index<e.length;index++){var k=e[index];a(c).find("tr.tsort_id-"+k.id).css({top:g}).appendTo(c);g+=k.height}else if("slide"==b.animation)for(index=0;index<e.length;index++)k=e[index],a(c).find("tr.tsort_id-"+k.id).stop().delay(b.delay*index).animate({top:g},b.speed,"swing").appendTo(c),
g+=k.height;else if("fadeAll"==b.animation)l=!0,a(c).find("tr:gt(0)").fadeOut(b.speed).promise().done(function(){for(index=0;index<e.length;index++){var d=e[index];a(c).find("tr.tsort_id-"+d.id).css({top:g}).appendTo(c);g+=d.height;index==h.length-1&&a(c).find("tr").delay(1).fadeIn(b.speed,"swing").promise().done(function(){l=!1})}});else if("fade"==b.animation){l=!0;if(0==n.length)for(index=0;index<e.length;index++)k=e[index],n[k.id]=a(c).find("tr.tsort_id-"+k.id).clone();a(c).find("tr:gt(0)").each(function(d){a(this).delay(d*
b.delay).fadeOut(b.speed,"swing",function(){a(this).remove();a(n[e[d].id]).clone().hide().css({top:g}).appendTo(c).delay(1).fadeIn(b.speed,"swing",function(){d==h.length-1&&(l=!1)});g+=e[d].height})})}else if("slideLeftAll"==b.animation)l=!0,a(c).find("tr:gt(0)").each(function(d){a(this).delay(d*b.delay).animate({left:"-"+b.distance,opacity:0},b.speed,"swing");d==h.length-1&&a(this).promise().done(function(){for(d=0;d<e.length;d++){var f=e[d];a(c).find("tr.tsort_id-"+f.id).css({top:g,left:"",right:"-"+
b.distance}).appendTo(c).delay(d*b.delay).animate({right:"0px",opacity:1},b.speed,"swing",function(){a(this).css("right","auto");a(this).is("tr:last-child")&&(l=!1)});g+=f.height}})});else if("slideLeft"==b.animation){l=!0;if(0==n.length)for(index=0;index<e.length;index++)k=e[index],n[k.id]=a(c).find("tr.tsort_id-"+k.id).clone();a(c).find("tr:gt(0)").each(function(d){a(this).delay(d*b.delay).animate({left:"-"+b.distance,opacity:0},b.speed,"swing",function(){a(this).remove();a(n[e[d].id]).clone().css({opacity:0}).appendTo(c).css({top:g,
left:"",right:"-"+b.distance}).animate({right:"0px",opacity:1},b.speed,function(){a(this).css("right","auto");d==h.length-1&&(l=!1)});g+=e[d].height})})}k=j[j.length-1].direction;a(c).find("tr:first-child th div.sortArrow div").stop(!0,!0).fadeOut(b.speed,"swing");switch(k){case "ascending":a(c).find("tr:first-child th div.sortArrow div.sortArrowAscending").eq(f).fadeIn(b.speed,"swing");break;case "descending":a(c).find("tr:first-child th div.sortArrow div.sortArrowDescending").eq(f).fadeIn(b.speed,
"swing")}}})})}})(jQuery);