/**
 * jQuery EasyUI 1.2.2
 * 
 * Licensed under the GPL:
 *   http://www.gnu.org/licenses/gpl.txt
 *
 * Copyright 2010 stworthy [ stworthy@gmail.com ] 
 * 
 */
(function($){
function _1(_2){
var _3=$.data(_2,"pagination").options;
var _4=$(_2).addClass("pagination").empty();
var t=$("<table cellspacing=\"0\" cellpadding=\"0\" border=\"0\"><tr></tr></table>").appendTo(_4);
var tr=$("tr",t);
if(_3.showPageList){
var ps=$("<select class=\"pagination-page-list\"></select>");
for(var i=0;i<_3.pageList.length;i++){
$("<option></option>").text(_3.pageList[i]).attr("selected",_3.pageList[i]==_3.pageSize?"selected":"").appendTo(ps);
}
$("<td></td>").append(ps).appendTo(tr);
_3.pageSize=parseInt(ps.val());
$("<td><div class=\"pagination-btn-separator\"></div></td>").appendTo(tr);
}
$("<td><a href=\"javascript:void(0)\" icon=\"pagination-first\"></a></td>").appendTo(tr);
$("<td><a href=\"javascript:void(0)\" icon=\"pagination-prev\"></a></td>").appendTo(tr);
$("<td><div class=\"pagination-btn-separator\"></div></td>").appendTo(tr);
$("<span style=\"padding-left:6px;\"></span>").html(_3.beforePageText).wrap("<td></td>").parent().appendTo(tr);
$("<td><input class=\"pagination-num\" type=\"text\" value=\"1\" size=\"2\"></td>").appendTo(tr);
$("<span style=\"padding-right:6px;\"></span>").wrap("<td></td>").parent().appendTo(tr);
$("<td><div class=\"pagination-btn-separator\"></div></td>").appendTo(tr);
$("<td><a href=\"javascript:void(0)\" icon=\"pagination-next\"></a></td>").appendTo(tr);
$("<td><a href=\"javascript:void(0)\" icon=\"pagination-last\"></a></td>").appendTo(tr);
if(_3.showRefresh){
$("<td><div class=\"pagination-btn-separator\"></div></td>").appendTo(tr);
$("<td><a href=\"javascript:void(0)\" icon=\"pagination-load\"></a></td>").appendTo(tr);
}
if(_3.buttons){
$("<td><div class=\"pagination-btn-separator\"></div></td>").appendTo(tr);
for(var i=0;i<_3.buttons.length;i++){
var _5=_3.buttons[i];
if(_5=="-"){
$("<td><div class=\"pagination-btn-separator\"></div></td>").appendTo(tr);
}else{
var td=$("<td></td>").appendTo(tr);
$("<a href=\"javascript:void(0)\"></a>").addClass("l-btn").css("float","left").text(_5.text||"").attr("icon",_5.iconCls||"").bind("click",eval(_5.handler||function(){
})).appendTo(td).linkbutton({plain:true});
}
}
}
$("<div class=\"pagination-info\"></div>").appendTo(_4);
$("<div style=\"clear:both;\"></div>").appendTo(_4);
$("a[icon^=pagination]",_4).linkbutton({plain:true});
_4.find("a[icon=pagination-first]").unbind(".pagination").bind("click.pagination",function(){
if(_3.pageNumber>1){
_a(_2,1);
}
});
_4.find("a[icon=pagination-prev]").unbind(".pagination").bind("click.pagination",function(){
if(_3.pageNumber>1){
_a(_2,_3.pageNumber-1);
}
});
_4.find("a[icon=pagination-next]").unbind(".pagination").bind("click.pagination",function(){
var _6=Math.ceil(_3.total/_3.pageSize);
if(_3.pageNumber<_6){
_a(_2,_3.pageNumber+1);
}
});
_4.find("a[icon=pagination-last]").unbind(".pagination").bind("click.pagination",function(){
var _7=Math.ceil(_3.total/_3.pageSize);
if(_3.pageNumber<_7){
_a(_2,_7);
}
});
_4.find("a[icon=pagination-load]").unbind(".pagination").bind("click.pagination",function(){
if(_3.onBeforeRefresh.call(_2,_3.pageNumber,_3.pageSize)!=false){
_a(_2,_3.pageNumber);
_3.onRefresh.call(_2,_3.pageNumber,_3.pageSize);
}
});
_4.find("input.pagination-num").unbind(".pagination").bind("keydown.pagination",function(e){
if(e.keyCode==13){
var _8=parseInt($(this).val())||1;
_a(_2,_8);
}
});
_4.find(".pagination-page-list").unbind(".pagination").bind("change.pagination",function(){
_3.pageSize=$(this).val();
_3.onChangePageSize.call(_2,_3.pageSize);
var _9=Math.ceil(_3.total/_3.pageSize);
_a(_2,_3.pageNumber);
});
};
function _a(_b,_c){
var _d=$.data(_b,"pagination").options;
var _e=Math.ceil(_d.total/_d.pageSize)||1;
var _f=_c;
if(_c<1){
_f=1;
}
if(_c>_e){
_f=_e;
}
_d.onSelectPage.call(_b,_f,_d.pageSize);
_d.pageNumber=_f;
_10(_b);
};
function _10(_11){
var _12=$.data(_11,"pagination").options;
var _13=Math.ceil(_12.total/_12.pageSize)||1;
var num=$(_11).find("input.pagination-num");
num.val(_12.pageNumber);
num.parent().next().find("span").html(_12.afterPageText.replace(/{pages}/,_13));
var _14=_12.displayMsg;
_14=_14.replace(/{from}/,_12.pageSize*(_12.pageNumber-1)+1);
_14=_14.replace(/{to}/,Math.min(_12.pageSize*(_12.pageNumber),_12.total));
_14=_14.replace(/{total}/,_12.total);
$(_11).find(".pagination-info").html(_14);
$("a[icon=pagination-first],a[icon=pagination-prev]",_11).linkbutton({disabled:(_12.pageNumber==1)});
$("a[icon=pagination-next],a[icon=pagination-last]",_11).linkbutton({disabled:(_12.pageNumber==_13)});
if(_12.loading){
$(_11).find("a[icon=pagination-load]").find(".pagination-load").addClass("pagination-loading");
}else{
$(_11).find("a[icon=pagination-load]").find(".pagination-load").removeClass("pagination-loading");
}
};
function _15(_16,_17){
var _18=$.data(_16,"pagination").options;
_18.loading=_17;
if(_18.loading){
$(_16).find("a[icon=pagination-load]").find(".pagination-load").addClass("pagination-loading");
}else{
$(_16).find("a[icon=pagination-load]").find(".pagination-load").removeClass("pagination-loading");
}
};
$.fn.pagination=function(_19,_1a){
if(typeof _19=="string"){
return $.fn.pagination.methods[_19](this,_1a);
}
_19=_19||{};
return this.each(function(){
var _1b;
var _1c=$.data(this,"pagination");
if(_1c){
_1b=$.extend(_1c.options,_19);
}else{
_1b=$.extend({},$.fn.pagination.defaults,_19);
$.data(this,"pagination",{options:_1b});
}
_1(this);
_10(this);
});
};
$.fn.pagination.methods={options:function(jq){
return $.data(jq[0],"pagination").options;
},loading:function(jq){
return jq.each(function(){
_15(this,true);
});
},loaded:function(jq){
return jq.each(function(){
_15(this,false);
});
}};
$.fn.pagination.defaults={total:1,pageSize:10,pageNumber:1,pageList:[10,20,30,50],loading:false,buttons:null,showPageList:true,showRefresh:true,onSelectPage:function(_1d,_1e){
},onBeforeRefresh:function(_1f,_20){
},onRefresh:function(_21,_22){
},onChangePageSize:function(_23){
},beforePageText:"Page",afterPageText:"of {pages}",displayMsg:"Data dari {from} ke {to} Total {total} items"};
})(jQuery);

