/**
 * OK
 * 分页查询js,需要载入prototype.js
 */
var PageQuery = {
   ajaxLink:false,
   showProgress:true,
/**
 * 分页查询刷新按钮事件
 * formName: 表单名称
 * updateElement: 请求完成后ajax局部更新的对象id
 */
  refresh: function (formName, updateElement) {
    if(PageQuery.ajaxLink){
      var pageForm = $(formName);
      var url = pageForm.action;
      if (updateElement == null) {
        updateElement = "bodyContent";
      }
      var param = ("refresh=1").concat("&timeSerial=").concat(new Date().getTime());
      var options = {
        method: "get",
        parameters: param,
        asynchronous:true,
        onCreate: PageQuery.showTitle(),
        onComplete: function(request) {
          Document.responseComplete(request,updateElement);
        },
        onFailure:function(request) {
          if(PageQuery.showProgress) {
            Window.destroyProgress();
          }
          alert("系统出现错误！");
        }
      }
      var ajax = new Ajax.Request(url, options);
    }
    else{
      var pageForm = $(formName);
      var url = pageForm.action;
      if(url.indexOf("?")==-1){
         url = url.concat("?refresh=1");
      }
      else{
        url =url.concat("&refresh=1");
      }
      if(PageQuery.showProgress) {
        Document.link(url,"数据查询中");
      }
      else{
        Document.link(url);
      }
    }
  },

/**
 * 返回到分页查询页面
 * url:分页查询动作
 * updateElement: 请求完成后ajax局部更新的对象id
 */
  link:function(url, updateElement) {
    if(PageQuery.ajaxLink){
      if (updateElement == null) {
        updateElement = "bodyContent";
      }
      var param = ("timeSerial=").concat(new Date().getTime());
      var options = {
        method: "get",
        parameters: param,
        asynchronous:true,
        onCreate: PageQuery.showTitle(),
        onComplete: function(request) {
          Document.responseComplete(request,updateElement);
        },
        onFailure:function(request) {
          if(PageQuery.showProgress) {
            Window.destroyProgress();
          }
          alert("系统出现错误！");
        }
      }
      var ajax = new Ajax.Request(url, options);
    }
    else{
      if(PageQuery.showProgress) {
        Document.link(url,"数据查询中");
      }
      else{
        Document.link(url);
      }
    }
  } ,

/**
 * 分页查询按钮事件
 * formName: 表单名称
 * updateElement: 请求完成后ajax局部更新的对象id
 */
  search:function (formName, updateElement) {
    if(PageQuery.ajaxLink){
      var pageForm = $(formName);
      var url = pageForm.action;
      if (updateElement == null) {
        updateElement = "bodyContent";
      }
      var param = Form.serialize(formName).concat("&timeSerial=").concat(new Date().getTime());
      var options = {
        method: "post",
        parameters: param,
        asynchronous:true,
        onCreate: PageQuery.showTitle(),
        onComplete: function(request) {
          Document.responseComplete(request,updateElement);
        },
        onFailure:function(request) {
          if(PageQuery.showProgress) {
            Window.destroyProgress();
          }
          alert("系统出现错误！");
        }
      }
      var ajax = new Ajax.Request(url, options);
    }
    else{
      var pageForm = $(formName);
      pageForm.pageNumber.value='0';
      if(PageQuery.showProgress) {
         Document.submit(formName,"数据查询中");
      }
      else{
         Document.submit(formName);
      }
    }
  },

/**
 * 分页查询专用js,上页，下页，首页，尾页，按钮中使用
 * pageNum:到第几页
 * formName:提交的分页查询表单
 * pageNumInputName:页码输入框名字
 * updateElement:请求完成后ajax局部更新的对象id
 */
  pageTo: function (pageNum, formName, pageNumInputName, updateElement) {
    if(PageQuery.ajaxLink){
      var pageForm = $(formName);
      var pageNumInput = $(pageNumInputName);
      var url = pageForm.action;
      pageNumInput.value = pageNum;
      pageForm.pageNumber.value=pageNum;
      if (updateElement == null) {
        updateElement = "bodyContent";
      }
      var param = Form.serialize(formName).concat("&timeSerial=").concat(new Date().getTime());
      var options = {
        method: "post",
        parameters: param,
        asynchronous:true,
        onCreate: PageQuery.showTitle(),
        onComplete: function(request) {
          Document.responseComplete(request,updateElement);
        },
        onFailure:function(request) {
          if(PageQuery.showProgress) {
            Window.destroyProgress();
          }
          alert("系统出现错误！");
        }
      };
      var ajax = new Ajax.Request(url, options);
    }
    else{
      var pageForm = $(formName);
      var pageNumInput = $(pageNumInputName);
      pageNumInput.value = pageNum;
      pageForm.pageNumber.value = pageNum;
      if(PageQuery.showProgress) {
         Document.submit(formName);
         //去掉了数据查询中参数
      }
      else{
         Document.submit(formName);
      }
    }
  },

/**
 * 分页查询专用js,Go按钮中使用
 * pageCount:总页数
 * formName:提交的分页查询表单
 * pageNumInputName:页码输入框名字
 * updateElement:请求完成后ajax局部更新的对象id
 */
  pageGo: function (pageCount, formName, pageNumInputName, updateElement) {
    if(PageQuery.ajaxLink){
      var pageForm = $(formName);
      var pageNumInput = $(pageNumInputName);
      var pageNum = pageNumInput.value;
      pageForm.pageNumber.value = pageNum;
      if (pageNum < 1 || pageNum > pageCount) {
        alert('请输入正确的页数！');
        pageNumInput.select();
        return;
      }
      if (updateElement == null) {
        updateElement = "bodyContent";
      }
      var url = pageForm.action;
      var param = Form.serialize(formName).concat("&timeSerial=").concat(new Date().getTime());
      var options = {
        method: "post",
        parameters: param,
        asynchronous:true,
        onCreate: PageQuery.showTitle(),
        onComplete: function(request) {
          Document.responseComplete(request,updateElement);
        },
        onFailure:function(request) {
          if(PageQuery.showProgress) {
            Window.destroyProgress();
          }
          alert("系统出现错误！");
        }
      };
      var ajax = new Ajax.Request(url, options);
    }
    else{
      var pageForm = $(formName);
      var pageNumInput = $(pageNumInputName);
      var pageNum = pageNumInput.value;
      if (pageNum < 1 || pageNum > pageCount) {
        alert('请输入正确的页数！');
        pageNumInput.select();
      }
      else {
        pageForm.pageNumber.value = pageNum;
        if(PageQuery.showProgress) {
           Document.submit(formName);
        }
        else{
           Document.submit(formName);
        }
      }
    }
  },

    /**
    * 显示进度条
    */
  showTitle:function(){
     if(PageQuery.showProgress){
       Window.createProgress("数据查询中");
     }
  }
}
