classiccms 0.5.5 → 0.5.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (407) hide show
  1. data/classiccms.gemspec +1 -0
  2. data/lib/classiccms/application.rb +1 -0
  3. data/lib/classiccms/controllers/admin.rb +28 -0
  4. data/lib/classiccms/controllers/cms.rb +14 -11
  5. data/lib/classiccms/helpers.rb +8 -0
  6. data/lib/classiccms/public/admin/bootstrap/css/bootstrap-responsive.css +815 -0
  7. data/lib/classiccms/public/admin/bootstrap/css/bootstrap-responsive.min.css +9 -0
  8. data/lib/classiccms/public/admin/bootstrap/css/bootstrap.css +4983 -0
  9. data/lib/classiccms/public/admin/bootstrap/css/bootstrap.min.css +9 -0
  10. data/lib/classiccms/public/admin/bootstrap/img/glyphicons-halflings-white.png +0 -0
  11. data/lib/classiccms/public/admin/bootstrap/img/glyphicons-halflings.png +0 -0
  12. data/lib/classiccms/public/admin/bootstrap/index.js +14 -0
  13. data/lib/classiccms/public/admin/bootstrap/js/bootstrap.js +1825 -0
  14. data/lib/classiccms/public/admin/bootstrap/js/bootstrap.min.js +6 -0
  15. data/lib/classiccms/public/admin/datatables/css/demo_page.css +107 -0
  16. data/lib/classiccms/public/admin/datatables/css/demo_table.css +556 -0
  17. data/lib/classiccms/public/admin/datatables/css/demo_table_jui.css +526 -0
  18. data/lib/classiccms/public/admin/datatables/css/jquery.dataTables.css +220 -0
  19. data/lib/classiccms/public/admin/datatables/css/jquery.dataTables_themeroller.css +245 -0
  20. data/lib/classiccms/public/admin/datatables/images/Sorting icons.psd +0 -0
  21. data/lib/classiccms/public/admin/datatables/images/back_disabled.png +0 -0
  22. data/lib/classiccms/public/admin/datatables/images/back_enabled.png +0 -0
  23. data/lib/classiccms/public/admin/datatables/images/back_enabled_hover.png +0 -0
  24. data/lib/classiccms/public/admin/datatables/images/favicon.ico +0 -0
  25. data/lib/classiccms/public/admin/datatables/images/forward_disabled.png +0 -0
  26. data/lib/classiccms/public/admin/datatables/images/forward_enabled.png +0 -0
  27. data/lib/classiccms/public/admin/datatables/images/forward_enabled_hover.png +0 -0
  28. data/lib/classiccms/public/admin/datatables/images/sort_asc.png +0 -0
  29. data/lib/classiccms/public/admin/datatables/images/sort_asc_disabled.png +0 -0
  30. data/lib/classiccms/public/admin/datatables/images/sort_both.png +0 -0
  31. data/lib/classiccms/public/admin/datatables/images/sort_desc.png +0 -0
  32. data/lib/classiccms/public/admin/datatables/images/sort_desc_disabled.png +0 -0
  33. data/lib/classiccms/public/admin/datatables/js/jquery.dataTables.js +11863 -0
  34. data/lib/classiccms/public/admin/datatables/js/jquery.dataTables.min.js +154 -0
  35. data/lib/classiccms/public/admin/datatables/js/jquery.js +4 -0
  36. data/lib/classiccms/public/admin/datatables/src/DataTables.js +259 -0
  37. data/lib/classiccms/public/admin/datatables/src/api/api.internal.js +128 -0
  38. data/lib/classiccms/public/admin/datatables/src/api/api.methods.js +1276 -0
  39. data/lib/classiccms/public/admin/datatables/src/api/api.static.js +98 -0
  40. data/lib/classiccms/public/admin/datatables/src/core/core.ajax.js +185 -0
  41. data/lib/classiccms/public/admin/datatables/src/core/core.columns.js +365 -0
  42. data/lib/classiccms/public/admin/datatables/src/core/core.constructor.js +439 -0
  43. data/lib/classiccms/public/admin/datatables/src/core/core.data.js +546 -0
  44. data/lib/classiccms/public/admin/datatables/src/core/core.draw.js +788 -0
  45. data/lib/classiccms/public/admin/datatables/src/core/core.filter.js +405 -0
  46. data/lib/classiccms/public/admin/datatables/src/core/core.info.js +117 -0
  47. data/lib/classiccms/public/admin/datatables/src/core/core.init.js +153 -0
  48. data/lib/classiccms/public/admin/datatables/src/core/core.length.js +122 -0
  49. data/lib/classiccms/public/admin/datatables/src/core/core.page.js +119 -0
  50. data/lib/classiccms/public/admin/datatables/src/core/core.processing.js +44 -0
  51. data/lib/classiccms/public/admin/datatables/src/core/core.scrolling.js +495 -0
  52. data/lib/classiccms/public/admin/datatables/src/core/core.sizing.js +405 -0
  53. data/lib/classiccms/public/admin/datatables/src/core/core.sort.js +460 -0
  54. data/lib/classiccms/public/admin/datatables/src/core/core.state.js +201 -0
  55. data/lib/classiccms/public/admin/datatables/src/core/core.support.js +316 -0
  56. data/lib/classiccms/public/admin/datatables/src/ext/ext.classes.js +112 -0
  57. data/lib/classiccms/public/admin/datatables/src/ext/ext.paging.js +257 -0
  58. data/lib/classiccms/public/admin/datatables/src/ext/ext.sorting.js +86 -0
  59. data/lib/classiccms/public/admin/datatables/src/ext/ext.types.js +88 -0
  60. data/lib/classiccms/public/admin/datatables/src/model/model.column.js +248 -0
  61. data/lib/classiccms/public/admin/datatables/src/model/model.defaults.columns.js +737 -0
  62. data/lib/classiccms/public/admin/datatables/src/model/model.defaults.js +1944 -0
  63. data/lib/classiccms/public/admin/datatables/src/model/model.ext.js +528 -0
  64. data/lib/classiccms/public/admin/datatables/src/model/model.row.js +64 -0
  65. data/lib/classiccms/public/admin/datatables/src/model/model.search.js +40 -0
  66. data/lib/classiccms/public/admin/datatables/src/model/model.settings.js +868 -0
  67. data/lib/classiccms/public/admin/datatables/unit_testing/controller.js +94 -0
  68. data/lib/classiccms/public/admin/datatables/unit_testing/controller.php +100 -0
  69. data/lib/classiccms/public/admin/datatables/unit_testing/index.html +7 -0
  70. data/lib/classiccms/public/admin/datatables/unit_testing/performance/draw.html +482 -0
  71. data/lib/classiccms/public/admin/datatables/unit_testing/performance/large.php +108 -0
  72. data/lib/classiccms/public/admin/datatables/unit_testing/performance/page.html +477 -0
  73. data/lib/classiccms/public/admin/datatables/unit_testing/performance/sort.html +477 -0
  74. data/lib/classiccms/public/admin/datatables/unit_testing/templates/-complex_header.php +469 -0
  75. data/lib/classiccms/public/admin/datatables/unit_testing/templates/2512.php +464 -0
  76. data/lib/classiccms/public/admin/datatables/unit_testing/templates/6776.php +116 -0
  77. data/lib/classiccms/public/admin/datatables/unit_testing/templates/complex_header_2.php +485 -0
  78. data/lib/classiccms/public/admin/datatables/unit_testing/templates/deferred_table.php +132 -0
  79. data/lib/classiccms/public/admin/datatables/unit_testing/templates/dom_data.php +465 -0
  80. data/lib/classiccms/public/admin/datatables/unit_testing/templates/dom_data_th.php +465 -0
  81. data/lib/classiccms/public/admin/datatables/unit_testing/templates/dom_data_two_headers.php +472 -0
  82. data/lib/classiccms/public/admin/datatables/unit_testing/templates/dymanic_table.php +45 -0
  83. data/lib/classiccms/public/admin/datatables/unit_testing/templates/empty_table.php +55 -0
  84. data/lib/classiccms/public/admin/datatables/unit_testing/templates/html_table.php +66 -0
  85. data/lib/classiccms/public/admin/datatables/unit_testing/templates/js_data.php +124 -0
  86. data/lib/classiccms/public/admin/datatables/unit_testing/templates/js_data_mixed_types.php +124 -0
  87. data/lib/classiccms/public/admin/datatables/unit_testing/templates/two_tables.php +227 -0
  88. data/lib/classiccms/public/admin/datatables/unit_testing/tests/1_dom/_zero_config.js +437 -0
  89. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/-complex_header.js +52 -0
  90. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/-iDraw.js +41 -0
  91. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/2512.js +17 -0
  92. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/2530-2.js +15 -0
  93. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/2530.js +29 -0
  94. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/2569.js +36 -0
  95. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/2600.js +44 -0
  96. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/2608.js +54 -0
  97. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/2635.js +40 -0
  98. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/2746-stable-sort.js +199 -0
  99. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/2799.js +14 -0
  100. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/2840-restore-table-width.js +19 -0
  101. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/2914-state-save-sort.js +39 -0
  102. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/5396-fnUpdate-arrays.js +103 -0
  103. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/5508-xscroll-zero-content.js +23 -0
  104. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/6776-scrolling-table-grows.js +64 -0
  105. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/_zero_config.js +437 -0
  106. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/aaSorting.js +183 -0
  107. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/aaSortingFixed.js +60 -0
  108. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/aoColumns.bSearchable.js +67 -0
  109. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/aoColumns.bSortable.js +105 -0
  110. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/aoColumns.bUseRendered.js +145 -0
  111. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/aoColumns.bVisible.js +132 -0
  112. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/aoColumns.bVisible2.js +268 -0
  113. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/aoColumns.fnRender.js +176 -0
  114. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/aoColumns.iDataSort.js +88 -0
  115. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/aoColumns.sClass.js +111 -0
  116. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/aoColumns.sName.js +27 -0
  117. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/aoColumns.sTitle.js +78 -0
  118. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/aoColumns.sWidth.js +84 -0
  119. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/aoSearchCols.js +112 -0
  120. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/asStripClasses.js +106 -0
  121. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/bAutoWidth.js +138 -0
  122. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/bFilter.js +40 -0
  123. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/bInfiniteScroll.js +130 -0
  124. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/bInfo.js +40 -0
  125. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/bJQueryUI.js +40 -0
  126. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/bLengthChange.js +71 -0
  127. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/bPaginate.js +55 -0
  128. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/bProcessing.js +99 -0
  129. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/bServerSide.js +18 -0
  130. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/bSort.js +101 -0
  131. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/bSortCellsTop.js +77 -0
  132. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/bSortClasses.js +128 -0
  133. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/fnCookieCallback.js +97 -0
  134. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/fnCreatedCell.js +151 -0
  135. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/fnCreatedRow.js +115 -0
  136. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/fnDeleteRow.js +30 -0
  137. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/fnDrawCallback.js +80 -0
  138. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/fnFilter.js +16 -0
  139. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/fnFooterCallback.js +227 -0
  140. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/fnHeaderCallback.js +227 -0
  141. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/fnInfoCallback.js +115 -0
  142. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/fnInitComplete.js +94 -0
  143. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/fnRowCallback.js +105 -0
  144. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/fnSetColumnVis.js +120 -0
  145. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/fnSetColumnVis2.js +236 -0
  146. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/html-autodetect-sort.js +57 -0
  147. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/iDisplayLength.js +76 -0
  148. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/oLanguage.oPaginate.js +80 -0
  149. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/oLanguage.sInfo.js +109 -0
  150. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/oLanguage.sInfoEmpty.js +75 -0
  151. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/oLanguage.sInfoPostFix.js +73 -0
  152. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/oLanguage.sLengthMenu.js +106 -0
  153. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/oLanguage.sProcessing.js +47 -0
  154. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/oLanguage.sSearch.js +66 -0
  155. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/oLanguage.sUrl.js +59 -0
  156. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/oLanguage.sZeroRecords.js +45 -0
  157. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/oSearch.js +101 -0
  158. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/sAjaxSource.js +18 -0
  159. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/sDom.js +319 -0
  160. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/sPaginationType.js +122 -0
  161. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/sScrollXY.js +63 -0
  162. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/1_dom/th_in_body.js +437 -0
  163. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/2_js/6872-default-content-missing-props.js +285 -0
  164. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/2_js/8549--string-sorting-nonstrings.js +47 -0
  165. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/2_js/_zero_config.js +440 -0
  166. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/2_js/aaSorting.js +198 -0
  167. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/2_js/aaSortingFixed.js +64 -0
  168. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/2_js/aoColumns.bSearchable.js +71 -0
  169. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/2_js/aoColumns.bSortable.js +109 -0
  170. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/2_js/aoColumns.bUseRendered.js +148 -0
  171. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/2_js/aoColumns.bVisible.js +110 -0
  172. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/2_js/aoColumns.fnRender.js +156 -0
  173. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/2_js/aoColumns.iDataSort.js +90 -0
  174. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/2_js/aoColumns.sClass.js +115 -0
  175. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/2_js/aoColumns.sName.js +28 -0
  176. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/2_js/aoColumns.sTitle.js +82 -0
  177. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/2_js/aoColumns.sWidth.js +87 -0
  178. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/2_js/aoSearchCols.js +119 -0
  179. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/2_js/asStripClasses.js +100 -0
  180. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/2_js/bAutoWidth.js +142 -0
  181. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/2_js/bFilter.js +44 -0
  182. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/2_js/bInfo.js +44 -0
  183. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/2_js/bLengthChange.js +75 -0
  184. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/2_js/bPaginate.js +59 -0
  185. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/2_js/bProcessing.js +103 -0
  186. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/2_js/bServerSide.js +20 -0
  187. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/2_js/bSort.js +99 -0
  188. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/2_js/bSortClasses.js +132 -0
  189. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/2_js/fnCreatedCell.js +158 -0
  190. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/2_js/fnCreatedRow.js +121 -0
  191. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/2_js/fnDrawCallback.js +85 -0
  192. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/2_js/fnFooterCallback.js +240 -0
  193. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/2_js/fnHeaderCallback.js +240 -0
  194. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/2_js/fnInitComplete.js +83 -0
  195. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/2_js/fnRowCallback.js +112 -0
  196. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/2_js/iDisplayLength.js +81 -0
  197. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/2_js/js_data_mixed_types.js +392 -0
  198. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/2_js/oLanguage.oPaginate.js +84 -0
  199. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/2_js/oLanguage.sInfo.js +117 -0
  200. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/2_js/oLanguage.sInfoEmpty.js +79 -0
  201. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/2_js/oLanguage.sInfoPostFix.js +78 -0
  202. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/2_js/oLanguage.sLengthMenu.js +111 -0
  203. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/2_js/oLanguage.sProcessing.js +49 -0
  204. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/2_js/oLanguage.sSearch.js +70 -0
  205. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/2_js/oLanguage.sUrl.js +62 -0
  206. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/2_js/oLanguage.sZeroRecords.js +48 -0
  207. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/2_js/oSearch.js +108 -0
  208. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/2_js/sAjaxSource.js +20 -0
  209. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/2_js/sDom.js +262 -0
  210. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/2_js/sPaginationType.js +125 -0
  211. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/3_ajax/_zero_config.js +440 -0
  212. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/3_ajax/aaSorting.js +198 -0
  213. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/3_ajax/aaSortingFixed.js +67 -0
  214. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/3_ajax/aoColumns.bSearchable.js +76 -0
  215. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/3_ajax/aoColumns.bSortable.js +109 -0
  216. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/3_ajax/aoColumns.bUseRendered.js +148 -0
  217. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/3_ajax/aoColumns.bVisible.js +124 -0
  218. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/3_ajax/aoColumns.fnRender.js +156 -0
  219. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/3_ajax/aoColumns.iDataSort.js +90 -0
  220. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/3_ajax/aoColumns.sClass.js +115 -0
  221. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/3_ajax/aoColumns.sName.js +28 -0
  222. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/3_ajax/aoColumns.sTitle.js +82 -0
  223. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/3_ajax/aoColumns.sWidth.js +87 -0
  224. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/3_ajax/aoSearchCols.js +119 -0
  225. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/3_ajax/asStripClasses.js +105 -0
  226. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/3_ajax/bAutoWidth.js +142 -0
  227. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/3_ajax/bFilter.js +44 -0
  228. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/3_ajax/bInfo.js +44 -0
  229. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/3_ajax/bLengthChange.js +75 -0
  230. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/3_ajax/bPaginate.js +59 -0
  231. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/3_ajax/bProcessing.js +103 -0
  232. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/3_ajax/bServerSide.js +20 -0
  233. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/3_ajax/bSort.js +99 -0
  234. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/3_ajax/bSortClasses.js +132 -0
  235. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/3_ajax/fnCreatedCell.js +183 -0
  236. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/3_ajax/fnCreatedRow.js +142 -0
  237. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/3_ajax/fnDrawCallback.js +98 -0
  238. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/3_ajax/fnHeaderCallback.js +191 -0
  239. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/3_ajax/fnInitComplete.js +100 -0
  240. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/3_ajax/fnRowCallback.js +112 -0
  241. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/3_ajax/fnServerData.js +64 -0
  242. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/3_ajax/iDisplayLength.js +81 -0
  243. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/3_ajax/oLanguage.oPaginate.js +84 -0
  244. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/3_ajax/oLanguage.sInfo.js +117 -0
  245. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/3_ajax/oLanguage.sInfoEmpty.js +79 -0
  246. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/3_ajax/oLanguage.sInfoPostFix.js +78 -0
  247. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/3_ajax/oLanguage.sLengthMenu.js +111 -0
  248. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/3_ajax/oLanguage.sLoadingRecords.js +65 -0
  249. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/3_ajax/oLanguage.sProcessing.js +49 -0
  250. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/3_ajax/oLanguage.sSearch.js +70 -0
  251. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/3_ajax/oLanguage.sUrl.js +62 -0
  252. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/3_ajax/oLanguage.sZeroRecords.js +48 -0
  253. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/3_ajax/oSearch.js +108 -0
  254. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/3_ajax/sAjaxDataProp.js +139 -0
  255. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/3_ajax/sAjaxDataProp2.js +139 -0
  256. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/3_ajax/sAjaxSource.js +22 -0
  257. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/3_ajax/sDom.js +262 -0
  258. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/3_ajax/sPaginationType.js +134 -0
  259. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/4_server-side/-iDraw.js +44 -0
  260. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/4_server-side/2440.js +32 -0
  261. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/4_server-side/2569.js +47 -0
  262. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/4_server-side/2600.js +47 -0
  263. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/4_server-side/_zero_config.js +424 -0
  264. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/4_server-side/aaSorting.js +212 -0
  265. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/4_server-side/aaSortingFixed.js +67 -0
  266. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/4_server-side/aoColumns.bSearchable.js +25 -0
  267. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/4_server-side/aoColumns.bSortable.js +112 -0
  268. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/4_server-side/aoColumns.bUseRendered.js +43 -0
  269. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/4_server-side/aoColumns.bVisible.js +123 -0
  270. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/4_server-side/aoColumns.fnRender.js +162 -0
  271. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/4_server-side/aoColumns.sClass.js +118 -0
  272. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/4_server-side/aoColumns.sName.js +29 -0
  273. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/4_server-side/aoColumns.sTitle.js +85 -0
  274. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/4_server-side/aoColumns.sWidth.js +90 -0
  275. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/4_server-side/aoSearchCols.js +70 -0
  276. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/4_server-side/asStripClasses.js +109 -0
  277. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/4_server-side/bAutoWidth.js +145 -0
  278. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/4_server-side/bFilter.js +47 -0
  279. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/4_server-side/bInfiniteScroll.js +168 -0
  280. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/4_server-side/bInfo.js +47 -0
  281. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/4_server-side/bLengthChange.js +78 -0
  282. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/4_server-side/bPaginate.js +62 -0
  283. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/4_server-side/bProcessing.js +106 -0
  284. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/4_server-side/bServerSide.js +21 -0
  285. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/4_server-side/bSort.js +102 -0
  286. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/4_server-side/bSortClasses.js +135 -0
  287. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/4_server-side/fnCreatedCell.js +190 -0
  288. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/4_server-side/fnCreatedRow.js +148 -0
  289. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/4_server-side/fnDrawCallback.js +89 -0
  290. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/4_server-side/fnHeaderCallback.js +191 -0
  291. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/4_server-side/fnInitComplete.js +89 -0
  292. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/4_server-side/fnRowCallback.js +118 -0
  293. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/4_server-side/iDeferLoading.js +95 -0
  294. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/4_server-side/iDisplayLength.js +85 -0
  295. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/4_server-side/oLanguage.oPaginate.js +86 -0
  296. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/4_server-side/oLanguage.sInfo.js +124 -0
  297. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/4_server-side/oLanguage.sInfoEmpty.js +82 -0
  298. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/4_server-side/oLanguage.sInfoPostFix.js +82 -0
  299. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/4_server-side/oLanguage.sLengthMenu.js +115 -0
  300. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/4_server-side/oLanguage.sProcessing.js +51 -0
  301. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/4_server-side/oLanguage.sSearch.js +73 -0
  302. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/4_server-side/oLanguage.sUrl.js +64 -0
  303. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/4_server-side/oLanguage.sZeroRecords.js +58 -0
  304. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/4_server-side/oSearch.js +100 -0
  305. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/4_server-side/sAjaxDataProp.js +146 -0
  306. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/4_server-side/sAjaxSource.js +23 -0
  307. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/4_server-side/sDom.js +269 -0
  308. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/4_server-side/sPaginationType.js +138 -0
  309. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/5_ajax_objects/_zero_config.js +847 -0
  310. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/5_ajax_objects/_zero_config_arrays_subobjects.js +961 -0
  311. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/5_ajax_objects/_zero_config_deep.js +1075 -0
  312. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/5_ajax_objects/_zero_config_null_source.js +458 -0
  313. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/5_ajax_objects/_zero_config_objects.js +847 -0
  314. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/5_ajax_objects/_zero_config_objects_subarrays.js +961 -0
  315. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/5_ajax_objects/aaSorting.js +296 -0
  316. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/5_ajax_objects/aaSortingFixed.js +88 -0
  317. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/5_ajax_objects/aoColumns.bSearchable.js +83 -0
  318. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/5_ajax_objects/aoColumns.bSortable.js +116 -0
  319. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/5_ajax_objects/aoColumns.bUseRendered.js +155 -0
  320. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/5_ajax_objects/aoColumns.bVisible.js +131 -0
  321. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/5_ajax_objects/aoColumns.fnRender.js +177 -0
  322. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/5_ajax_objects/aoColumns.iDataSort.js +90 -0
  323. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/5_ajax_objects/aoColumns.sClass.js +122 -0
  324. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/5_ajax_objects/aoColumns.sName.js +28 -0
  325. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/5_ajax_objects/aoColumns.sTitle.js +89 -0
  326. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/5_ajax_objects/aoColumns.sWidth.js +87 -0
  327. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/5_ajax_objects/aoSearchCols.js +161 -0
  328. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/5_ajax_objects/asStripClasses.js +133 -0
  329. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/5_ajax_objects/bAutoWidth.js +163 -0
  330. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/5_ajax_objects/bFilter.js +65 -0
  331. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/5_ajax_objects/bInfo.js +65 -0
  332. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/5_ajax_objects/bLengthChange.js +96 -0
  333. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/5_ajax_objects/bPaginate.js +80 -0
  334. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/5_ajax_objects/bProcessing.js +124 -0
  335. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/5_ajax_objects/bServerSide.js +27 -0
  336. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/5_ajax_objects/bSort.js +120 -0
  337. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/5_ajax_objects/bSortClasses.js +153 -0
  338. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/5_ajax_objects/fnDrawCallback.js +126 -0
  339. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/5_ajax_objects/fnHeaderCallback.js +254 -0
  340. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/5_ajax_objects/fnInitComplete.js +135 -0
  341. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/5_ajax_objects/fnRowCallback.js +154 -0
  342. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/5_ajax_objects/fnServerData.js +92 -0
  343. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/5_ajax_objects/iDisplayLength.js +109 -0
  344. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/5_ajax_objects/oLanguage.oPaginate.js +98 -0
  345. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/5_ajax_objects/oLanguage.sInfo.js +166 -0
  346. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/5_ajax_objects/oLanguage.sInfoEmpty.js +100 -0
  347. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/5_ajax_objects/oLanguage.sInfoPostFix.js +106 -0
  348. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/5_ajax_objects/oLanguage.sLengthMenu.js +139 -0
  349. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/5_ajax_objects/oLanguage.sProcessing.js +63 -0
  350. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/5_ajax_objects/oLanguage.sSearch.js +91 -0
  351. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/5_ajax_objects/oLanguage.sUrl.js +76 -0
  352. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/5_ajax_objects/oLanguage.sZeroRecords.js +62 -0
  353. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/5_ajax_objects/oSearch.js +150 -0
  354. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/5_ajax_objects/sAjaxSource.js +29 -0
  355. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/5_ajax_objects/sDom.js +311 -0
  356. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/5_ajax_objects/sPaginationType.js +148 -0
  357. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/6_delayed_rendering/_zero_config.js +403 -0
  358. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/6_delayed_rendering/aaSorting.js +212 -0
  359. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/6_delayed_rendering/aaSortingFixed.js +70 -0
  360. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/6_delayed_rendering/aoColumns.bSearchable.js +79 -0
  361. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/6_delayed_rendering/aoColumns.bSortable.js +112 -0
  362. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/6_delayed_rendering/aoColumns.bUseRendered.js +151 -0
  363. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/6_delayed_rendering/aoColumns.bVisible.js +127 -0
  364. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/6_delayed_rendering/aoColumns.fnRender.js +190 -0
  365. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/6_delayed_rendering/aoColumns.iDataSort.js +92 -0
  366. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/6_delayed_rendering/aoColumns.sClass.js +118 -0
  367. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/6_delayed_rendering/aoColumns.sName.js +29 -0
  368. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/6_delayed_rendering/aoColumns.sTitle.js +85 -0
  369. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/6_delayed_rendering/aoColumns.sWidth.js +90 -0
  370. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/6_delayed_rendering/aoSearchCols.js +125 -0
  371. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/6_delayed_rendering/asStripClasses.js +109 -0
  372. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/6_delayed_rendering/bAutoWidth.js +145 -0
  373. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/6_delayed_rendering/bFilter.js +47 -0
  374. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/6_delayed_rendering/bInfo.js +47 -0
  375. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/6_delayed_rendering/bLengthChange.js +78 -0
  376. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/6_delayed_rendering/bPaginate.js +62 -0
  377. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/6_delayed_rendering/bProcessing.js +106 -0
  378. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/6_delayed_rendering/bServerSide.js +21 -0
  379. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/6_delayed_rendering/bSort.js +102 -0
  380. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/6_delayed_rendering/bSortClasses.js +135 -0
  381. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/6_delayed_rendering/fnDrawCallback.js +102 -0
  382. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/6_delayed_rendering/fnHeaderCallback.js +200 -0
  383. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/6_delayed_rendering/fnInitComplete.js +105 -0
  384. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/6_delayed_rendering/fnRowCallback.js +118 -0
  385. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/6_delayed_rendering/fnServerData.js +68 -0
  386. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/6_delayed_rendering/iDisplayLength.js +85 -0
  387. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/6_delayed_rendering/oLanguage.oPaginate.js +86 -0
  388. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/6_delayed_rendering/oLanguage.sInfo.js +124 -0
  389. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/6_delayed_rendering/oLanguage.sInfoEmpty.js +82 -0
  390. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/6_delayed_rendering/oLanguage.sInfoPostFix.js +82 -0
  391. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/6_delayed_rendering/oLanguage.sLengthMenu.js +115 -0
  392. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/6_delayed_rendering/oLanguage.sProcessing.js +51 -0
  393. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/6_delayed_rendering/oLanguage.sSearch.js +73 -0
  394. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/6_delayed_rendering/oLanguage.sUrl.js +64 -0
  395. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/6_delayed_rendering/oLanguage.sZeroRecords.js +50 -0
  396. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/6_delayed_rendering/oSearch.js +114 -0
  397. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/6_delayed_rendering/sAjaxDataProp.js +140 -0
  398. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/6_delayed_rendering/sAjaxDataProp2.js +140 -0
  399. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/6_delayed_rendering/sAjaxSource.js +23 -0
  400. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/6_delayed_rendering/sDom.js +269 -0
  401. data/lib/classiccms/public/admin/datatables/unit_testing/tests_onhold/6_delayed_rendering/sPaginationType.js +136 -0
  402. data/lib/classiccms/public/admin/datatables/unit_testing/unit_test.js +409 -0
  403. data/lib/classiccms/public/admin/index.js +5 -0
  404. data/lib/classiccms/scaffold/config.ru +2 -1
  405. data/lib/classiccms/version.rb +1 -1
  406. data/lib/classiccms/views/admin/index.haml +51 -0
  407. metadata +418 -2
@@ -0,0 +1,316 @@
1
+
2
+
3
+ /**
4
+ * Return the settings object for a particular table
5
+ * @param {node} nTable table we are using as a dataTable
6
+ * @returns {object} Settings object - or null if not found
7
+ * @memberof DataTable#oApi
8
+ */
9
+ function _fnSettingsFromNode ( nTable )
10
+ {
11
+ for ( var i=0 ; i<DataTable.settings.length ; i++ )
12
+ {
13
+ if ( DataTable.settings[i].nTable === nTable )
14
+ {
15
+ return DataTable.settings[i];
16
+ }
17
+ }
18
+
19
+ return null;
20
+ }
21
+
22
+
23
+ /**
24
+ * Return an array with the TR nodes for the table
25
+ * @param {object} oSettings dataTables settings object
26
+ * @returns {array} TR array
27
+ * @memberof DataTable#oApi
28
+ */
29
+ function _fnGetTrNodes ( oSettings )
30
+ {
31
+ var aNodes = [];
32
+ var aoData = oSettings.aoData;
33
+ for ( var i=0, iLen=aoData.length ; i<iLen ; i++ )
34
+ {
35
+ if ( aoData[i].nTr !== null )
36
+ {
37
+ aNodes.push( aoData[i].nTr );
38
+ }
39
+ }
40
+ return aNodes;
41
+ }
42
+
43
+
44
+ /**
45
+ * Return an flat array with all TD nodes for the table, or row
46
+ * @param {object} oSettings dataTables settings object
47
+ * @param {int} [iIndividualRow] aoData index to get the nodes for - optional
48
+ * if not given then the return array will contain all nodes for the table
49
+ * @returns {array} TD array
50
+ * @memberof DataTable#oApi
51
+ */
52
+ function _fnGetTdNodes ( oSettings, iIndividualRow )
53
+ {
54
+ var anReturn = [];
55
+ var iCorrector;
56
+ var anTds;
57
+ var iRow, iRows=oSettings.aoData.length,
58
+ iColumn, iColumns, oData, sNodeName, iStart=0, iEnd=iRows;
59
+
60
+ /* Allow the collection to be limited to just one row */
61
+ if ( iIndividualRow !== undefined )
62
+ {
63
+ iStart = iIndividualRow;
64
+ iEnd = iIndividualRow+1;
65
+ }
66
+
67
+ for ( iRow=iStart ; iRow<iEnd ; iRow++ )
68
+ {
69
+ oData = oSettings.aoData[iRow];
70
+ if ( oData.nTr !== null )
71
+ {
72
+ /* get the TD child nodes - taking into account text etc nodes */
73
+ anTds = [];
74
+ for ( iColumn=0, iColumns=oData.nTr.childNodes.length ; iColumn<iColumns ; iColumn++ )
75
+ {
76
+ sNodeName = oData.nTr.childNodes[iColumn].nodeName.toLowerCase();
77
+ if ( sNodeName == 'td' || sNodeName == 'th' )
78
+ {
79
+ anTds.push( oData.nTr.childNodes[iColumn] );
80
+ }
81
+ }
82
+
83
+ iCorrector = 0;
84
+ for ( iColumn=0, iColumns=oSettings.aoColumns.length ; iColumn<iColumns ; iColumn++ )
85
+ {
86
+ if ( oSettings.aoColumns[iColumn].bVisible )
87
+ {
88
+ anReturn.push( anTds[iColumn-iCorrector] );
89
+ }
90
+ else
91
+ {
92
+ anReturn.push( oData._anHidden[iColumn] );
93
+ iCorrector++;
94
+ }
95
+ }
96
+ }
97
+ }
98
+
99
+ return anReturn;
100
+ }
101
+
102
+
103
+ /**
104
+ * Log an error message
105
+ * @param {object} oSettings dataTables settings object
106
+ * @param {int} iLevel log error messages, or display them to the user
107
+ * @param {string} sMesg error message
108
+ * @memberof DataTable#oApi
109
+ */
110
+ function _fnLog( oSettings, iLevel, sMesg )
111
+ {
112
+ var sAlert = (oSettings===null) ?
113
+ "DataTables warning: "+sMesg :
114
+ "DataTables warning (table id = '"+oSettings.sTableId+"'): "+sMesg;
115
+
116
+ if ( iLevel === 0 )
117
+ {
118
+ if ( DataTable.ext.sErrMode == 'alert' )
119
+ {
120
+ alert( sAlert );
121
+ }
122
+ else
123
+ {
124
+ throw new Error(sAlert);
125
+ }
126
+ return;
127
+ }
128
+ else if ( window.console && console.log )
129
+ {
130
+ console.log( sAlert );
131
+ }
132
+ }
133
+
134
+
135
+ /**
136
+ * See if a property is defined on one object, if so assign it to the other object
137
+ * @param {object} oRet target object
138
+ * @param {object} oSrc source object
139
+ * @param {string} sName property
140
+ * @param {string} [sMappedName] name to map too - optional, sName used if not given
141
+ * @memberof DataTable#oApi
142
+ */
143
+ function _fnMap( oRet, oSrc, sName, sMappedName )
144
+ {
145
+ if ( sMappedName === undefined )
146
+ {
147
+ sMappedName = sName;
148
+ }
149
+ if ( oSrc[sName] !== undefined )
150
+ {
151
+ oRet[sMappedName] = oSrc[sName];
152
+ }
153
+ }
154
+
155
+
156
+ /**
157
+ * Extend objects - very similar to jQuery.extend, but deep copy objects, and shallow
158
+ * copy arrays. The reason we need to do this, is that we don't want to deep copy array
159
+ * init values (such as aaSorting) since the dev wouldn't be able to override them, but
160
+ * we do want to deep copy arrays.
161
+ * @param {object} oOut Object to extend
162
+ * @param {object} oExtender Object from which the properties will be applied to oOut
163
+ * @returns {object} oOut Reference, just for convenience - oOut === the return.
164
+ * @memberof DataTable#oApi
165
+ * @todo This doesn't take account of arrays inside the deep copied objects.
166
+ */
167
+ function _fnExtend( oOut, oExtender )
168
+ {
169
+ for ( var prop in oExtender )
170
+ {
171
+ if ( oExtender.hasOwnProperty(prop) )
172
+ {
173
+ if ( typeof oInit[prop] === 'object' && $.isArray(oExtender[prop]) === false )
174
+ {
175
+ $.extend( true, oOut[prop], oExtender[prop] );
176
+ }
177
+ else
178
+ {
179
+ oOut[prop] = oExtender[prop];
180
+ }
181
+ }
182
+ }
183
+
184
+ return oOut;
185
+ }
186
+
187
+
188
+ /**
189
+ * Bind an event handers to allow a click or return key to activate the callback.
190
+ * This is good for accessability since a return on the keyboard will have the
191
+ * same effect as a click, if the element has focus.
192
+ * @param {element} n Element to bind the action to
193
+ * @param {object} oData Data object to pass to the triggered function
194
+ * @param {function} fn Callback function for when the event is triggered
195
+ * @memberof DataTable#oApi
196
+ */
197
+ function _fnBindAction( n, oData, fn )
198
+ {
199
+ $(n)
200
+ .bind( 'click.DT', oData, function (e) {
201
+ n.blur(); // Remove focus outline for mouse users
202
+ fn(e);
203
+ } )
204
+ .bind( 'keypress.DT', oData, function (e){
205
+ if ( e.which === 13 ) {
206
+ fn(e);
207
+ } } )
208
+ .bind( 'selectstart.DT', function () {
209
+ /* Take the brutal approach to cancelling text selection */
210
+ return false;
211
+ } );
212
+ }
213
+
214
+
215
+ /**
216
+ * Register a callback function. Easily allows a callback function to be added to
217
+ * an array store of callback functions that can then all be called together.
218
+ * @param {object} oSettings dataTables settings object
219
+ * @param {string} sStore Name of the array storeage for the callbacks in oSettings
220
+ * @param {function} fn Function to be called back
221
+ * @param {string} sName Identifying name for the callback (i.e. a label)
222
+ * @memberof DataTable#oApi
223
+ */
224
+ function _fnCallbackReg( oSettings, sStore, fn, sName )
225
+ {
226
+ if ( fn )
227
+ {
228
+ oSettings[sStore].push( {
229
+ "fn": fn,
230
+ "sName": sName
231
+ } );
232
+ }
233
+ }
234
+
235
+
236
+ /**
237
+ * Fire callback functions and trigger events. Note that the loop over the callback
238
+ * array store is done backwards! Further note that you do not want to fire off triggers
239
+ * in time sensitive applications (for example cell creation) as its slow.
240
+ * @param {object} oSettings dataTables settings object
241
+ * @param {string} sStore Name of the array storeage for the callbacks in oSettings
242
+ * @param {string} sTrigger Name of the jQuery custom event to trigger. If null no trigger
243
+ * is fired
244
+ * @param {array} aArgs Array of arguments to pass to the callback function / trigger
245
+ * @memberof DataTable#oApi
246
+ */
247
+ function _fnCallbackFire( oSettings, sStore, sTrigger, aArgs )
248
+ {
249
+ var aoStore = oSettings[sStore];
250
+ var aRet =[];
251
+
252
+ for ( var i=aoStore.length-1 ; i>=0 ; i-- )
253
+ {
254
+ aRet.push( aoStore[i].fn.apply( oSettings.oInstance, aArgs ) );
255
+ }
256
+
257
+ if ( sTrigger !== null )
258
+ {
259
+ $(oSettings.oInstance).trigger(sTrigger, aArgs);
260
+ }
261
+
262
+ return aRet;
263
+ }
264
+
265
+
266
+ /**
267
+ * JSON stringify. If JSON.stringify it provided by the browser, json2.js or any other
268
+ * library, then we use that as it is fast, safe and accurate. If the function isn't
269
+ * available then we need to built it ourselves - the insperation for this function comes
270
+ * from Craig Buckler ( http://www.sitepoint.com/javascript-json-serialization/ ). It is
271
+ * not perfect and absolutely should not be used as a replacement to json2.js - but it does
272
+ * do what we need, without requiring a dependency for DataTables.
273
+ * @param {object} o JSON object to be converted
274
+ * @returns {string} JSON string
275
+ * @memberof DataTable#oApi
276
+ */
277
+ var _fnJsonString = (window.JSON) ? JSON.stringify : function( o )
278
+ {
279
+ /* Not an object or array */
280
+ var sType = typeof o;
281
+ if (sType !== "object" || o === null)
282
+ {
283
+ // simple data type
284
+ if (sType === "string")
285
+ {
286
+ o = '"'+o+'"';
287
+ }
288
+ return o+"";
289
+ }
290
+
291
+ /* If object or array, need to recurse over it */
292
+ var
293
+ sProp, mValue,
294
+ json = [],
295
+ bArr = $.isArray(o);
296
+
297
+ for (sProp in o)
298
+ {
299
+ mValue = o[sProp];
300
+ sType = typeof mValue;
301
+
302
+ if (sType === "string")
303
+ {
304
+ mValue = '"'+mValue+'"';
305
+ }
306
+ else if (sType === "object" && mValue !== null)
307
+ {
308
+ mValue = _fnJsonString(mValue);
309
+ }
310
+
311
+ json.push((bArr ? "" : '"'+sProp+'":') + mValue);
312
+ }
313
+
314
+ return (bArr ? "[" : "{") + json + (bArr ? "]" : "}");
315
+ };
316
+
@@ -0,0 +1,112 @@
1
+
2
+ $.extend( DataTable.ext.oStdClasses, {
3
+ "sTable": "dataTable",
4
+
5
+ /* Two buttons buttons */
6
+ "sPagePrevEnabled": "paginate_enabled_previous",
7
+ "sPagePrevDisabled": "paginate_disabled_previous",
8
+ "sPageNextEnabled": "paginate_enabled_next",
9
+ "sPageNextDisabled": "paginate_disabled_next",
10
+ "sPageJUINext": "",
11
+ "sPageJUIPrev": "",
12
+
13
+ /* Full numbers paging buttons */
14
+ "sPageButton": "paginate_button",
15
+ "sPageButtonActive": "paginate_active",
16
+ "sPageButtonStaticDisabled": "paginate_button paginate_button_disabled",
17
+ "sPageFirst": "first",
18
+ "sPagePrevious": "previous",
19
+ "sPageNext": "next",
20
+ "sPageLast": "last",
21
+
22
+ /* Striping classes */
23
+ "sStripeOdd": "odd",
24
+ "sStripeEven": "even",
25
+
26
+ /* Empty row */
27
+ "sRowEmpty": "dataTables_empty",
28
+
29
+ /* Features */
30
+ "sWrapper": "dataTables_wrapper",
31
+ "sFilter": "dataTables_filter",
32
+ "sInfo": "dataTables_info",
33
+ "sPaging": "dataTables_paginate paging_", /* Note that the type is postfixed */
34
+ "sLength": "dataTables_length",
35
+ "sProcessing": "dataTables_processing",
36
+
37
+ /* Sorting */
38
+ "sSortAsc": "sorting_asc",
39
+ "sSortDesc": "sorting_desc",
40
+ "sSortable": "sorting", /* Sortable in both directions */
41
+ "sSortableAsc": "sorting_asc_disabled",
42
+ "sSortableDesc": "sorting_desc_disabled",
43
+ "sSortableNone": "sorting_disabled",
44
+ "sSortColumn": "sorting_", /* Note that an int is postfixed for the sorting order */
45
+ "sSortJUIAsc": "",
46
+ "sSortJUIDesc": "",
47
+ "sSortJUI": "",
48
+ "sSortJUIAscAllowed": "",
49
+ "sSortJUIDescAllowed": "",
50
+ "sSortJUIWrapper": "",
51
+ "sSortIcon": "",
52
+
53
+ /* Scrolling */
54
+ "sScrollWrapper": "dataTables_scroll",
55
+ "sScrollHead": "dataTables_scrollHead",
56
+ "sScrollHeadInner": "dataTables_scrollHeadInner",
57
+ "sScrollBody": "dataTables_scrollBody",
58
+ "sScrollFoot": "dataTables_scrollFoot",
59
+ "sScrollFootInner": "dataTables_scrollFootInner",
60
+
61
+ /* Misc */
62
+ "sFooterTH": "",
63
+ "sJUIHeader": "",
64
+ "sJUIFooter": ""
65
+ } );
66
+
67
+
68
+ $.extend( DataTable.ext.oJUIClasses, DataTable.ext.oStdClasses, {
69
+ /* Two buttons buttons */
70
+ "sPagePrevEnabled": "fg-button ui-button ui-state-default ui-corner-left",
71
+ "sPagePrevDisabled": "fg-button ui-button ui-state-default ui-corner-left ui-state-disabled",
72
+ "sPageNextEnabled": "fg-button ui-button ui-state-default ui-corner-right",
73
+ "sPageNextDisabled": "fg-button ui-button ui-state-default ui-corner-right ui-state-disabled",
74
+ "sPageJUINext": "ui-icon ui-icon-circle-arrow-e",
75
+ "sPageJUIPrev": "ui-icon ui-icon-circle-arrow-w",
76
+
77
+ /* Full numbers paging buttons */
78
+ "sPageButton": "fg-button ui-button ui-state-default",
79
+ "sPageButtonActive": "fg-button ui-button ui-state-default ui-state-disabled",
80
+ "sPageButtonStaticDisabled": "fg-button ui-button ui-state-default ui-state-disabled",
81
+ "sPageFirst": "first ui-corner-tl ui-corner-bl",
82
+ "sPageLast": "last ui-corner-tr ui-corner-br",
83
+
84
+ /* Features */
85
+ "sPaging": "dataTables_paginate fg-buttonset ui-buttonset fg-buttonset-multi "+
86
+ "ui-buttonset-multi paging_", /* Note that the type is postfixed */
87
+
88
+ /* Sorting */
89
+ "sSortAsc": "ui-state-default",
90
+ "sSortDesc": "ui-state-default",
91
+ "sSortable": "ui-state-default",
92
+ "sSortableAsc": "ui-state-default",
93
+ "sSortableDesc": "ui-state-default",
94
+ "sSortableNone": "ui-state-default",
95
+ "sSortJUIAsc": "css_right ui-icon ui-icon-triangle-1-n",
96
+ "sSortJUIDesc": "css_right ui-icon ui-icon-triangle-1-s",
97
+ "sSortJUI": "css_right ui-icon ui-icon-carat-2-n-s",
98
+ "sSortJUIAscAllowed": "css_right ui-icon ui-icon-carat-1-n",
99
+ "sSortJUIDescAllowed": "css_right ui-icon ui-icon-carat-1-s",
100
+ "sSortJUIWrapper": "DataTables_sort_wrapper",
101
+ "sSortIcon": "DataTables_sort_icon",
102
+
103
+ /* Scrolling */
104
+ "sScrollHead": "dataTables_scrollHead ui-state-default",
105
+ "sScrollFoot": "dataTables_scrollFoot ui-state-default",
106
+
107
+ /* Misc */
108
+ "sFooterTH": "ui-state-default",
109
+ "sJUIHeader": "fg-toolbar ui-toolbar ui-widget-header ui-corner-tl ui-corner-tr ui-helper-clearfix",
110
+ "sJUIFooter": "fg-toolbar ui-toolbar ui-widget-header ui-corner-bl ui-corner-br ui-helper-clearfix"
111
+ } );
112
+
@@ -0,0 +1,257 @@
1
+
2
+ /*
3
+ * Variable: oPagination
4
+ * Purpose:
5
+ * Scope: jQuery.fn.dataTableExt
6
+ */
7
+ $.extend( DataTable.ext.oPagination, {
8
+ /*
9
+ * Variable: two_button
10
+ * Purpose: Standard two button (forward/back) pagination
11
+ * Scope: jQuery.fn.dataTableExt.oPagination
12
+ */
13
+ "two_button": {
14
+ /*
15
+ * Function: oPagination.two_button.fnInit
16
+ * Purpose: Initialise dom elements required for pagination with forward/back buttons only
17
+ * Returns: -
18
+ * Inputs: object:oSettings - dataTables settings object
19
+ * node:nPaging - the DIV which contains this pagination control
20
+ * function:fnCallbackDraw - draw function which must be called on update
21
+ */
22
+ "fnInit": function ( oSettings, nPaging, fnCallbackDraw )
23
+ {
24
+ var oLang = oSettings.oLanguage.oPaginate;
25
+ var oClasses = oSettings.oClasses;
26
+ var fnClickHandler = function ( e ) {
27
+ if ( oSettings.oApi._fnPageChange( oSettings, e.data.action ) )
28
+ {
29
+ fnCallbackDraw( oSettings );
30
+ }
31
+ };
32
+
33
+ var sAppend = (!oSettings.bJUI) ?
34
+ '<a class="'+oSettings.oClasses.sPagePrevDisabled+'" tabindex="'+oSettings.iTabIndex+'" role="button">'+oLang.sPrevious+'</a>'+
35
+ '<a class="'+oSettings.oClasses.sPageNextDisabled+'" tabindex="'+oSettings.iTabIndex+'" role="button">'+oLang.sNext+'</a>'
36
+ :
37
+ '<a class="'+oSettings.oClasses.sPagePrevDisabled+'" tabindex="'+oSettings.iTabIndex+'" role="button"><span class="'+oSettings.oClasses.sPageJUIPrev+'"></span></a>'+
38
+ '<a class="'+oSettings.oClasses.sPageNextDisabled+'" tabindex="'+oSettings.iTabIndex+'" role="button"><span class="'+oSettings.oClasses.sPageJUINext+'"></span></a>';
39
+ $(nPaging).append( sAppend );
40
+
41
+ var els = $('a', nPaging);
42
+ var nPrevious = els[0],
43
+ nNext = els[1];
44
+
45
+ oSettings.oApi._fnBindAction( nPrevious, {action: "previous"}, fnClickHandler );
46
+ oSettings.oApi._fnBindAction( nNext, {action: "next"}, fnClickHandler );
47
+
48
+ /* ID the first elements only */
49
+ if ( !oSettings.aanFeatures.p )
50
+ {
51
+ nPaging.id = oSettings.sTableId+'_paginate';
52
+ nPrevious.id = oSettings.sTableId+'_previous';
53
+ nNext.id = oSettings.sTableId+'_next';
54
+
55
+ nPrevious.setAttribute('aria-controls', oSettings.sTableId);
56
+ nNext.setAttribute('aria-controls', oSettings.sTableId);
57
+ }
58
+ },
59
+
60
+ /*
61
+ * Function: oPagination.two_button.fnUpdate
62
+ * Purpose: Update the two button pagination at the end of the draw
63
+ * Returns: -
64
+ * Inputs: object:oSettings - dataTables settings object
65
+ * function:fnCallbackDraw - draw function to call on page change
66
+ */
67
+ "fnUpdate": function ( oSettings, fnCallbackDraw )
68
+ {
69
+ if ( !oSettings.aanFeatures.p )
70
+ {
71
+ return;
72
+ }
73
+
74
+ var oClasses = oSettings.oClasses;
75
+ var an = oSettings.aanFeatures.p;
76
+
77
+ /* Loop over each instance of the pager */
78
+ for ( var i=0, iLen=an.length ; i<iLen ; i++ )
79
+ {
80
+ if ( an[i].childNodes.length !== 0 )
81
+ {
82
+ an[i].childNodes[0].className = ( oSettings._iDisplayStart === 0 ) ?
83
+ oClasses.sPagePrevDisabled : oClasses.sPagePrevEnabled;
84
+
85
+ an[i].childNodes[1].className = ( oSettings.fnDisplayEnd() == oSettings.fnRecordsDisplay() ) ?
86
+ oClasses.sPageNextDisabled : oClasses.sPageNextEnabled;
87
+ }
88
+ }
89
+ }
90
+ },
91
+
92
+
93
+ /*
94
+ * Variable: iFullNumbersShowPages
95
+ * Purpose: Change the number of pages which can be seen
96
+ * Scope: jQuery.fn.dataTableExt.oPagination
97
+ */
98
+ "iFullNumbersShowPages": 5,
99
+
100
+ /*
101
+ * Variable: full_numbers
102
+ * Purpose: Full numbers pagination
103
+ * Scope: jQuery.fn.dataTableExt.oPagination
104
+ */
105
+ "full_numbers": {
106
+ /*
107
+ * Function: oPagination.full_numbers.fnInit
108
+ * Purpose: Initialise dom elements required for pagination with a list of the pages
109
+ * Returns: -
110
+ * Inputs: object:oSettings - dataTables settings object
111
+ * node:nPaging - the DIV which contains this pagination control
112
+ * function:fnCallbackDraw - draw function which must be called on update
113
+ */
114
+ "fnInit": function ( oSettings, nPaging, fnCallbackDraw )
115
+ {
116
+ var oLang = oSettings.oLanguage.oPaginate;
117
+ var oClasses = oSettings.oClasses;
118
+ var fnClickHandler = function ( e ) {
119
+ if ( oSettings.oApi._fnPageChange( oSettings, e.data.action ) )
120
+ {
121
+ fnCallbackDraw( oSettings );
122
+ }
123
+ };
124
+
125
+ $(nPaging).append(
126
+ '<a tabindex="'+oSettings.iTabIndex+'" class="'+oClasses.sPageButton+" "+oClasses.sPageFirst+'">'+oLang.sFirst+'</a>'+
127
+ '<a tabindex="'+oSettings.iTabIndex+'" class="'+oClasses.sPageButton+" "+oClasses.sPagePrevious+'">'+oLang.sPrevious+'</a>'+
128
+ '<span></span>'+
129
+ '<a tabindex="'+oSettings.iTabIndex+'" class="'+oClasses.sPageButton+" "+oClasses.sPageNext+'">'+oLang.sNext+'</a>'+
130
+ '<a tabindex="'+oSettings.iTabIndex+'" class="'+oClasses.sPageButton+" "+oClasses.sPageLast+'">'+oLang.sLast+'</a>'
131
+ );
132
+ var els = $('a', nPaging);
133
+ var nFirst = els[0],
134
+ nPrev = els[1],
135
+ nNext = els[2],
136
+ nLast = els[3];
137
+
138
+ oSettings.oApi._fnBindAction( nFirst, {action: "first"}, fnClickHandler );
139
+ oSettings.oApi._fnBindAction( nPrev, {action: "previous"}, fnClickHandler );
140
+ oSettings.oApi._fnBindAction( nNext, {action: "next"}, fnClickHandler );
141
+ oSettings.oApi._fnBindAction( nLast, {action: "last"}, fnClickHandler );
142
+
143
+ /* ID the first elements only */
144
+ if ( !oSettings.aanFeatures.p )
145
+ {
146
+ nPaging.id = oSettings.sTableId+'_paginate';
147
+ nFirst.id =oSettings.sTableId+'_first';
148
+ nPrev.id =oSettings.sTableId+'_previous';
149
+ nNext.id =oSettings.sTableId+'_next';
150
+ nLast.id =oSettings.sTableId+'_last';
151
+ }
152
+ },
153
+
154
+ /*
155
+ * Function: oPagination.full_numbers.fnUpdate
156
+ * Purpose: Update the list of page buttons shows
157
+ * Returns: -
158
+ * Inputs: object:oSettings - dataTables settings object
159
+ * function:fnCallbackDraw - draw function to call on page change
160
+ */
161
+ "fnUpdate": function ( oSettings, fnCallbackDraw )
162
+ {
163
+ if ( !oSettings.aanFeatures.p )
164
+ {
165
+ return;
166
+ }
167
+
168
+ var iPageCount = DataTable.ext.oPagination.iFullNumbersShowPages;
169
+ var iPageCountHalf = Math.floor(iPageCount / 2);
170
+ var iPages = Math.ceil((oSettings.fnRecordsDisplay()) / oSettings._iDisplayLength);
171
+ var iCurrentPage = Math.ceil(oSettings._iDisplayStart / oSettings._iDisplayLength) + 1;
172
+ var sList = "";
173
+ var iStartButton, iEndButton, i, iLen;
174
+ var oClasses = oSettings.oClasses;
175
+ var anButtons, anStatic, nPaginateList;
176
+ var an = oSettings.aanFeatures.p;
177
+ var fnBind = function (j) {
178
+ oSettings.oApi._fnBindAction( this, {"page": j+iStartButton-1}, function(e) {
179
+ /* Use the information in the element to jump to the required page */
180
+ oSettings.oApi._fnPageChange( oSettings, e.data.page );
181
+ fnCallbackDraw( oSettings );
182
+ e.preventDefault();
183
+ } );
184
+ };
185
+
186
+ /* Pages calculation */
187
+ if ( oSettings._iDisplayLength === -1 )
188
+ {
189
+ iStartButton = 1;
190
+ iEndButton = 1;
191
+ iCurrentPage = 1;
192
+ }
193
+ else if (iPages < iPageCount)
194
+ {
195
+ iStartButton = 1;
196
+ iEndButton = iPages;
197
+ }
198
+ else if (iCurrentPage <= iPageCountHalf)
199
+ {
200
+ iStartButton = 1;
201
+ iEndButton = iPageCount;
202
+ }
203
+ else if (iCurrentPage >= (iPages - iPageCountHalf))
204
+ {
205
+ iStartButton = iPages - iPageCount + 1;
206
+ iEndButton = iPages;
207
+ }
208
+ else
209
+ {
210
+ iStartButton = iCurrentPage - Math.ceil(iPageCount / 2) + 1;
211
+ iEndButton = iStartButton + iPageCount - 1;
212
+ }
213
+
214
+
215
+ /* Build the dynamic list */
216
+ for ( i=iStartButton ; i<=iEndButton ; i++ )
217
+ {
218
+ sList += (iCurrentPage !== i) ?
219
+ '<a tabindex="'+oSettings.iTabIndex+'" class="'+oClasses.sPageButton+'">'+oSettings.fnFormatNumber(i)+'</a>' :
220
+ '<a tabindex="'+oSettings.iTabIndex+'" class="'+oClasses.sPageButtonActive+'">'+oSettings.fnFormatNumber(i)+'</a>';
221
+ }
222
+
223
+ /* Loop over each instance of the pager */
224
+ for ( i=0, iLen=an.length ; i<iLen ; i++ )
225
+ {
226
+ if ( an[i].childNodes.length === 0 )
227
+ {
228
+ continue;
229
+ }
230
+
231
+ /* Build up the dynamic list forst - html and listeners */
232
+ $('span:eq(0)', an[i])
233
+ .html( sList )
234
+ .children('a').each( fnBind );
235
+
236
+ /* Update the premanent botton's classes */
237
+ anButtons = an[i].getElementsByTagName('a');
238
+ anStatic = [
239
+ anButtons[0], anButtons[1],
240
+ anButtons[anButtons.length-2], anButtons[anButtons.length-1]
241
+ ];
242
+
243
+ $(anStatic).removeClass( oClasses.sPageButton+" "+oClasses.sPageButtonActive+" "+oClasses.sPageButtonStaticDisabled );
244
+ $([anStatic[0], anStatic[1]]).addClass(
245
+ (iCurrentPage==1) ?
246
+ oClasses.sPageButtonStaticDisabled :
247
+ oClasses.sPageButton
248
+ );
249
+ $([anStatic[2], anStatic[3]]).addClass(
250
+ (iPages===0 || iCurrentPage===iPages || oSettings._iDisplayLength===-1) ?
251
+ oClasses.sPageButtonStaticDisabled :
252
+ oClasses.sPageButton
253
+ );
254
+ }
255
+ }
256
+ }
257
+ } );