modular_controller.js 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990
  1. /**********************************************************************************
  2. * modular_controller.js
  3. *
  4. * Modular 프레임워크의 컨트롤러와 관련된 부분이 포함되어 있는 스크립트 파일
  5. * 'Modular.controller' 라는 네임스페이스를 사용하고 있음
  6. *
  7. * @author 김선엽(sunyoupk@udapsoft.co.kr)
  8. **********************************************************************************/
  9. Modular.controller.Page = {};
  10. Modular.controller.Page.gotoPage = function (searchId, pageNum) {
  11. var target = jQuery("form#" + searchId);
  12. var type = target.attr("modular:type");
  13. if (type == "search") {
  14. /*
  15. * 현재 페이지 설정
  16. */
  17. var pageForm;
  18. var temp = jQuery("input[name='modular.condition.currentPage']", target);
  19. if (temp.size() > 0) {
  20. pageForm = temp;
  21. } else {
  22. pageForm = jQuery("<input type=\"hidden\" name=\"modular.condition.currentPage\" />");
  23. target.append(pageForm);
  24. }//end if else
  25. pageForm.val(pageNum);
  26. /*
  27. * 정렬 조건 설정
  28. */
  29. var orderForm;
  30. temp = jQuery("input[name='modular.dao.order.key']", target);
  31. if (temp.size() > 0) {
  32. orderForm = temp;
  33. } else {
  34. orderForm = jQuery("<input type=\"hidden\" name=\"modular.dao.order.key\" />");
  35. target.append(orderForm);
  36. }//end if else
  37. if (Modular.Utils.hasText(Modular.model.PageContext.navigation.orderParam)) {
  38. orderForm.val(Modular.model.PageContext.navigation.orderParam);
  39. }//end if
  40. /*
  41. * 조회 조건 설정
  42. */
  43. var conditionForm = Modular.view.Form.findSearchParametersObj(target);
  44. if (Modular.Utils.hasText(Modular.model.PageContext.navigation.search)) {
  45. conditionForm.val(Modular.model.PageContext.navigation.search);
  46. }//end if
  47. Modular.model.PageContext.popSearchForm = false;
  48. target.submit();
  49. }//end if
  50. };
  51. Modular.controller.Sort = {
  52. ASC : "ascending",
  53. DESC : "descending"
  54. };
  55. Modular.controller.Sort.sort = function (searchId, sortId, sortOrder) {
  56. var target = jQuery("form#" + searchId);
  57. var type = target.attr("modular:type");
  58. if (type == "search") {
  59. var order = {
  60. id : sortId,
  61. direction : sortOrder
  62. };
  63. var orders = [];
  64. orders.push(order);
  65. var orderForm;
  66. var temp = jQuery("input[name='modular.dao.order.key']", target);
  67. if (temp.size() > 0) {
  68. orderForm = temp;
  69. } else {
  70. orderForm = jQuery("<input type=\"hidden\" name=\"modular.dao.order.key\" />");
  71. target.append(orderForm);
  72. }//end if else
  73. orderForm.val(Modular.Utils.toJSON(orders));
  74. var conditionForm = Modular.view.Form.findSearchParametersObj(target);
  75. if (Modular.Utils.hasText(Modular.model.PageContext.navigation.search)) {
  76. conditionForm.val(Modular.model.PageContext.navigation.search);
  77. }//end if
  78. Modular.model.PageContext.popSearchForm = false;
  79. target.submit();
  80. }//end if
  81. };