kuppayam 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (1055) hide show
  1. checksums.yaml +7 -0
  2. data/MIT-LICENSE +20 -0
  3. data/README.md +28 -0
  4. data/Rakefile +37 -0
  5. data/app/assets/config/kuppayam_manifest.js +0 -0
  6. data/app/assets/images/kuppayam/defaults/default-large.png +0 -0
  7. data/app/assets/images/kuppayam/defaults/default-small.png +0 -0
  8. data/app/assets/images/kuppayam/defaults/user-large.png +0 -0
  9. data/app/assets/images/kuppayam/defaults/user-small.png +0 -0
  10. data/app/assets/images/kuppayam/favicon.png +0 -0
  11. data/app/assets/images/kuppayam/logo.png +0 -0
  12. data/app/assets/javascripts/jquery_with_ujs.js +15 -0
  13. data/app/assets/javascripts/kuppayam.js +21 -0
  14. data/app/assets/javascripts/kuppayam/utilities.js +68 -0
  15. data/app/assets/stylesheets/kuppayam.css +23 -0
  16. data/app/assets/stylesheets/kuppayam/custom.css +8 -0
  17. data/app/assets/stylesheets/kuppayam/handycss.css +996 -0
  18. data/app/controllers/kuppayam/base_controller.rb +43 -0
  19. data/app/helpers/breadcrumbs_helper.rb +27 -0
  20. data/app/helpers/filter_helper.rb +370 -0
  21. data/app/helpers/flash_helper.rb +54 -0
  22. data/app/helpers/image_helper.rb +209 -0
  23. data/app/helpers/kuppayam_helper.rb +72 -0
  24. data/app/helpers/meta_tags_helper.rb +50 -0
  25. data/app/helpers/navigation_helper.rb +17 -0
  26. data/app/helpers/params_parser_helper.rb +48 -0
  27. data/app/helpers/render_helper.rb +28 -0
  28. data/app/helpers/resource_helper.rb +133 -0
  29. data/app/views/kaminari/_first_page.html.erb +11 -0
  30. data/app/views/kaminari/_gap.html.erb +8 -0
  31. data/app/views/kaminari/_last_page.html.erb +11 -0
  32. data/app/views/kaminari/_next_page.html.erb +11 -0
  33. data/app/views/kaminari/_page.html.erb +12 -0
  34. data/app/views/kaminari/_paginator.html.erb +25 -0
  35. data/app/views/kaminari/_prev_page.html.erb +11 -0
  36. data/app/views/layouts/kuppayam/_footer.html.erb +25 -0
  37. data/app/views/layouts/kuppayam/_head.html.erb +29 -0
  38. data/app/views/layouts/kuppayam/_header.html.erb +43 -0
  39. data/app/views/layouts/kuppayam/_heading.html.erb +9 -0
  40. data/app/views/layouts/kuppayam/_navbar.html.erb +321 -0
  41. data/app/views/layouts/kuppayam/_overlays.html.erb +40 -0
  42. data/app/views/layouts/kuppayam/_settings_pane.html.erb +107 -0
  43. data/app/views/layouts/kuppayam/_sidebar.html.erb +612 -0
  44. data/app/views/layouts/kuppayam/_sidebar_old.html.erb +54 -0
  45. data/app/views/layouts/kuppayam/admin.html.erb +59 -0
  46. data/app/views/layouts/kuppayam/blank.html.erb +37 -0
  47. data/config/initializers/config_center.rb +60 -0
  48. data/config/initializers/kuppayam_validators.rb +76 -0
  49. data/config/routes.rb +2 -0
  50. data/lib/kuppayam.rb +8 -0
  51. data/lib/kuppayam/action_view/form_helper.rb +254 -0
  52. data/lib/kuppayam/action_view/modal_helper.rb +7 -0
  53. data/lib/kuppayam/action_view/theme_helper.rb +226 -0
  54. data/lib/kuppayam/engine.rb +34 -0
  55. data/lib/kuppayam/version.rb +3 -0
  56. data/lib/tasks/kuppayam_tasks.rake +4 -0
  57. data/vendor/assets/fonts/elusive/css/animation.css +85 -0
  58. data/vendor/assets/fonts/elusive/css/elusive-codes.css +272 -0
  59. data/vendor/assets/fonts/elusive/css/elusive-embedded.css +325 -0
  60. data/vendor/assets/fonts/elusive/css/elusive-ie7-codes.css +272 -0
  61. data/vendor/assets/fonts/elusive/css/elusive-ie7.css +283 -0
  62. data/vendor/assets/fonts/elusive/css/elusive.css +323 -0
  63. data/vendor/assets/fonts/elusive/font/elusive.eot +0 -0
  64. data/vendor/assets/fonts/elusive/font/elusive.svg +282 -0
  65. data/vendor/assets/fonts/elusive/font/elusive.ttf +0 -0
  66. data/vendor/assets/fonts/elusive/font/elusive.woff +0 -0
  67. data/vendor/assets/fonts/elusive/index.html +0 -0
  68. data/vendor/assets/fonts/fontawesome/css/font-awesome.css +1681 -0
  69. data/vendor/assets/fonts/fontawesome/css/font-awesome.min.css +4 -0
  70. data/vendor/assets/fonts/fontawesome/fonts/FontAwesome.otf +0 -0
  71. data/vendor/assets/fonts/fontawesome/fonts/fontawesome-webfont.eot +0 -0
  72. data/vendor/assets/fonts/fontawesome/fonts/fontawesome-webfont.svg +520 -0
  73. data/vendor/assets/fonts/fontawesome/fonts/fontawesome-webfont.ttf +0 -0
  74. data/vendor/assets/fonts/fontawesome/fonts/fontawesome-webfont.woff +0 -0
  75. data/vendor/assets/fonts/fontawesome/index.html +0 -0
  76. data/vendor/assets/fonts/glyphicons/glyphicons-halflings-regular.eot +0 -0
  77. data/vendor/assets/fonts/glyphicons/glyphicons-halflings-regular.svg +229 -0
  78. data/vendor/assets/fonts/glyphicons/glyphicons-halflings-regular.ttf +0 -0
  79. data/vendor/assets/fonts/glyphicons/glyphicons-halflings-regular.woff +0 -0
  80. data/vendor/assets/fonts/glyphicons/index.html +0 -0
  81. data/vendor/assets/fonts/linecons/css/animation.css +85 -0
  82. data/vendor/assets/fonts/linecons/css/linecons-codes.css +49 -0
  83. data/vendor/assets/fonts/linecons/css/linecons-embedded.css +102 -0
  84. data/vendor/assets/fonts/linecons/css/linecons-ie7-codes.css +49 -0
  85. data/vendor/assets/fonts/linecons/css/linecons-ie7.css +60 -0
  86. data/vendor/assets/fonts/linecons/css/linecons.css +100 -0
  87. data/vendor/assets/fonts/linecons/font/linecons.eot +0 -0
  88. data/vendor/assets/fonts/linecons/font/linecons.svg +59 -0
  89. data/vendor/assets/fonts/linecons/font/linecons.ttf +0 -0
  90. data/vendor/assets/fonts/linecons/font/linecons.woff +0 -0
  91. data/vendor/assets/fonts/linecons/index.html +0 -0
  92. data/vendor/assets/fonts/meteocons/css/animation.css +85 -0
  93. data/vendor/assets/fonts/meteocons/css/meteocons-codes.css +48 -0
  94. data/vendor/assets/fonts/meteocons/css/meteocons-embedded.css +101 -0
  95. data/vendor/assets/fonts/meteocons/css/meteocons-ie7-codes.css +48 -0
  96. data/vendor/assets/fonts/meteocons/css/meteocons-ie7.css +59 -0
  97. data/vendor/assets/fonts/meteocons/css/meteocons.css +99 -0
  98. data/vendor/assets/fonts/meteocons/font/meteocons.eot +0 -0
  99. data/vendor/assets/fonts/meteocons/font/meteocons.svg +58 -0
  100. data/vendor/assets/fonts/meteocons/font/meteocons.ttf +0 -0
  101. data/vendor/assets/fonts/meteocons/font/meteocons.woff +0 -0
  102. data/vendor/assets/fonts/meteocons/index.html +0 -0
  103. data/vendor/assets/images/flags/flag-al.png +0 -0
  104. data/vendor/assets/images/flags/flag-br.png +0 -0
  105. data/vendor/assets/images/flags/flag-de.png +0 -0
  106. data/vendor/assets/images/flags/flag-es.png +0 -0
  107. data/vendor/assets/images/flags/flag-fr.png +0 -0
  108. data/vendor/assets/images/flags/flag-uk.png +0 -0
  109. data/vendor/assets/images/flags/index.html +0 -0
  110. data/vendor/assets/javascripts/TweenLite.min.js +12 -0
  111. data/vendor/assets/javascripts/TweenMax.min.js +17 -0
  112. data/vendor/assets/javascripts/bootstrap.min.js +7 -0
  113. data/vendor/assets/javascripts/ckeditor/CHANGES.md +643 -0
  114. data/vendor/assets/javascripts/ckeditor/LICENSE.md +1264 -0
  115. data/vendor/assets/javascripts/ckeditor/README.md +39 -0
  116. data/vendor/assets/javascripts/ckeditor/adapters/jquery.js +10 -0
  117. data/vendor/assets/javascripts/ckeditor/build-config.js +152 -0
  118. data/vendor/assets/javascripts/ckeditor/ckeditor.js +936 -0
  119. data/vendor/assets/javascripts/ckeditor/config.js +42 -0
  120. data/vendor/assets/javascripts/ckeditor/contents.css +134 -0
  121. data/vendor/assets/javascripts/ckeditor/index.html +0 -0
  122. data/vendor/assets/javascripts/ckeditor/lang/af.js +5 -0
  123. data/vendor/assets/javascripts/ckeditor/lang/ar.js +5 -0
  124. data/vendor/assets/javascripts/ckeditor/lang/bg.js +5 -0
  125. data/vendor/assets/javascripts/ckeditor/lang/bn.js +5 -0
  126. data/vendor/assets/javascripts/ckeditor/lang/bs.js +5 -0
  127. data/vendor/assets/javascripts/ckeditor/lang/ca.js +5 -0
  128. data/vendor/assets/javascripts/ckeditor/lang/cs.js +5 -0
  129. data/vendor/assets/javascripts/ckeditor/lang/cy.js +5 -0
  130. data/vendor/assets/javascripts/ckeditor/lang/da.js +5 -0
  131. data/vendor/assets/javascripts/ckeditor/lang/de.js +5 -0
  132. data/vendor/assets/javascripts/ckeditor/lang/el.js +5 -0
  133. data/vendor/assets/javascripts/ckeditor/lang/en-au.js +5 -0
  134. data/vendor/assets/javascripts/ckeditor/lang/en-ca.js +5 -0
  135. data/vendor/assets/javascripts/ckeditor/lang/en-gb.js +5 -0
  136. data/vendor/assets/javascripts/ckeditor/lang/en.js +5 -0
  137. data/vendor/assets/javascripts/ckeditor/lang/eo.js +5 -0
  138. data/vendor/assets/javascripts/ckeditor/lang/es.js +5 -0
  139. data/vendor/assets/javascripts/ckeditor/lang/et.js +5 -0
  140. data/vendor/assets/javascripts/ckeditor/lang/eu.js +5 -0
  141. data/vendor/assets/javascripts/ckeditor/lang/fa.js +5 -0
  142. data/vendor/assets/javascripts/ckeditor/lang/fi.js +5 -0
  143. data/vendor/assets/javascripts/ckeditor/lang/fo.js +5 -0
  144. data/vendor/assets/javascripts/ckeditor/lang/fr-ca.js +5 -0
  145. data/vendor/assets/javascripts/ckeditor/lang/fr.js +5 -0
  146. data/vendor/assets/javascripts/ckeditor/lang/gl.js +5 -0
  147. data/vendor/assets/javascripts/ckeditor/lang/gu.js +5 -0
  148. data/vendor/assets/javascripts/ckeditor/lang/he.js +5 -0
  149. data/vendor/assets/javascripts/ckeditor/lang/hi.js +5 -0
  150. data/vendor/assets/javascripts/ckeditor/lang/hr.js +5 -0
  151. data/vendor/assets/javascripts/ckeditor/lang/hu.js +5 -0
  152. data/vendor/assets/javascripts/ckeditor/lang/id.js +5 -0
  153. data/vendor/assets/javascripts/ckeditor/lang/is.js +5 -0
  154. data/vendor/assets/javascripts/ckeditor/lang/it.js +5 -0
  155. data/vendor/assets/javascripts/ckeditor/lang/ja.js +5 -0
  156. data/vendor/assets/javascripts/ckeditor/lang/ka.js +5 -0
  157. data/vendor/assets/javascripts/ckeditor/lang/km.js +5 -0
  158. data/vendor/assets/javascripts/ckeditor/lang/ko.js +5 -0
  159. data/vendor/assets/javascripts/ckeditor/lang/ku.js +5 -0
  160. data/vendor/assets/javascripts/ckeditor/lang/lt.js +5 -0
  161. data/vendor/assets/javascripts/ckeditor/lang/lv.js +5 -0
  162. data/vendor/assets/javascripts/ckeditor/lang/mk.js +5 -0
  163. data/vendor/assets/javascripts/ckeditor/lang/mn.js +5 -0
  164. data/vendor/assets/javascripts/ckeditor/lang/ms.js +5 -0
  165. data/vendor/assets/javascripts/ckeditor/lang/nb.js +5 -0
  166. data/vendor/assets/javascripts/ckeditor/lang/nl.js +5 -0
  167. data/vendor/assets/javascripts/ckeditor/lang/no.js +5 -0
  168. data/vendor/assets/javascripts/ckeditor/lang/pl.js +5 -0
  169. data/vendor/assets/javascripts/ckeditor/lang/pt-br.js +5 -0
  170. data/vendor/assets/javascripts/ckeditor/lang/pt.js +5 -0
  171. data/vendor/assets/javascripts/ckeditor/lang/ro.js +5 -0
  172. data/vendor/assets/javascripts/ckeditor/lang/ru.js +5 -0
  173. data/vendor/assets/javascripts/ckeditor/lang/si.js +5 -0
  174. data/vendor/assets/javascripts/ckeditor/lang/sk.js +5 -0
  175. data/vendor/assets/javascripts/ckeditor/lang/sl.js +5 -0
  176. data/vendor/assets/javascripts/ckeditor/lang/sq.js +5 -0
  177. data/vendor/assets/javascripts/ckeditor/lang/sr-latn.js +5 -0
  178. data/vendor/assets/javascripts/ckeditor/lang/sr.js +5 -0
  179. data/vendor/assets/javascripts/ckeditor/lang/sv.js +5 -0
  180. data/vendor/assets/javascripts/ckeditor/lang/th.js +5 -0
  181. data/vendor/assets/javascripts/ckeditor/lang/tr.js +5 -0
  182. data/vendor/assets/javascripts/ckeditor/lang/tt.js +5 -0
  183. data/vendor/assets/javascripts/ckeditor/lang/ug.js +5 -0
  184. data/vendor/assets/javascripts/ckeditor/lang/uk.js +5 -0
  185. data/vendor/assets/javascripts/ckeditor/lang/vi.js +5 -0
  186. data/vendor/assets/javascripts/ckeditor/lang/zh-cn.js +5 -0
  187. data/vendor/assets/javascripts/ckeditor/lang/zh.js +5 -0
  188. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/a11yhelp.js +10 -0
  189. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/_translationstatus.txt +25 -0
  190. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/ar.js +11 -0
  191. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/bg.js +11 -0
  192. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/ca.js +13 -0
  193. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/cs.js +13 -0
  194. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/cy.js +11 -0
  195. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/da.js +11 -0
  196. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/de.js +12 -0
  197. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/el.js +13 -0
  198. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/en-gb.js +11 -0
  199. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/en.js +11 -0
  200. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/eo.js +13 -0
  201. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/es.js +12 -0
  202. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/et.js +11 -0
  203. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/fa.js +11 -0
  204. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/fi.js +12 -0
  205. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/fr-ca.js +12 -0
  206. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/fr.js +13 -0
  207. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/gl.js +12 -0
  208. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/gu.js +11 -0
  209. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/he.js +11 -0
  210. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/hi.js +11 -0
  211. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/hr.js +11 -0
  212. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/hu.js +13 -0
  213. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/id.js +11 -0
  214. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/it.js +13 -0
  215. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/ja.js +9 -0
  216. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/km.js +11 -0
  217. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/ko.js +10 -0
  218. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/ku.js +12 -0
  219. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/lt.js +11 -0
  220. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/lv.js +13 -0
  221. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/mk.js +11 -0
  222. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/mn.js +11 -0
  223. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/nb.js +12 -0
  224. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/nl.js +12 -0
  225. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/no.js +11 -0
  226. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/pl.js +13 -0
  227. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/pt-br.js +12 -0
  228. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/pt.js +12 -0
  229. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/ro.js +12 -0
  230. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/ru.js +11 -0
  231. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/si.js +10 -0
  232. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/sk.js +12 -0
  233. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/sl.js +12 -0
  234. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/sq.js +11 -0
  235. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/sr-latn.js +11 -0
  236. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/sr.js +11 -0
  237. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/sv.js +12 -0
  238. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/th.js +11 -0
  239. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/tr.js +12 -0
  240. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/tt.js +11 -0
  241. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/ug.js +11 -0
  242. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/uk.js +12 -0
  243. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/vi.js +11 -0
  244. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/zh-cn.js +9 -0
  245. data/vendor/assets/javascripts/ckeditor/plugins/a11yhelp/dialogs/lang/zh.js +9 -0
  246. data/vendor/assets/javascripts/ckeditor/plugins/about/dialogs/about.js +7 -0
  247. data/vendor/assets/javascripts/ckeditor/plugins/about/dialogs/hidpi/logo_ckeditor.png +0 -0
  248. data/vendor/assets/javascripts/ckeditor/plugins/about/dialogs/logo_ckeditor.png +0 -0
  249. data/vendor/assets/javascripts/ckeditor/plugins/clipboard/dialogs/paste.js +11 -0
  250. data/vendor/assets/javascripts/ckeditor/plugins/dialog/dialogDefinition.js +4 -0
  251. data/vendor/assets/javascripts/ckeditor/plugins/icons.png +0 -0
  252. data/vendor/assets/javascripts/ckeditor/plugins/icons_hidpi.png +0 -0
  253. data/vendor/assets/javascripts/ckeditor/plugins/image/dialogs/image.js +43 -0
  254. data/vendor/assets/javascripts/ckeditor/plugins/image/images/noimage.png +0 -0
  255. data/vendor/assets/javascripts/ckeditor/plugins/link/dialogs/anchor.js +7 -0
  256. data/vendor/assets/javascripts/ckeditor/plugins/link/dialogs/link.js +26 -0
  257. data/vendor/assets/javascripts/ckeditor/plugins/link/images/anchor.png +0 -0
  258. data/vendor/assets/javascripts/ckeditor/plugins/link/images/hidpi/anchor.png +0 -0
  259. data/vendor/assets/javascripts/ckeditor/plugins/magicline/images/hidpi/icon-rtl.png +0 -0
  260. data/vendor/assets/javascripts/ckeditor/plugins/magicline/images/hidpi/icon.png +0 -0
  261. data/vendor/assets/javascripts/ckeditor/plugins/magicline/images/icon-rtl.png +0 -0
  262. data/vendor/assets/javascripts/ckeditor/plugins/magicline/images/icon.png +0 -0
  263. data/vendor/assets/javascripts/ckeditor/plugins/pastefromword/filter/default.js +31 -0
  264. data/vendor/assets/javascripts/ckeditor/plugins/scayt/LICENSE.md +28 -0
  265. data/vendor/assets/javascripts/ckeditor/plugins/scayt/README.md +25 -0
  266. data/vendor/assets/javascripts/ckeditor/plugins/scayt/dialogs/options.js +17 -0
  267. data/vendor/assets/javascripts/ckeditor/plugins/scayt/dialogs/toolbar.css +71 -0
  268. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/_translationstatus.txt +20 -0
  269. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/ar.js +13 -0
  270. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/bg.js +13 -0
  271. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/ca.js +14 -0
  272. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/cs.js +13 -0
  273. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/cy.js +14 -0
  274. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/de.js +13 -0
  275. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/el.js +13 -0
  276. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/en-gb.js +13 -0
  277. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/en.js +13 -0
  278. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/eo.js +12 -0
  279. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/es.js +13 -0
  280. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/et.js +13 -0
  281. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/fa.js +12 -0
  282. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/fi.js +13 -0
  283. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/fr-ca.js +10 -0
  284. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/fr.js +11 -0
  285. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/gl.js +13 -0
  286. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/he.js +12 -0
  287. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/hr.js +13 -0
  288. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/hu.js +12 -0
  289. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/id.js +13 -0
  290. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/it.js +14 -0
  291. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/ja.js +9 -0
  292. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/km.js +13 -0
  293. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/ku.js +13 -0
  294. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/lv.js +13 -0
  295. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/nb.js +11 -0
  296. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/nl.js +13 -0
  297. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/no.js +11 -0
  298. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/pl.js +12 -0
  299. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/pt-br.js +11 -0
  300. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/pt.js +13 -0
  301. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/ru.js +13 -0
  302. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/si.js +13 -0
  303. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/sk.js +13 -0
  304. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/sl.js +12 -0
  305. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/sq.js +13 -0
  306. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/sv.js +11 -0
  307. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/th.js +13 -0
  308. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/tr.js +12 -0
  309. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/tt.js +13 -0
  310. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/ug.js +13 -0
  311. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/uk.js +12 -0
  312. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/vi.js +14 -0
  313. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/zh-cn.js +9 -0
  314. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/lang/zh.js +12 -0
  315. data/vendor/assets/javascripts/ckeditor/plugins/specialchar/dialogs/specialchar.js +14 -0
  316. data/vendor/assets/javascripts/ckeditor/plugins/table/dialogs/table.js +21 -0
  317. data/vendor/assets/javascripts/ckeditor/plugins/tabletools/dialogs/tableCell.js +17 -0
  318. data/vendor/assets/javascripts/ckeditor/plugins/wsc/LICENSE.md +28 -0
  319. data/vendor/assets/javascripts/ckeditor/plugins/wsc/README.md +25 -0
  320. data/vendor/assets/javascripts/ckeditor/plugins/wsc/dialogs/ciframe.html +66 -0
  321. data/vendor/assets/javascripts/ckeditor/plugins/wsc/dialogs/tmpFrameset.html +52 -0
  322. data/vendor/assets/javascripts/ckeditor/plugins/wsc/dialogs/wsc.css +82 -0
  323. data/vendor/assets/javascripts/ckeditor/plugins/wsc/dialogs/wsc.js +74 -0
  324. data/vendor/assets/javascripts/ckeditor/plugins/wsc/dialogs/wsc_ie.js +11 -0
  325. data/vendor/assets/javascripts/ckeditor/samples/ajax.html +82 -0
  326. data/vendor/assets/javascripts/ckeditor/samples/api.html +207 -0
  327. data/vendor/assets/javascripts/ckeditor/samples/appendto.html +56 -0
  328. data/vendor/assets/javascripts/ckeditor/samples/assets/inlineall/logo.png +0 -0
  329. data/vendor/assets/javascripts/ckeditor/samples/assets/outputxhtml/outputxhtml.css +204 -0
  330. data/vendor/assets/javascripts/ckeditor/samples/assets/posteddata.php +59 -0
  331. data/vendor/assets/javascripts/ckeditor/samples/assets/sample.jpg +0 -0
  332. data/vendor/assets/javascripts/ckeditor/samples/assets/uilanguages/languages.js +7 -0
  333. data/vendor/assets/javascripts/ckeditor/samples/datafiltering.html +401 -0
  334. data/vendor/assets/javascripts/ckeditor/samples/divreplace.html +141 -0
  335. data/vendor/assets/javascripts/ckeditor/samples/index.html +128 -0
  336. data/vendor/assets/javascripts/ckeditor/samples/inlineall.html +311 -0
  337. data/vendor/assets/javascripts/ckeditor/samples/inlinebycode.html +121 -0
  338. data/vendor/assets/javascripts/ckeditor/samples/inlinetextarea.html +110 -0
  339. data/vendor/assets/javascripts/ckeditor/samples/jquery.html +100 -0
  340. data/vendor/assets/javascripts/ckeditor/samples/plugins/dialog/assets/my_dialog.js +48 -0
  341. data/vendor/assets/javascripts/ckeditor/samples/plugins/dialog/dialog.html +187 -0
  342. data/vendor/assets/javascripts/ckeditor/samples/plugins/enterkey/enterkey.html +103 -0
  343. data/vendor/assets/javascripts/ckeditor/samples/plugins/htmlwriter/assets/outputforflash/outputforflash.fla +0 -0
  344. data/vendor/assets/javascripts/ckeditor/samples/plugins/htmlwriter/assets/outputforflash/outputforflash.swf +0 -0
  345. data/vendor/assets/javascripts/ckeditor/samples/plugins/htmlwriter/assets/outputforflash/swfobject.js +18 -0
  346. data/vendor/assets/javascripts/ckeditor/samples/plugins/htmlwriter/outputforflash.html +280 -0
  347. data/vendor/assets/javascripts/ckeditor/samples/plugins/htmlwriter/outputhtml.html +221 -0
  348. data/vendor/assets/javascripts/ckeditor/samples/plugins/magicline/magicline.html +206 -0
  349. data/vendor/assets/javascripts/ckeditor/samples/plugins/toolbar/toolbar.html +232 -0
  350. data/vendor/assets/javascripts/ckeditor/samples/plugins/wysiwygarea/fullpage.html +77 -0
  351. data/vendor/assets/javascripts/ckeditor/samples/readonly.html +73 -0
  352. data/vendor/assets/javascripts/ckeditor/samples/replacebyclass.html +57 -0
  353. data/vendor/assets/javascripts/ckeditor/samples/replacebycode.html +56 -0
  354. data/vendor/assets/javascripts/ckeditor/samples/sample.css +365 -0
  355. data/vendor/assets/javascripts/ckeditor/samples/sample.js +50 -0
  356. data/vendor/assets/javascripts/ckeditor/samples/sample_posteddata.php +16 -0
  357. data/vendor/assets/javascripts/ckeditor/samples/tabindex.html +75 -0
  358. data/vendor/assets/javascripts/ckeditor/samples/uicolor.html +69 -0
  359. data/vendor/assets/javascripts/ckeditor/samples/uilanguages.html +119 -0
  360. data/vendor/assets/javascripts/ckeditor/samples/xhtmlstyle.html +231 -0
  361. data/vendor/assets/javascripts/ckeditor/skins/bootstrapck/dev/icons16.svg +683 -0
  362. data/vendor/assets/javascripts/ckeditor/skins/bootstrapck/dev/icons32.svg +694 -0
  363. data/vendor/assets/javascripts/ckeditor/skins/bootstrapck/dev/locations.json +140 -0
  364. data/vendor/assets/javascripts/ckeditor/skins/bootstrapck/dialog.css +1 -0
  365. data/vendor/assets/javascripts/ckeditor/skins/bootstrapck/dialog_ie.css +1 -0
  366. data/vendor/assets/javascripts/ckeditor/skins/bootstrapck/dialog_ie7.css +1 -0
  367. data/vendor/assets/javascripts/ckeditor/skins/bootstrapck/dialog_ie8.css +1 -0
  368. data/vendor/assets/javascripts/ckeditor/skins/bootstrapck/dialog_iequirks.css +1 -0
  369. data/vendor/assets/javascripts/ckeditor/skins/bootstrapck/dialog_opera.css +1 -0
  370. data/vendor/assets/javascripts/ckeditor/skins/bootstrapck/editor.css +1 -0
  371. data/vendor/assets/javascripts/ckeditor/skins/bootstrapck/editor_gecko.css +1 -0
  372. data/vendor/assets/javascripts/ckeditor/skins/bootstrapck/editor_ie.css +1 -0
  373. data/vendor/assets/javascripts/ckeditor/skins/bootstrapck/editor_ie7.css +1 -0
  374. data/vendor/assets/javascripts/ckeditor/skins/bootstrapck/editor_ie8.css +1 -0
  375. data/vendor/assets/javascripts/ckeditor/skins/bootstrapck/editor_iequirks.css +1 -0
  376. data/vendor/assets/javascripts/ckeditor/skins/bootstrapck/icons.png +0 -0
  377. data/vendor/assets/javascripts/ckeditor/skins/bootstrapck/icons_hidpi.png +0 -0
  378. data/vendor/assets/javascripts/ckeditor/skins/bootstrapck/images/arrow.png +0 -0
  379. data/vendor/assets/javascripts/ckeditor/skins/bootstrapck/images/close.png +0 -0
  380. data/vendor/assets/javascripts/ckeditor/skins/bootstrapck/images/hidpi/close.png +0 -0
  381. data/vendor/assets/javascripts/ckeditor/skins/bootstrapck/images/hidpi/lock-open.png +0 -0
  382. data/vendor/assets/javascripts/ckeditor/skins/bootstrapck/images/hidpi/lock.png +0 -0
  383. data/vendor/assets/javascripts/ckeditor/skins/bootstrapck/images/hidpi/refresh.png +0 -0
  384. data/vendor/assets/javascripts/ckeditor/skins/bootstrapck/images/lock-open.png +0 -0
  385. data/vendor/assets/javascripts/ckeditor/skins/bootstrapck/images/lock.png +0 -0
  386. data/vendor/assets/javascripts/ckeditor/skins/bootstrapck/images/refresh.png +0 -0
  387. data/vendor/assets/javascripts/ckeditor/skins/bootstrapck/readme.md +35 -0
  388. data/vendor/assets/javascripts/ckeditor/skins/bootstrapck/sample/bootstrapck-sample.html +127 -0
  389. data/vendor/assets/javascripts/ckeditor/skins/bootstrapck/sample/css/bootstrapck-sample.css +1 -0
  390. data/vendor/assets/javascripts/ckeditor/skins/bootstrapck/sample/js/analytics.js +4 -0
  391. data/vendor/assets/javascripts/ckeditor/skins/bootstrapck/sample/js/jquery-1.11.0.min.js +189 -0
  392. data/vendor/assets/javascripts/ckeditor/skins/bootstrapck/scss/browser-specific/gecko/editor_gecko.scss +25 -0
  393. data/vendor/assets/javascripts/ckeditor/skins/bootstrapck/scss/browser-specific/ie/dialog_ie.scss +62 -0
  394. data/vendor/assets/javascripts/ckeditor/skins/bootstrapck/scss/browser-specific/ie/editor_ie.scss +71 -0
  395. data/vendor/assets/javascripts/ckeditor/skins/bootstrapck/scss/browser-specific/ie7/dialog_ie7.scss +68 -0
  396. data/vendor/assets/javascripts/ckeditor/skins/bootstrapck/scss/browser-specific/ie7/editor_ie7.scss +213 -0
  397. data/vendor/assets/javascripts/ckeditor/skins/bootstrapck/scss/browser-specific/ie8/dialog_ie8.scss +24 -0
  398. data/vendor/assets/javascripts/ckeditor/skins/bootstrapck/scss/browser-specific/ie8/editor_ie8.scss +27 -0
  399. data/vendor/assets/javascripts/ckeditor/skins/bootstrapck/scss/browser-specific/iequirks/dialog_iequirks.scss +21 -0
  400. data/vendor/assets/javascripts/ckeditor/skins/bootstrapck/scss/browser-specific/iequirks/editor_iequirks.scss +79 -0
  401. data/vendor/assets/javascripts/ckeditor/skins/bootstrapck/scss/browser-specific/opera/dialog_opera.scss +31 -0
  402. data/vendor/assets/javascripts/ckeditor/skins/bootstrapck/scss/components/_colorpanel.scss +119 -0
  403. data/vendor/assets/javascripts/ckeditor/skins/bootstrapck/scss/components/_elementspath.scss +66 -0
  404. data/vendor/assets/javascripts/ckeditor/skins/bootstrapck/scss/components/_mainui.scss +189 -0
  405. data/vendor/assets/javascripts/ckeditor/skins/bootstrapck/scss/components/_menu.scss +182 -0
  406. data/vendor/assets/javascripts/ckeditor/skins/bootstrapck/scss/components/_panel.scss +199 -0
  407. data/vendor/assets/javascripts/ckeditor/skins/bootstrapck/scss/components/_presets.scss +32 -0
  408. data/vendor/assets/javascripts/ckeditor/skins/bootstrapck/scss/components/_reset.scss +107 -0
  409. data/vendor/assets/javascripts/ckeditor/skins/bootstrapck/scss/components/_richcombo.scss +174 -0
  410. data/vendor/assets/javascripts/ckeditor/skins/bootstrapck/scss/components/_toolbar.scss +317 -0
  411. data/vendor/assets/javascripts/ckeditor/skins/bootstrapck/scss/components/editor.scss +66 -0
  412. data/vendor/assets/javascripts/ckeditor/skins/bootstrapck/scss/config/_colors.scss +61 -0
  413. data/vendor/assets/javascripts/ckeditor/skins/bootstrapck/scss/config/_config.scss +9 -0
  414. data/vendor/assets/javascripts/ckeditor/skins/bootstrapck/scss/config/_defaults.scss +37 -0
  415. data/vendor/assets/javascripts/ckeditor/skins/bootstrapck/scss/dialog/dialog.scss +822 -0
  416. data/vendor/assets/javascripts/ckeditor/skins/bootstrapck/skin.js +10 -0
  417. data/vendor/assets/javascripts/ckeditor/skins/moono/dialog.css +5 -0
  418. data/vendor/assets/javascripts/ckeditor/skins/moono/dialog_ie.css +5 -0
  419. data/vendor/assets/javascripts/ckeditor/skins/moono/dialog_ie7.css +5 -0
  420. data/vendor/assets/javascripts/ckeditor/skins/moono/dialog_ie8.css +5 -0
  421. data/vendor/assets/javascripts/ckeditor/skins/moono/dialog_iequirks.css +5 -0
  422. data/vendor/assets/javascripts/ckeditor/skins/moono/editor.css +5 -0
  423. data/vendor/assets/javascripts/ckeditor/skins/moono/editor_gecko.css +5 -0
  424. data/vendor/assets/javascripts/ckeditor/skins/moono/editor_ie.css +5 -0
  425. data/vendor/assets/javascripts/ckeditor/skins/moono/editor_ie7.css +5 -0
  426. data/vendor/assets/javascripts/ckeditor/skins/moono/editor_ie8.css +5 -0
  427. data/vendor/assets/javascripts/ckeditor/skins/moono/editor_iequirks.css +5 -0
  428. data/vendor/assets/javascripts/ckeditor/skins/moono/icons.png +0 -0
  429. data/vendor/assets/javascripts/ckeditor/skins/moono/icons_hidpi.png +0 -0
  430. data/vendor/assets/javascripts/ckeditor/skins/moono/images/arrow.png +0 -0
  431. data/vendor/assets/javascripts/ckeditor/skins/moono/images/close.png +0 -0
  432. data/vendor/assets/javascripts/ckeditor/skins/moono/images/hidpi/close.png +0 -0
  433. data/vendor/assets/javascripts/ckeditor/skins/moono/images/hidpi/lock-open.png +0 -0
  434. data/vendor/assets/javascripts/ckeditor/skins/moono/images/hidpi/lock.png +0 -0
  435. data/vendor/assets/javascripts/ckeditor/skins/moono/images/hidpi/refresh.png +0 -0
  436. data/vendor/assets/javascripts/ckeditor/skins/moono/images/lock-open.png +0 -0
  437. data/vendor/assets/javascripts/ckeditor/skins/moono/images/lock.png +0 -0
  438. data/vendor/assets/javascripts/ckeditor/skins/moono/images/refresh.png +0 -0
  439. data/vendor/assets/javascripts/ckeditor/skins/moono/readme.md +51 -0
  440. data/vendor/assets/javascripts/ckeditor/styles.js +111 -0
  441. data/vendor/assets/javascripts/colorpicker/bootstrap-colorpicker.min.js +1 -0
  442. data/vendor/assets/javascripts/colorpicker/images/alpha-horizontal.png +0 -0
  443. data/vendor/assets/javascripts/colorpicker/images/alpha.png +0 -0
  444. data/vendor/assets/javascripts/colorpicker/images/hue-horizontal.png +0 -0
  445. data/vendor/assets/javascripts/colorpicker/images/hue.png +0 -0
  446. data/vendor/assets/javascripts/colorpicker/images/saturation.png +0 -0
  447. data/vendor/assets/javascripts/colorpicker/index.html +0 -0
  448. data/vendor/assets/javascripts/cropper/cropper.css +266 -0
  449. data/vendor/assets/javascripts/cropper/cropper.js +1063 -0
  450. data/vendor/assets/javascripts/cropper/cropper.min.css +9 -0
  451. data/vendor/assets/javascripts/cropper/cropper.min.js +9 -0
  452. data/vendor/assets/javascripts/cropper/index.html +0 -0
  453. data/vendor/assets/javascripts/datatables/css/jquery.dataTables.css +476 -0
  454. data/vendor/assets/javascripts/datatables/css/jquery.dataTables.min.css +1 -0
  455. data/vendor/assets/javascripts/datatables/css/jquery.dataTables_themeroller.css +330 -0
  456. data/vendor/assets/javascripts/datatables/dataTables.bootstrap.css +281 -0
  457. data/vendor/assets/javascripts/datatables/dataTables.bootstrap.js +186 -0
  458. data/vendor/assets/javascripts/datatables/datatables-angular.js +2651 -0
  459. data/vendor/assets/javascripts/datatables/images/Sorting icons.psd +0 -0
  460. data/vendor/assets/javascripts/datatables/images/back_disabled.png +0 -0
  461. data/vendor/assets/javascripts/datatables/images/back_enabled.png +0 -0
  462. data/vendor/assets/javascripts/datatables/images/back_enabled_hover.png +0 -0
  463. data/vendor/assets/javascripts/datatables/images/favicon.ico +0 -0
  464. data/vendor/assets/javascripts/datatables/images/forward_disabled.png +0 -0
  465. data/vendor/assets/javascripts/datatables/images/forward_enabled.png +0 -0
  466. data/vendor/assets/javascripts/datatables/images/forward_enabled_hover.png +0 -0
  467. data/vendor/assets/javascripts/datatables/images/sort_asc.png +0 -0
  468. data/vendor/assets/javascripts/datatables/images/sort_asc_disabled.png +0 -0
  469. data/vendor/assets/javascripts/datatables/images/sort_both.png +0 -0
  470. data/vendor/assets/javascripts/datatables/images/sort_desc.png +0 -0
  471. data/vendor/assets/javascripts/datatables/images/sort_desc_disabled.png +0 -0
  472. data/vendor/assets/javascripts/datatables/index.html +0 -0
  473. data/vendor/assets/javascripts/datatables/js/jquery.dataTables.js +14624 -0
  474. data/vendor/assets/javascripts/datatables/js/jquery.dataTables.min.js +155 -0
  475. data/vendor/assets/javascripts/datatables/js/jquery.js +4 -0
  476. data/vendor/assets/javascripts/datatables/tabletools/copy_csv_xls.swf +0 -0
  477. data/vendor/assets/javascripts/datatables/tabletools/copy_csv_xls_pdf.swf +0 -0
  478. data/vendor/assets/javascripts/datatables/tabletools/dataTables.tableTools.css +361 -0
  479. data/vendor/assets/javascripts/datatables/tabletools/dataTables.tableTools.min.js +69 -0
  480. data/vendor/assets/javascripts/datatables/yadcf/jquery.dataTables.yadcf.css +116 -0
  481. data/vendor/assets/javascripts/datatables/yadcf/jquery.dataTables.yadcf.js +2235 -0
  482. data/vendor/assets/javascripts/datepicker/bootstrap-datepicker.js +1395 -0
  483. data/vendor/assets/javascripts/datepicker/index.html +0 -0
  484. data/vendor/assets/javascripts/daterangepicker/daterangepicker-bs2.css +256 -0
  485. data/vendor/assets/javascripts/daterangepicker/daterangepicker-bs3.css +288 -0
  486. data/vendor/assets/javascripts/daterangepicker/daterangepicker.js +1118 -0
  487. data/vendor/assets/javascripts/daterangepicker/index.html +0 -0
  488. data/vendor/assets/javascripts/devexpress-web-14.1/js/dx.chartjs.js +12 -0
  489. data/vendor/assets/javascripts/devexpress-web-14.1/js/globalize.min.js +12 -0
  490. data/vendor/assets/javascripts/devexpress-web-14.1/js/knockout-3.1.0.js +12 -0
  491. data/vendor/assets/javascripts/dropzone/css/basic.css +155 -0
  492. data/vendor/assets/javascripts/dropzone/css/dropzone.css +397 -0
  493. data/vendor/assets/javascripts/dropzone/css/stylus/basic.styl +165 -0
  494. data/vendor/assets/javascripts/dropzone/css/stylus/dropzone.styl +180 -0
  495. data/vendor/assets/javascripts/dropzone/dropzone-amd-module.min.js +1 -0
  496. data/vendor/assets/javascripts/dropzone/dropzone.min.js +1 -0
  497. data/vendor/assets/javascripts/dropzone/images/spritemap.png +0 -0
  498. data/vendor/assets/javascripts/dropzone/images/spritemap@2x.png +0 -0
  499. data/vendor/assets/javascripts/dropzone/index.html +0 -0
  500. data/vendor/assets/javascripts/formwizard/index.html +0 -0
  501. data/vendor/assets/javascripts/formwizard/jquery.bootstrap.wizard.js +331 -0
  502. data/vendor/assets/javascripts/formwizard/jquery.bootstrap.wizard.min.js +22 -0
  503. data/vendor/assets/javascripts/fullcalendar/fullcalendar.css +933 -0
  504. data/vendor/assets/javascripts/fullcalendar/fullcalendar.js +8391 -0
  505. data/vendor/assets/javascripts/fullcalendar/fullcalendar.min.css +5 -0
  506. data/vendor/assets/javascripts/fullcalendar/fullcalendar.min.js +8 -0
  507. data/vendor/assets/javascripts/fullcalendar/fullcalendar.print.css +201 -0
  508. data/vendor/assets/javascripts/fullcalendar/index.html +0 -0
  509. data/vendor/assets/javascripts/fullcalendar/moment.min.js +6 -0
  510. data/vendor/assets/javascripts/handlebars.min.js +28 -0
  511. data/vendor/assets/javascripts/icheck/icheck.min.js +11 -0
  512. data/vendor/assets/javascripts/icheck/index.html +0 -0
  513. data/vendor/assets/javascripts/icheck/skins/all.css +61 -0
  514. data/vendor/assets/javascripts/icheck/skins/flat/_all.css +530 -0
  515. data/vendor/assets/javascripts/icheck/skins/flat/aero.css +53 -0
  516. data/vendor/assets/javascripts/icheck/skins/flat/aero.png +0 -0
  517. data/vendor/assets/javascripts/icheck/skins/flat/aero@2x.png +0 -0
  518. data/vendor/assets/javascripts/icheck/skins/flat/blue.css +53 -0
  519. data/vendor/assets/javascripts/icheck/skins/flat/blue.png +0 -0
  520. data/vendor/assets/javascripts/icheck/skins/flat/blue@2x.png +0 -0
  521. data/vendor/assets/javascripts/icheck/skins/flat/flat.css +53 -0
  522. data/vendor/assets/javascripts/icheck/skins/flat/flat.png +0 -0
  523. data/vendor/assets/javascripts/icheck/skins/flat/flat@2x.png +0 -0
  524. data/vendor/assets/javascripts/icheck/skins/flat/green.css +53 -0
  525. data/vendor/assets/javascripts/icheck/skins/flat/green.png +0 -0
  526. data/vendor/assets/javascripts/icheck/skins/flat/green@2x.png +0 -0
  527. data/vendor/assets/javascripts/icheck/skins/flat/grey.css +53 -0
  528. data/vendor/assets/javascripts/icheck/skins/flat/grey.png +0 -0
  529. data/vendor/assets/javascripts/icheck/skins/flat/grey@2x.png +0 -0
  530. data/vendor/assets/javascripts/icheck/skins/flat/orange.css +53 -0
  531. data/vendor/assets/javascripts/icheck/skins/flat/orange.png +0 -0
  532. data/vendor/assets/javascripts/icheck/skins/flat/orange@2x.png +0 -0
  533. data/vendor/assets/javascripts/icheck/skins/flat/pink.css +53 -0
  534. data/vendor/assets/javascripts/icheck/skins/flat/pink.png +0 -0
  535. data/vendor/assets/javascripts/icheck/skins/flat/pink@2x.png +0 -0
  536. data/vendor/assets/javascripts/icheck/skins/flat/purple.css +53 -0
  537. data/vendor/assets/javascripts/icheck/skins/flat/purple.png +0 -0
  538. data/vendor/assets/javascripts/icheck/skins/flat/purple@2x.png +0 -0
  539. data/vendor/assets/javascripts/icheck/skins/flat/red.css +53 -0
  540. data/vendor/assets/javascripts/icheck/skins/flat/red.png +0 -0
  541. data/vendor/assets/javascripts/icheck/skins/flat/red@2x.png +0 -0
  542. data/vendor/assets/javascripts/icheck/skins/flat/yellow.css +53 -0
  543. data/vendor/assets/javascripts/icheck/skins/flat/yellow.png +0 -0
  544. data/vendor/assets/javascripts/icheck/skins/flat/yellow@2x.png +0 -0
  545. data/vendor/assets/javascripts/icheck/skins/futurico/futurico.css +53 -0
  546. data/vendor/assets/javascripts/icheck/skins/futurico/futurico.png +0 -0
  547. data/vendor/assets/javascripts/icheck/skins/futurico/futurico@2x.png +0 -0
  548. data/vendor/assets/javascripts/icheck/skins/line/_all.css +710 -0
  549. data/vendor/assets/javascripts/icheck/skins/line/aero.css +71 -0
  550. data/vendor/assets/javascripts/icheck/skins/line/blue.css +71 -0
  551. data/vendor/assets/javascripts/icheck/skins/line/green.css +71 -0
  552. data/vendor/assets/javascripts/icheck/skins/line/grey.css +71 -0
  553. data/vendor/assets/javascripts/icheck/skins/line/line.css +71 -0
  554. data/vendor/assets/javascripts/icheck/skins/line/line.png +0 -0
  555. data/vendor/assets/javascripts/icheck/skins/line/line@2x.png +0 -0
  556. data/vendor/assets/javascripts/icheck/skins/line/orange.css +71 -0
  557. data/vendor/assets/javascripts/icheck/skins/line/pink.css +71 -0
  558. data/vendor/assets/javascripts/icheck/skins/line/purple.css +71 -0
  559. data/vendor/assets/javascripts/icheck/skins/line/red.css +71 -0
  560. data/vendor/assets/javascripts/icheck/skins/line/yellow.css +71 -0
  561. data/vendor/assets/javascripts/icheck/skins/minimal/_all.css +590 -0
  562. data/vendor/assets/javascripts/icheck/skins/minimal/aero.css +59 -0
  563. data/vendor/assets/javascripts/icheck/skins/minimal/aero.png +0 -0
  564. data/vendor/assets/javascripts/icheck/skins/minimal/aero@2x.png +0 -0
  565. data/vendor/assets/javascripts/icheck/skins/minimal/blue.css +59 -0
  566. data/vendor/assets/javascripts/icheck/skins/minimal/blue.png +0 -0
  567. data/vendor/assets/javascripts/icheck/skins/minimal/blue@2x.png +0 -0
  568. data/vendor/assets/javascripts/icheck/skins/minimal/green.css +59 -0
  569. data/vendor/assets/javascripts/icheck/skins/minimal/green.png +0 -0
  570. data/vendor/assets/javascripts/icheck/skins/minimal/green@2x.png +0 -0
  571. data/vendor/assets/javascripts/icheck/skins/minimal/grey.css +59 -0
  572. data/vendor/assets/javascripts/icheck/skins/minimal/grey.png +0 -0
  573. data/vendor/assets/javascripts/icheck/skins/minimal/grey@2x.png +0 -0
  574. data/vendor/assets/javascripts/icheck/skins/minimal/minimal.css +59 -0
  575. data/vendor/assets/javascripts/icheck/skins/minimal/minimal.png +0 -0
  576. data/vendor/assets/javascripts/icheck/skins/minimal/minimal@2x.png +0 -0
  577. data/vendor/assets/javascripts/icheck/skins/minimal/orange.css +59 -0
  578. data/vendor/assets/javascripts/icheck/skins/minimal/orange.png +0 -0
  579. data/vendor/assets/javascripts/icheck/skins/minimal/orange@2x.png +0 -0
  580. data/vendor/assets/javascripts/icheck/skins/minimal/pink.css +59 -0
  581. data/vendor/assets/javascripts/icheck/skins/minimal/pink.png +0 -0
  582. data/vendor/assets/javascripts/icheck/skins/minimal/pink@2x.png +0 -0
  583. data/vendor/assets/javascripts/icheck/skins/minimal/purple.css +59 -0
  584. data/vendor/assets/javascripts/icheck/skins/minimal/purple.png +0 -0
  585. data/vendor/assets/javascripts/icheck/skins/minimal/purple@2x.png +0 -0
  586. data/vendor/assets/javascripts/icheck/skins/minimal/red.css +59 -0
  587. data/vendor/assets/javascripts/icheck/skins/minimal/red.png +0 -0
  588. data/vendor/assets/javascripts/icheck/skins/minimal/red@2x.png +0 -0
  589. data/vendor/assets/javascripts/icheck/skins/minimal/yellow.css +59 -0
  590. data/vendor/assets/javascripts/icheck/skins/minimal/yellow.png +0 -0
  591. data/vendor/assets/javascripts/icheck/skins/minimal/yellow@2x.png +0 -0
  592. data/vendor/assets/javascripts/icheck/skins/polaris/polaris.css +59 -0
  593. data/vendor/assets/javascripts/icheck/skins/polaris/polaris.png +0 -0
  594. data/vendor/assets/javascripts/icheck/skins/polaris/polaris@2x.png +0 -0
  595. data/vendor/assets/javascripts/icheck/skins/square/_all.css +590 -0
  596. data/vendor/assets/javascripts/icheck/skins/square/aero.css +59 -0
  597. data/vendor/assets/javascripts/icheck/skins/square/aero.png +0 -0
  598. data/vendor/assets/javascripts/icheck/skins/square/aero@2x.png +0 -0
  599. data/vendor/assets/javascripts/icheck/skins/square/blue.css +59 -0
  600. data/vendor/assets/javascripts/icheck/skins/square/blue.png +0 -0
  601. data/vendor/assets/javascripts/icheck/skins/square/blue@2x.png +0 -0
  602. data/vendor/assets/javascripts/icheck/skins/square/green.css +59 -0
  603. data/vendor/assets/javascripts/icheck/skins/square/green.png +0 -0
  604. data/vendor/assets/javascripts/icheck/skins/square/green@2x.png +0 -0
  605. data/vendor/assets/javascripts/icheck/skins/square/grey.css +59 -0
  606. data/vendor/assets/javascripts/icheck/skins/square/grey.png +0 -0
  607. data/vendor/assets/javascripts/icheck/skins/square/grey@2x.png +0 -0
  608. data/vendor/assets/javascripts/icheck/skins/square/orange.css +59 -0
  609. data/vendor/assets/javascripts/icheck/skins/square/orange.png +0 -0
  610. data/vendor/assets/javascripts/icheck/skins/square/orange@2x.png +0 -0
  611. data/vendor/assets/javascripts/icheck/skins/square/pink.css +59 -0
  612. data/vendor/assets/javascripts/icheck/skins/square/pink.png +0 -0
  613. data/vendor/assets/javascripts/icheck/skins/square/pink@2x.png +0 -0
  614. data/vendor/assets/javascripts/icheck/skins/square/purple.css +59 -0
  615. data/vendor/assets/javascripts/icheck/skins/square/purple.png +0 -0
  616. data/vendor/assets/javascripts/icheck/skins/square/purple@2x.png +0 -0
  617. data/vendor/assets/javascripts/icheck/skins/square/red.css +59 -0
  618. data/vendor/assets/javascripts/icheck/skins/square/red.png +0 -0
  619. data/vendor/assets/javascripts/icheck/skins/square/red@2x.png +0 -0
  620. data/vendor/assets/javascripts/icheck/skins/square/square.css +59 -0
  621. data/vendor/assets/javascripts/icheck/skins/square/square.png +0 -0
  622. data/vendor/assets/javascripts/icheck/skins/square/square@2x.png +0 -0
  623. data/vendor/assets/javascripts/icheck/skins/square/yellow.css +59 -0
  624. data/vendor/assets/javascripts/icheck/skins/square/yellow.png +0 -0
  625. data/vendor/assets/javascripts/icheck/skins/square/yellow@2x.png +0 -0
  626. data/vendor/assets/javascripts/inputmask/index.html +0 -0
  627. data/vendor/assets/javascripts/inputmask/inputmask/jquery.inputmask.date.extensions.js +8 -0
  628. data/vendor/assets/javascripts/inputmask/inputmask/jquery.inputmask.extensions.js +8 -0
  629. data/vendor/assets/javascripts/inputmask/inputmask/jquery.inputmask.js +9 -0
  630. data/vendor/assets/javascripts/inputmask/inputmask/jquery.inputmask.numeric.extensions.js +8 -0
  631. data/vendor/assets/javascripts/inputmask/inputmask/jquery.inputmask.phone.extensions.js +8 -0
  632. data/vendor/assets/javascripts/inputmask/inputmask/jquery.inputmask.regex.extensions.js +8 -0
  633. data/vendor/assets/javascripts/inputmask/jquery.inputmask.bundle.js +9 -0
  634. data/vendor/assets/javascripts/joinable.js +45 -0
  635. data/vendor/assets/javascripts/jquery-1.11.1.min.js +4 -0
  636. data/vendor/assets/javascripts/jquery-ui/external/jquery/jquery.js +9789 -0
  637. data/vendor/assets/javascripts/jquery-ui/index.html +317 -0
  638. data/vendor/assets/javascripts/jquery-ui/jquery-ui.css +239 -0
  639. data/vendor/assets/javascripts/jquery-ui/jquery-ui.js +6343 -0
  640. data/vendor/assets/javascripts/jquery-ui/jquery-ui.min.css +6 -0
  641. data/vendor/assets/javascripts/jquery-ui/jquery-ui.min.js +9 -0
  642. data/vendor/assets/javascripts/jquery-ui/jquery-ui.structure.css +245 -0
  643. data/vendor/assets/javascripts/jquery-ui/jquery-ui.structure.min.css +5 -0
  644. data/vendor/assets/javascripts/jquery-validate/additional-methods.js +928 -0
  645. data/vendor/assets/javascripts/jquery-validate/additional-methods.min.js +4 -0
  646. data/vendor/assets/javascripts/jquery-validate/index.html +0 -0
  647. data/vendor/assets/javascripts/jquery-validate/jquery.validate.js +1357 -0
  648. data/vendor/assets/javascripts/jquery-validate/jquery.validate.min.js +4 -0
  649. data/vendor/assets/javascripts/jquery-validate/localization/messages_ar.js +33 -0
  650. data/vendor/assets/javascripts/jquery-validate/localization/messages_ar.min.js +4 -0
  651. data/vendor/assets/javascripts/jquery-validate/localization/messages_bg.js +33 -0
  652. data/vendor/assets/javascripts/jquery-validate/localization/messages_bg.min.js +4 -0
  653. data/vendor/assets/javascripts/jquery-validate/localization/messages_ca.js +33 -0
  654. data/vendor/assets/javascripts/jquery-validate/localization/messages_ca.min.js +4 -0
  655. data/vendor/assets/javascripts/jquery-validate/localization/messages_cs.js +33 -0
  656. data/vendor/assets/javascripts/jquery-validate/localization/messages_cs.min.js +4 -0
  657. data/vendor/assets/javascripts/jquery-validate/localization/messages_da.js +30 -0
  658. data/vendor/assets/javascripts/jquery-validate/localization/messages_da.min.js +4 -0
  659. data/vendor/assets/javascripts/jquery-validate/localization/messages_de.js +30 -0
  660. data/vendor/assets/javascripts/jquery-validate/localization/messages_de.min.js +4 -0
  661. data/vendor/assets/javascripts/jquery-validate/localization/messages_el.js +33 -0
  662. data/vendor/assets/javascripts/jquery-validate/localization/messages_el.min.js +4 -0
  663. data/vendor/assets/javascripts/jquery-validate/localization/messages_es.js +36 -0
  664. data/vendor/assets/javascripts/jquery-validate/localization/messages_es.min.js +4 -0
  665. data/vendor/assets/javascripts/jquery-validate/localization/messages_es_AR.js +37 -0
  666. data/vendor/assets/javascripts/jquery-validate/localization/messages_es_AR.min.js +4 -0
  667. data/vendor/assets/javascripts/jquery-validate/localization/messages_et.js +31 -0
  668. data/vendor/assets/javascripts/jquery-validate/localization/messages_et.min.js +4 -0
  669. data/vendor/assets/javascripts/jquery-validate/localization/messages_eu.js +33 -0
  670. data/vendor/assets/javascripts/jquery-validate/localization/messages_eu.min.js +4 -0
  671. data/vendor/assets/javascripts/jquery-validate/localization/messages_fa.js +36 -0
  672. data/vendor/assets/javascripts/jquery-validate/localization/messages_fa.min.js +4 -0
  673. data/vendor/assets/javascripts/jquery-validate/localization/messages_fi.js +31 -0
  674. data/vendor/assets/javascripts/jquery-validate/localization/messages_fi.min.js +4 -0
  675. data/vendor/assets/javascripts/jquery-validate/localization/messages_fr.js +59 -0
  676. data/vendor/assets/javascripts/jquery-validate/localization/messages_fr.min.js +4 -0
  677. data/vendor/assets/javascripts/jquery-validate/localization/messages_gl.js +38 -0
  678. data/vendor/assets/javascripts/jquery-validate/localization/messages_gl.min.js +4 -0
  679. data/vendor/assets/javascripts/jquery-validate/localization/messages_he.js +33 -0
  680. data/vendor/assets/javascripts/jquery-validate/localization/messages_he.min.js +4 -0
  681. data/vendor/assets/javascripts/jquery-validate/localization/messages_hr.js +33 -0
  682. data/vendor/assets/javascripts/jquery-validate/localization/messages_hr.min.js +4 -0
  683. data/vendor/assets/javascripts/jquery-validate/localization/messages_hu.js +32 -0
  684. data/vendor/assets/javascripts/jquery-validate/localization/messages_hu.min.js +4 -0
  685. data/vendor/assets/javascripts/jquery-validate/localization/messages_id.js +32 -0
  686. data/vendor/assets/javascripts/jquery-validate/localization/messages_id.min.js +4 -0
  687. data/vendor/assets/javascripts/jquery-validate/localization/messages_is.js +31 -0
  688. data/vendor/assets/javascripts/jquery-validate/localization/messages_is.min.js +4 -0
  689. data/vendor/assets/javascripts/jquery-validate/localization/messages_it.js +36 -0
  690. data/vendor/assets/javascripts/jquery-validate/localization/messages_it.min.js +4 -0
  691. data/vendor/assets/javascripts/jquery-validate/localization/messages_ja.js +33 -0
  692. data/vendor/assets/javascripts/jquery-validate/localization/messages_ja.min.js +4 -0
  693. data/vendor/assets/javascripts/jquery-validate/localization/messages_ka.js +33 -0
  694. data/vendor/assets/javascripts/jquery-validate/localization/messages_ka.min.js +4 -0
  695. data/vendor/assets/javascripts/jquery-validate/localization/messages_kk.js +33 -0
  696. data/vendor/assets/javascripts/jquery-validate/localization/messages_kk.min.js +4 -0
  697. data/vendor/assets/javascripts/jquery-validate/localization/messages_ko.js +33 -0
  698. data/vendor/assets/javascripts/jquery-validate/localization/messages_ko.min.js +4 -0
  699. data/vendor/assets/javascripts/jquery-validate/localization/messages_lt.js +33 -0
  700. data/vendor/assets/javascripts/jquery-validate/localization/messages_lt.min.js +4 -0
  701. data/vendor/assets/javascripts/jquery-validate/localization/messages_lv.js +33 -0
  702. data/vendor/assets/javascripts/jquery-validate/localization/messages_lv.min.js +4 -0
  703. data/vendor/assets/javascripts/jquery-validate/localization/messages_my.js +33 -0
  704. data/vendor/assets/javascripts/jquery-validate/localization/messages_my.min.js +4 -0
  705. data/vendor/assets/javascripts/jquery-validate/localization/messages_nl.js +43 -0
  706. data/vendor/assets/javascripts/jquery-validate/localization/messages_nl.min.js +4 -0
  707. data/vendor/assets/javascripts/jquery-validate/localization/messages_no.js +33 -0
  708. data/vendor/assets/javascripts/jquery-validate/localization/messages_no.min.js +4 -0
  709. data/vendor/assets/javascripts/jquery-validate/localization/messages_pl.js +33 -0
  710. data/vendor/assets/javascripts/jquery-validate/localization/messages_pl.min.js +4 -0
  711. data/vendor/assets/javascripts/jquery-validate/localization/messages_pt_BR.js +37 -0
  712. data/vendor/assets/javascripts/jquery-validate/localization/messages_pt_BR.min.js +4 -0
  713. data/vendor/assets/javascripts/jquery-validate/localization/messages_pt_PT.js +37 -0
  714. data/vendor/assets/javascripts/jquery-validate/localization/messages_pt_PT.min.js +4 -0
  715. data/vendor/assets/javascripts/jquery-validate/localization/messages_ro.js +33 -0
  716. data/vendor/assets/javascripts/jquery-validate/localization/messages_ro.min.js +4 -0
  717. data/vendor/assets/javascripts/jquery-validate/localization/messages_ru.js +33 -0
  718. data/vendor/assets/javascripts/jquery-validate/localization/messages_ru.min.js +4 -0
  719. data/vendor/assets/javascripts/jquery-validate/localization/messages_si.js +33 -0
  720. data/vendor/assets/javascripts/jquery-validate/localization/messages_si.min.js +4 -0
  721. data/vendor/assets/javascripts/jquery-validate/localization/messages_sk.js +30 -0
  722. data/vendor/assets/javascripts/jquery-validate/localization/messages_sk.min.js +4 -0
  723. data/vendor/assets/javascripts/jquery-validate/localization/messages_sl.js +33 -0
  724. data/vendor/assets/javascripts/jquery-validate/localization/messages_sl.min.js +4 -0
  725. data/vendor/assets/javascripts/jquery-validate/localization/messages_sr.js +33 -0
  726. data/vendor/assets/javascripts/jquery-validate/localization/messages_sr.min.js +4 -0
  727. data/vendor/assets/javascripts/jquery-validate/localization/messages_sr_lat.js +33 -0
  728. data/vendor/assets/javascripts/jquery-validate/localization/messages_sr_lat.min.js +4 -0
  729. data/vendor/assets/javascripts/jquery-validate/localization/messages_sv.js +31 -0
  730. data/vendor/assets/javascripts/jquery-validate/localization/messages_sv.min.js +4 -0
  731. data/vendor/assets/javascripts/jquery-validate/localization/messages_th.js +33 -0
  732. data/vendor/assets/javascripts/jquery-validate/localization/messages_th.min.js +4 -0
  733. data/vendor/assets/javascripts/jquery-validate/localization/messages_tj.js +33 -0
  734. data/vendor/assets/javascripts/jquery-validate/localization/messages_tj.min.js +4 -0
  735. data/vendor/assets/javascripts/jquery-validate/localization/messages_tr.js +33 -0
  736. data/vendor/assets/javascripts/jquery-validate/localization/messages_tr.min.js +4 -0
  737. data/vendor/assets/javascripts/jquery-validate/localization/messages_uk.js +33 -0
  738. data/vendor/assets/javascripts/jquery-validate/localization/messages_uk.min.js +4 -0
  739. data/vendor/assets/javascripts/jquery-validate/localization/messages_vi.js +33 -0
  740. data/vendor/assets/javascripts/jquery-validate/localization/messages_vi.min.js +4 -0
  741. data/vendor/assets/javascripts/jquery-validate/localization/messages_zh.js +33 -0
  742. data/vendor/assets/javascripts/jquery-validate/localization/messages_zh.min.js +4 -0
  743. data/vendor/assets/javascripts/jquery-validate/localization/messages_zh_TW.js +34 -0
  744. data/vendor/assets/javascripts/jquery-validate/localization/messages_zh_TW.min.js +4 -0
  745. data/vendor/assets/javascripts/jquery-validate/localization/methods_de.js +22 -0
  746. data/vendor/assets/javascripts/jquery-validate/localization/methods_de.min.js +4 -0
  747. data/vendor/assets/javascripts/jquery-validate/localization/methods_es_CL.js +22 -0
  748. data/vendor/assets/javascripts/jquery-validate/localization/methods_es_CL.min.js +4 -0
  749. data/vendor/assets/javascripts/jquery-validate/localization/methods_fi.js +22 -0
  750. data/vendor/assets/javascripts/jquery-validate/localization/methods_fi.min.js +4 -0
  751. data/vendor/assets/javascripts/jquery-validate/localization/methods_nl.js +19 -0
  752. data/vendor/assets/javascripts/jquery-validate/localization/methods_nl.min.js +4 -0
  753. data/vendor/assets/javascripts/jquery-validate/localization/methods_pt.js +19 -0
  754. data/vendor/assets/javascripts/jquery-validate/localization/methods_pt.min.js +4 -0
  755. data/vendor/assets/javascripts/jquery.mousewheel.js +201 -0
  756. data/vendor/assets/javascripts/jvectormap/index.html +0 -0
  757. data/vendor/assets/javascripts/jvectormap/jquery-jvectormap-1.1.1.css +37 -0
  758. data/vendor/assets/javascripts/jvectormap/jquery-jvectormap-1.1.1.min.js +7 -0
  759. data/vendor/assets/javascripts/jvectormap/jquery-jvectormap-1.2.2.css +37 -0
  760. data/vendor/assets/javascripts/jvectormap/jquery-jvectormap-1.2.2.min.js +8 -0
  761. data/vendor/assets/javascripts/jvectormap/regions/index.html +0 -0
  762. data/vendor/assets/javascripts/jvectormap/regions/jquery-jvectormap-it-mill-en.js +1 -0
  763. data/vendor/assets/javascripts/jvectormap/regions/jquery-jvectormap-world-mill-en.js +1 -0
  764. data/vendor/assets/javascripts/knob/index.html +0 -0
  765. data/vendor/assets/javascripts/knob/jquery.knob.min.js +1 -0
  766. data/vendor/assets/javascripts/min/bootstrap.min-min.js +2 -0
  767. data/vendor/assets/javascripts/min/resizeable-min.js +1 -0
  768. data/vendor/assets/javascripts/min/xenon-notes-min.js +1 -0
  769. data/vendor/assets/javascripts/min/xenon-toggles-min.js +1 -0
  770. data/vendor/assets/javascripts/moment.min.js +6 -0
  771. data/vendor/assets/javascripts/multiselect/css/index.html +0 -0
  772. data/vendor/assets/javascripts/multiselect/css/multi-select.css +93 -0
  773. data/vendor/assets/javascripts/multiselect/img/index.html +0 -0
  774. data/vendor/assets/javascripts/multiselect/img/switch.png +0 -0
  775. data/vendor/assets/javascripts/multiselect/index.html +0 -0
  776. data/vendor/assets/javascripts/multiselect/js/index.html +0 -0
  777. data/vendor/assets/javascripts/multiselect/js/jquery.multi-select.js +532 -0
  778. data/vendor/assets/javascripts/resizeable.js +122 -0
  779. data/vendor/assets/javascripts/rwd-table/css/rwd-table.css +306 -0
  780. data/vendor/assets/javascripts/rwd-table/css/rwd-table.min.css +7 -0
  781. data/vendor/assets/javascripts/rwd-table/index.html +0 -0
  782. data/vendor/assets/javascripts/rwd-table/js/rwd-table.js +674 -0
  783. data/vendor/assets/javascripts/rwd-table/js/rwd-table.min.js +7 -0
  784. data/vendor/assets/javascripts/select2/LICENSE +18 -0
  785. data/vendor/assets/javascripts/select2/index.html +0 -0
  786. data/vendor/assets/javascripts/select2/select2-bootstrap.css +87 -0
  787. data/vendor/assets/javascripts/select2/select2-spinner.gif +0 -0
  788. data/vendor/assets/javascripts/select2/select2.css +704 -0
  789. data/vendor/assets/javascripts/select2/select2.jquery.json +36 -0
  790. data/vendor/assets/javascripts/select2/select2.js +3508 -0
  791. data/vendor/assets/javascripts/select2/select2.min.js +23 -0
  792. data/vendor/assets/javascripts/select2/select2.png +0 -0
  793. data/vendor/assets/javascripts/select2/select2_locale_ar.js +19 -0
  794. data/vendor/assets/javascripts/select2/select2_locale_az.js +20 -0
  795. data/vendor/assets/javascripts/select2/select2_locale_bg.js +20 -0
  796. data/vendor/assets/javascripts/select2/select2_locale_ca.js +19 -0
  797. data/vendor/assets/javascripts/select2/select2_locale_cs.js +51 -0
  798. data/vendor/assets/javascripts/select2/select2_locale_da.js +19 -0
  799. data/vendor/assets/javascripts/select2/select2_locale_de.js +18 -0
  800. data/vendor/assets/javascripts/select2/select2_locale_el.js +19 -0
  801. data/vendor/assets/javascripts/select2/select2_locale_en.js.template +20 -0
  802. data/vendor/assets/javascripts/select2/select2_locale_es.js +17 -0
  803. data/vendor/assets/javascripts/select2/select2_locale_et.js +19 -0
  804. data/vendor/assets/javascripts/select2/select2_locale_eu.js +45 -0
  805. data/vendor/assets/javascripts/select2/select2_locale_fa.js +21 -0
  806. data/vendor/assets/javascripts/select2/select2_locale_fi.js +30 -0
  807. data/vendor/assets/javascripts/select2/select2_locale_fr.js +18 -0
  808. data/vendor/assets/javascripts/select2/select2_locale_gl.js +45 -0
  809. data/vendor/assets/javascripts/select2/select2_locale_he.js +19 -0
  810. data/vendor/assets/javascripts/select2/select2_locale_hr.js +24 -0
  811. data/vendor/assets/javascripts/select2/select2_locale_hu.js +17 -0
  812. data/vendor/assets/javascripts/select2/select2_locale_id.js +19 -0
  813. data/vendor/assets/javascripts/select2/select2_locale_is.js +17 -0
  814. data/vendor/assets/javascripts/select2/select2_locale_it.js +17 -0
  815. data/vendor/assets/javascripts/select2/select2_locale_ja.js +17 -0
  816. data/vendor/assets/javascripts/select2/select2_locale_ka.js +19 -0
  817. data/vendor/assets/javascripts/select2/select2_locale_ko.js +19 -0
  818. data/vendor/assets/javascripts/select2/select2_locale_lt.js +26 -0
  819. data/vendor/assets/javascripts/select2/select2_locale_lv.js +19 -0
  820. data/vendor/assets/javascripts/select2/select2_locale_mk.js +19 -0
  821. data/vendor/assets/javascripts/select2/select2_locale_ms.js +19 -0
  822. data/vendor/assets/javascripts/select2/select2_locale_nl.js +17 -0
  823. data/vendor/assets/javascripts/select2/select2_locale_no.js +20 -0
  824. data/vendor/assets/javascripts/select2/select2_locale_pl.js +25 -0
  825. data/vendor/assets/javascripts/select2/select2_locale_pt-BR.js +17 -0
  826. data/vendor/assets/javascripts/select2/select2_locale_pt-PT.js +17 -0
  827. data/vendor/assets/javascripts/select2/select2_locale_ro.js +17 -0
  828. data/vendor/assets/javascripts/select2/select2_locale_rs.js +19 -0
  829. data/vendor/assets/javascripts/select2/select2_locale_ru.js +23 -0
  830. data/vendor/assets/javascripts/select2/select2_locale_sk.js +50 -0
  831. data/vendor/assets/javascripts/select2/select2_locale_sv.js +19 -0
  832. data/vendor/assets/javascripts/select2/select2_locale_th.js +19 -0
  833. data/vendor/assets/javascripts/select2/select2_locale_tr.js +19 -0
  834. data/vendor/assets/javascripts/select2/select2_locale_ug-CN.js +16 -0
  835. data/vendor/assets/javascripts/select2/select2_locale_uk.js +25 -0
  836. data/vendor/assets/javascripts/select2/select2_locale_vi.js +20 -0
  837. data/vendor/assets/javascripts/select2/select2_locale_zh-CN.js +16 -0
  838. data/vendor/assets/javascripts/select2/select2_locale_zh-TW.js +16 -0
  839. data/vendor/assets/javascripts/select2/select2x2.png +0 -0
  840. data/vendor/assets/javascripts/selectboxit/index.html +0 -0
  841. data/vendor/assets/javascripts/selectboxit/jquery.selectBoxIt.css +278 -0
  842. data/vendor/assets/javascripts/selectboxit/jquery.selectBoxIt.js +3259 -0
  843. data/vendor/assets/javascripts/selectboxit/jquery.selectBoxIt.min.js +4 -0
  844. data/vendor/assets/javascripts/tagsinput/bootstrap-tagsinput.css +46 -0
  845. data/vendor/assets/javascripts/tagsinput/bootstrap-tagsinput.js +617 -0
  846. data/vendor/assets/javascripts/tagsinput/bootstrap-tagsinput.less +50 -0
  847. data/vendor/assets/javascripts/tagsinput/bootstrap-tagsinput.min.js +7 -0
  848. data/vendor/assets/javascripts/tagsinput/bootstrap-tagsinput.min.js.map +1 -0
  849. data/vendor/assets/javascripts/tagsinput/index.html +0 -0
  850. data/vendor/assets/javascripts/tagsinput/min/bootstrap-tagsinput.min-min.js +8 -0
  851. data/vendor/assets/javascripts/timepicker/bootstrap-timepicker.min.js +5 -0
  852. data/vendor/assets/javascripts/timepicker/index.html +0 -0
  853. data/vendor/assets/javascripts/toastr/index.html +0 -0
  854. data/vendor/assets/javascripts/toastr/toastr-icon.png +0 -0
  855. data/vendor/assets/javascripts/toastr/toastr.css +180 -0
  856. data/vendor/assets/javascripts/toastr/toastr.js +350 -0
  857. data/vendor/assets/javascripts/toastr/toastr.less +232 -0
  858. data/vendor/assets/javascripts/toastr/toastr.min.css +1 -0
  859. data/vendor/assets/javascripts/toastr/toastr.min.js +1 -0
  860. data/vendor/assets/javascripts/toastr/toastr.min.js.map +8 -0
  861. data/vendor/assets/javascripts/toastr/toastr.scss +183 -0
  862. data/vendor/assets/javascripts/tocify/index.html +0 -0
  863. data/vendor/assets/javascripts/tocify/jquery.tocify.css +62 -0
  864. data/vendor/assets/javascripts/tocify/jquery.tocify.min.js +4 -0
  865. data/vendor/assets/javascripts/typeahead.bundle.js +1782 -0
  866. data/vendor/assets/javascripts/uikit/css/addons/uikit.addons.css +1253 -0
  867. data/vendor/assets/javascripts/uikit/css/addons/uikit.addons.min.css +3 -0
  868. data/vendor/assets/javascripts/uikit/css/addons/uikit.almost-flat.addons.css +1334 -0
  869. data/vendor/assets/javascripts/uikit/css/addons/uikit.almost-flat.addons.min.css +3 -0
  870. data/vendor/assets/javascripts/uikit/css/addons/uikit.gradient.addons.css +1355 -0
  871. data/vendor/assets/javascripts/uikit/css/addons/uikit.gradient.addons.min.css +3 -0
  872. data/vendor/assets/javascripts/uikit/css/index.html +0 -0
  873. data/vendor/assets/javascripts/uikit/css/uikit.almost-flat.css +7273 -0
  874. data/vendor/assets/javascripts/uikit/css/uikit.almost-flat.min.css +3 -0
  875. data/vendor/assets/javascripts/uikit/css/uikit.css +1 -0
  876. data/vendor/assets/javascripts/uikit/css/uikit.gradient.css +7341 -0
  877. data/vendor/assets/javascripts/uikit/css/uikit.gradient.min.css +3 -0
  878. data/vendor/assets/javascripts/uikit/css/uikit.min.css +3 -0
  879. data/vendor/assets/javascripts/uikit/fonts/FontAwesome.otf +0 -0
  880. data/vendor/assets/javascripts/uikit/fonts/fontawesome-webfont.eot +0 -0
  881. data/vendor/assets/javascripts/uikit/fonts/fontawesome-webfont.ttf +0 -0
  882. data/vendor/assets/javascripts/uikit/fonts/fontawesome-webfont.woff +0 -0
  883. data/vendor/assets/javascripts/uikit/fonts/index.html +0 -0
  884. data/vendor/assets/javascripts/uikit/index.html +0 -0
  885. data/vendor/assets/javascripts/uikit/js/addons/autocomplete.js +305 -0
  886. data/vendor/assets/javascripts/uikit/js/addons/autocomplete.min.js +3 -0
  887. data/vendor/assets/javascripts/uikit/js/addons/cover.js +90 -0
  888. data/vendor/assets/javascripts/uikit/js/addons/cover.min.js +3 -0
  889. data/vendor/assets/javascripts/uikit/js/addons/datepicker.js +379 -0
  890. data/vendor/assets/javascripts/uikit/js/addons/datepicker.min.js +3 -0
  891. data/vendor/assets/javascripts/uikit/js/addons/form-password.js +62 -0
  892. data/vendor/assets/javascripts/uikit/js/addons/form-password.min.js +3 -0
  893. data/vendor/assets/javascripts/uikit/js/addons/form-select.js +62 -0
  894. data/vendor/assets/javascripts/uikit/js/addons/form-select.min.js +3 -0
  895. data/vendor/assets/javascripts/uikit/js/addons/htmleditor.js +615 -0
  896. data/vendor/assets/javascripts/uikit/js/addons/htmleditor.min.js +3 -0
  897. data/vendor/assets/javascripts/uikit/js/addons/nestable.js +575 -0
  898. data/vendor/assets/javascripts/uikit/js/addons/nestable.min.js +3 -0
  899. data/vendor/assets/javascripts/uikit/js/addons/notify.js +180 -0
  900. data/vendor/assets/javascripts/uikit/js/addons/notify.min.js +3 -0
  901. data/vendor/assets/javascripts/uikit/js/addons/pagination.js +146 -0
  902. data/vendor/assets/javascripts/uikit/js/addons/pagination.min.js +3 -0
  903. data/vendor/assets/javascripts/uikit/js/addons/search.js +90 -0
  904. data/vendor/assets/javascripts/uikit/js/addons/search.min.js +3 -0
  905. data/vendor/assets/javascripts/uikit/js/addons/sortable.js +520 -0
  906. data/vendor/assets/javascripts/uikit/js/addons/sortable.min.js +3 -0
  907. data/vendor/assets/javascripts/uikit/js/addons/sticky.js +240 -0
  908. data/vendor/assets/javascripts/uikit/js/addons/sticky.min.js +3 -0
  909. data/vendor/assets/javascripts/uikit/js/addons/timepicker.js +165 -0
  910. data/vendor/assets/javascripts/uikit/js/addons/timepicker.min.js +3 -0
  911. data/vendor/assets/javascripts/uikit/js/addons/upload.js +256 -0
  912. data/vendor/assets/javascripts/uikit/js/addons/upload.min.js +3 -0
  913. data/vendor/assets/javascripts/uikit/js/index.html +0 -0
  914. data/vendor/assets/javascripts/uikit/js/uikit.js +2592 -0
  915. data/vendor/assets/javascripts/uikit/js/uikit.min.js +4 -0
  916. data/vendor/assets/javascripts/uikit/less/addons/autocomplete.less +102 -0
  917. data/vendor/assets/javascripts/uikit/less/addons/cover.less +70 -0
  918. data/vendor/assets/javascripts/uikit/less/addons/datepicker.less +193 -0
  919. data/vendor/assets/javascripts/uikit/less/addons/dotnav.less +141 -0
  920. data/vendor/assets/javascripts/uikit/less/addons/flex.less +62 -0
  921. data/vendor/assets/javascripts/uikit/less/addons/form-advanced.less +123 -0
  922. data/vendor/assets/javascripts/uikit/less/addons/form-file.less +63 -0
  923. data/vendor/assets/javascripts/uikit/less/addons/form-password.less +74 -0
  924. data/vendor/assets/javascripts/uikit/less/addons/form-select.less +66 -0
  925. data/vendor/assets/javascripts/uikit/less/addons/htmleditor.less +274 -0
  926. data/vendor/assets/javascripts/uikit/less/addons/nestable.less +204 -0
  927. data/vendor/assets/javascripts/uikit/less/addons/notify.less +191 -0
  928. data/vendor/assets/javascripts/uikit/less/addons/placeholder.less +66 -0
  929. data/vendor/assets/javascripts/uikit/less/addons/search.less +310 -0
  930. data/vendor/assets/javascripts/uikit/less/addons/slidenav.less +164 -0
  931. data/vendor/assets/javascripts/uikit/less/addons/sortable.less +110 -0
  932. data/vendor/assets/javascripts/uikit/less/addons/sticky.less +52 -0
  933. data/vendor/assets/javascripts/uikit/less/addons/upload.less +34 -0
  934. data/vendor/assets/javascripts/uikit/less/alert.less +141 -0
  935. data/vendor/assets/javascripts/uikit/less/animation.less +580 -0
  936. data/vendor/assets/javascripts/uikit/less/article.less +139 -0
  937. data/vendor/assets/javascripts/uikit/less/badge.less +111 -0
  938. data/vendor/assets/javascripts/uikit/less/base.less +521 -0
  939. data/vendor/assets/javascripts/uikit/less/breadcrumb.less +86 -0
  940. data/vendor/assets/javascripts/uikit/less/button.less +407 -0
  941. data/vendor/assets/javascripts/uikit/less/close.less +133 -0
  942. data/vendor/assets/javascripts/uikit/less/comment.less +172 -0
  943. data/vendor/assets/javascripts/uikit/less/description-list.less +70 -0
  944. data/vendor/assets/javascripts/uikit/less/dropdown.less +272 -0
  945. data/vendor/assets/javascripts/uikit/less/form.less +623 -0
  946. data/vendor/assets/javascripts/uikit/less/grid.less +593 -0
  947. data/vendor/assets/javascripts/uikit/less/icon.less +695 -0
  948. data/vendor/assets/javascripts/uikit/less/index.html +0 -0
  949. data/vendor/assets/javascripts/uikit/less/list.less +102 -0
  950. data/vendor/assets/javascripts/uikit/less/modal.less +226 -0
  951. data/vendor/assets/javascripts/uikit/less/nav.less +468 -0
  952. data/vendor/assets/javascripts/uikit/less/navbar.less +327 -0
  953. data/vendor/assets/javascripts/uikit/less/offcanvas.less +162 -0
  954. data/vendor/assets/javascripts/uikit/less/overlay.less +241 -0
  955. data/vendor/assets/javascripts/uikit/less/pagination.less +198 -0
  956. data/vendor/assets/javascripts/uikit/less/panel.less +244 -0
  957. data/vendor/assets/javascripts/uikit/less/print.less +52 -0
  958. data/vendor/assets/javascripts/uikit/less/progress.less +174 -0
  959. data/vendor/assets/javascripts/uikit/less/subnav.less +183 -0
  960. data/vendor/assets/javascripts/uikit/less/switcher.less +33 -0
  961. data/vendor/assets/javascripts/uikit/less/tab.less +368 -0
  962. data/vendor/assets/javascripts/uikit/less/table.less +120 -0
  963. data/vendor/assets/javascripts/uikit/less/text.less +124 -0
  964. data/vendor/assets/javascripts/uikit/less/thumbnail.less +123 -0
  965. data/vendor/assets/javascripts/uikit/less/tooltip.less +179 -0
  966. data/vendor/assets/javascripts/uikit/less/uikit-addons.less +26 -0
  967. data/vendor/assets/javascripts/uikit/less/uikit.css +4426 -0
  968. data/vendor/assets/javascripts/uikit/less/uikit.less +53 -0
  969. data/vendor/assets/javascripts/uikit/less/utility.less +526 -0
  970. data/vendor/assets/javascripts/uikit/less/variables.less +27 -0
  971. data/vendor/assets/javascripts/uikit/uikit.css +1 -0
  972. data/vendor/assets/javascripts/uikit/vendor/codemirror/codemirror.css +340 -0
  973. data/vendor/assets/javascripts/uikit/vendor/codemirror/codemirror.js +65 -0
  974. data/vendor/assets/javascripts/uikit/vendor/codemirror/show-hint.css +38 -0
  975. data/vendor/assets/javascripts/uikit/vendor/customizer.js +290 -0
  976. data/vendor/assets/javascripts/uikit/vendor/highlight/highlight.css +127 -0
  977. data/vendor/assets/javascripts/uikit/vendor/highlight/highlight.js +1 -0
  978. data/vendor/assets/javascripts/uikit/vendor/highlight/test.html +45 -0
  979. data/vendor/assets/javascripts/uikit/vendor/holder.js +648 -0
  980. data/vendor/assets/javascripts/uikit/vendor/index.html +0 -0
  981. data/vendor/assets/javascripts/uikit/vendor/jquery.js +4 -0
  982. data/vendor/assets/javascripts/uikit/vendor/jquery.less.js +274 -0
  983. data/vendor/assets/javascripts/uikit/vendor/jquery.mustache.js +16 -0
  984. data/vendor/assets/javascripts/uikit/vendor/jquery.rtl.js +271 -0
  985. data/vendor/assets/javascripts/uikit/vendor/less.js +16 -0
  986. data/vendor/assets/javascripts/uikit/vendor/marked.js +1272 -0
  987. data/vendor/assets/javascripts/uikit/vendor/spectrum/spectrum.css +480 -0
  988. data/vendor/assets/javascripts/uikit/vendor/spectrum/spectrum.js +1889 -0
  989. data/vendor/assets/javascripts/uikit/vendor/spectrum/test.html +343 -0
  990. data/vendor/assets/javascripts/wysihtml5/index.html +0 -0
  991. data/vendor/assets/javascripts/wysihtml5/lib/css/bootstrap-responsive.css +686 -0
  992. data/vendor/assets/javascripts/wysihtml5/lib/css/bootstrap-responsive.min.css +12 -0
  993. data/vendor/assets/javascripts/wysihtml5/lib/css/bootstrap.css +3990 -0
  994. data/vendor/assets/javascripts/wysihtml5/lib/css/bootstrap.min.css +689 -0
  995. data/vendor/assets/javascripts/wysihtml5/lib/css/index.html +0 -0
  996. data/vendor/assets/javascripts/wysihtml5/lib/css/prettify.css +30 -0
  997. data/vendor/assets/javascripts/wysihtml5/lib/css/wysiwyg-color.css +67 -0
  998. data/vendor/assets/javascripts/wysihtml5/lib/img/glyphicons-halflings-white.png +0 -0
  999. data/vendor/assets/javascripts/wysihtml5/lib/img/glyphicons-halflings.png +0 -0
  1000. data/vendor/assets/javascripts/wysihtml5/lib/img/index.html +0 -0
  1001. data/vendor/assets/javascripts/wysihtml5/lib/index.html +0 -0
  1002. data/vendor/assets/javascripts/wysihtml5/lib/js/bootstrap-button.js +100 -0
  1003. data/vendor/assets/javascripts/wysihtml5/lib/js/bootstrap.js +2025 -0
  1004. data/vendor/assets/javascripts/wysihtml5/lib/js/bootstrap.min.js +6 -0
  1005. data/vendor/assets/javascripts/wysihtml5/lib/js/index.html +0 -0
  1006. data/vendor/assets/javascripts/wysihtml5/lib/js/jquery-1.7.2.min.js +4 -0
  1007. data/vendor/assets/javascripts/wysihtml5/lib/js/prettify.js +28 -0
  1008. data/vendor/assets/javascripts/wysihtml5/lib/js/wysihtml5-0.3.0.js +9523 -0
  1009. data/vendor/assets/javascripts/wysihtml5/lib/js/wysihtml5-0.3.0.min.js +261 -0
  1010. data/vendor/assets/javascripts/wysihtml5/src/bootstrap-wysihtml5.css +102 -0
  1011. data/vendor/assets/javascripts/wysihtml5/src/bootstrap-wysihtml5.js +519 -0
  1012. data/vendor/assets/javascripts/wysihtml5/src/index.html +0 -0
  1013. data/vendor/assets/javascripts/wysihtml5/src/locales/bootstrap-wysihtml5.ar-AR.js +49 -0
  1014. data/vendor/assets/javascripts/wysihtml5/src/locales/bootstrap-wysihtml5.bg-BG.js +49 -0
  1015. data/vendor/assets/javascripts/wysihtml5/src/locales/bootstrap-wysihtml5.ca-CT.js +47 -0
  1016. data/vendor/assets/javascripts/wysihtml5/src/locales/bootstrap-wysihtml5.cs-CZ.js +48 -0
  1017. data/vendor/assets/javascripts/wysihtml5/src/locales/bootstrap-wysihtml5.da-DK.js +48 -0
  1018. data/vendor/assets/javascripts/wysihtml5/src/locales/bootstrap-wysihtml5.de-DE.js +49 -0
  1019. data/vendor/assets/javascripts/wysihtml5/src/locales/bootstrap-wysihtml5.el-GR.js +48 -0
  1020. data/vendor/assets/javascripts/wysihtml5/src/locales/bootstrap-wysihtml5.es-AR.js +49 -0
  1021. data/vendor/assets/javascripts/wysihtml5/src/locales/bootstrap-wysihtml5.es-ES.js +48 -0
  1022. data/vendor/assets/javascripts/wysihtml5/src/locales/bootstrap-wysihtml5.fr-FR.js +49 -0
  1023. data/vendor/assets/javascripts/wysihtml5/src/locales/bootstrap-wysihtml5.hr-HR.js +48 -0
  1024. data/vendor/assets/javascripts/wysihtml5/src/locales/bootstrap-wysihtml5.it-IT.js +47 -0
  1025. data/vendor/assets/javascripts/wysihtml5/src/locales/bootstrap-wysihtml5.ja-JP.js +49 -0
  1026. data/vendor/assets/javascripts/wysihtml5/src/locales/bootstrap-wysihtml5.ko-KR.js +49 -0
  1027. data/vendor/assets/javascripts/wysihtml5/src/locales/bootstrap-wysihtml5.lt-LT.js +48 -0
  1028. data/vendor/assets/javascripts/wysihtml5/src/locales/bootstrap-wysihtml5.mo-MD.js +48 -0
  1029. data/vendor/assets/javascripts/wysihtml5/src/locales/bootstrap-wysihtml5.nb-NB.js +49 -0
  1030. data/vendor/assets/javascripts/wysihtml5/src/locales/bootstrap-wysihtml5.nl-NL.js +48 -0
  1031. data/vendor/assets/javascripts/wysihtml5/src/locales/bootstrap-wysihtml5.pl-PL.js +48 -0
  1032. data/vendor/assets/javascripts/wysihtml5/src/locales/bootstrap-wysihtml5.pt-BR.js +52 -0
  1033. data/vendor/assets/javascripts/wysihtml5/src/locales/bootstrap-wysihtml5.ru-RU.js +49 -0
  1034. data/vendor/assets/javascripts/wysihtml5/src/locales/bootstrap-wysihtml5.sk-SK.js +48 -0
  1035. data/vendor/assets/javascripts/wysihtml5/src/locales/bootstrap-wysihtml5.sv-SE.js +48 -0
  1036. data/vendor/assets/javascripts/wysihtml5/src/locales/bootstrap-wysihtml5.tr-TR.js +48 -0
  1037. data/vendor/assets/javascripts/wysihtml5/src/locales/bootstrap-wysihtml5.ua-UA.js +49 -0
  1038. data/vendor/assets/javascripts/wysihtml5/src/locales/bootstrap-wysihtml5.zh-CN.js +48 -0
  1039. data/vendor/assets/javascripts/wysihtml5/src/locales/bootstrap-wysihtml5.zh-TW.js +48 -0
  1040. data/vendor/assets/javascripts/wysihtml5/src/locales/index.html +0 -0
  1041. data/vendor/assets/javascripts/wysihtml5/wysihtml5-angular.js +10042 -0
  1042. data/vendor/assets/javascripts/xenon-api.js +91 -0
  1043. data/vendor/assets/javascripts/xenon-custom.js +1950 -0
  1044. data/vendor/assets/javascripts/xenon-notes.js +189 -0
  1045. data/vendor/assets/javascripts/xenon-toggles.js +321 -0
  1046. data/vendor/assets/javascripts/xenon-widgets.js +171 -0
  1047. data/vendor/assets/stylesheets/bootstrap.css +1 -0
  1048. data/vendor/assets/stylesheets/handycss.css +996 -0
  1049. data/vendor/assets/stylesheets/other/wysihtml5-color.css +67 -0
  1050. data/vendor/assets/stylesheets/xenon-components.css +1 -0
  1051. data/vendor/assets/stylesheets/xenon-core.css +1 -0
  1052. data/vendor/assets/stylesheets/xenon-forms.css +18 -0
  1053. data/vendor/assets/stylesheets/xenon-skins.css +1 -0
  1054. data/vendor/assets/stylesheets/xenon.css +18 -0
  1055. metadata +1341 -0
@@ -0,0 +1,69 @@
1
+ /*!
2
+ TableTools 2.2.3
3
+ 2009-2014 SpryMedia Ltd - datatables.net/license
4
+
5
+ ZeroClipboard 1.0.4
6
+ Author: Joseph Huckaby - MIT licensed
7
+ */
8
+ var TableTools;
9
+ (function(n,k,q){var p=function(m,p){var g={version:"1.0.4-TableTools2",clients:{},moviePath:"",nextId:1,$:function(a){"string"==typeof a&&(a=k.getElementById(a));a.addClass||(a.hide=function(){this.style.display="none"},a.show=function(){this.style.display=""},a.addClass=function(a){this.removeClass(a);this.className+=" "+a},a.removeClass=function(a){this.className=this.className.replace(RegExp("\\s*"+a+"\\s*")," ").replace(/^\s+/,"").replace(/\s+$/,"")},a.hasClass=function(a){return!!this.className.match(RegExp("\\s*"+a+
10
+ "\\s*"))});return a},setMoviePath:function(a){this.moviePath=a},dispatch:function(a,b,c){(a=this.clients[a])&&a.receiveEvent(b,c)},register:function(a,b){this.clients[a]=b},getDOMObjectPosition:function(a){var b={left:0,top:0,width:a.width?a.width:a.offsetWidth,height:a.height?a.height:a.offsetHeight};""!==a.style.width&&(b.width=a.style.width.replace("px",""));""!==a.style.height&&(b.height=a.style.height.replace("px",""));for(;a;)b.left+=a.offsetLeft,b.top+=a.offsetTop,a=a.offsetParent;return b},
11
+ Client:function(a){this.handlers={};this.id=g.nextId++;this.movieId="ZeroClipboard_TableToolsMovie_"+this.id;g.register(this.id,this);a&&this.glue(a)}};g.Client.prototype={id:0,ready:!1,movie:null,clipText:"",fileName:"",action:"copy",handCursorEnabled:!0,cssEffects:!0,handlers:null,sized:!1,glue:function(a,b){this.domElement=g.$(a);var c=99;this.domElement.style.zIndex&&(c=parseInt(this.domElement.style.zIndex,10)+1);var d=g.getDOMObjectPosition(this.domElement);this.div=k.createElement("div");var f=
12
+ this.div.style;f.position="absolute";f.left="0px";f.top="0px";f.width=d.width+"px";f.height=d.height+"px";f.zIndex=c;"undefined"!=typeof b&&""!==b&&(this.div.title=b);0!==d.width&&0!==d.height&&(this.sized=!0);this.domElement&&(this.domElement.appendChild(this.div),this.div.innerHTML=this.getHTML(d.width,d.height).replace(/&/g,"&"))},positionElement:function(){var a=g.getDOMObjectPosition(this.domElement),b=this.div.style;b.position="absolute";b.width=a.width+"px";b.height=a.height+"px";0!==a.width&&
13
+ 0!==a.height&&(this.sized=!0,b=this.div.childNodes[0],b.width=a.width,b.height=a.height)},getHTML:function(a,b){var c="",d="id="+this.id+"&width="+a+"&height="+b;if(navigator.userAgent.match(/MSIE/))var f=location.href.match(/^https/i)?"https://":"http://",c=c+('<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="'+f+'download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=10,0,0,0" width="'+a+'" height="'+b+'" id="'+this.movieId+'" align="middle"><param name="allowScriptAccess" value="always" /><param name="allowFullScreen" value="false" /><param name="movie" value="'+
14
+ g.moviePath+'" /><param name="loop" value="false" /><param name="menu" value="false" /><param name="quality" value="best" /><param name="bgcolor" value="#ffffff" /><param name="flashvars" value="'+d+'"/><param name="wmode" value="transparent"/></object>');else c+='<embed id="'+this.movieId+'" src="'+g.moviePath+'" loop="false" menu="false" quality="best" bgcolor="#ffffff" width="'+a+'" height="'+b+'" name="'+this.movieId+'" align="middle" allowScriptAccess="always" allowFullScreen="false" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" flashvars="'+
15
+ d+'" wmode="transparent" />';return c},hide:function(){this.div&&(this.div.style.left="-2000px")},show:function(){this.reposition()},destroy:function(){if(this.domElement&&this.div){this.hide();this.div.innerHTML="";var a=k.getElementsByTagName("body")[0];try{a.removeChild(this.div)}catch(b){}this.div=this.domElement=null}},reposition:function(a){a&&((this.domElement=g.$(a))||this.hide());if(this.domElement&&this.div){var a=g.getDOMObjectPosition(this.domElement),b=this.div.style;b.left=""+a.left+
16
+ "px";b.top=""+a.top+"px"}},clearText:function(){this.clipText="";this.ready&&this.movie.clearText()},appendText:function(a){this.clipText+=a;this.ready&&this.movie.appendText(a)},setText:function(a){this.clipText=a;this.ready&&this.movie.setText(a)},setCharSet:function(a){this.charSet=a;this.ready&&this.movie.setCharSet(a)},setBomInc:function(a){this.incBom=a;this.ready&&this.movie.setBomInc(a)},setFileName:function(a){this.fileName=a;this.ready&&this.movie.setFileName(a)},setAction:function(a){this.action=
17
+ a;this.ready&&this.movie.setAction(a)},addEventListener:function(a,b){a=a.toString().toLowerCase().replace(/^on/,"");this.handlers[a]||(this.handlers[a]=[]);this.handlers[a].push(b)},setHandCursor:function(a){this.handCursorEnabled=a;this.ready&&this.movie.setHandCursor(a)},setCSSEffects:function(a){this.cssEffects=!!a},receiveEvent:function(a,b){var c,a=a.toString().toLowerCase().replace(/^on/,"");switch(a){case "load":this.movie=k.getElementById(this.movieId);if(!this.movie){c=this;setTimeout(function(){c.receiveEvent("load",
18
+ null)},1);return}if(!this.ready&&navigator.userAgent.match(/Firefox/)&&navigator.userAgent.match(/Windows/)){c=this;setTimeout(function(){c.receiveEvent("load",null)},100);this.ready=!0;return}this.ready=!0;this.movie.clearText();this.movie.appendText(this.clipText);this.movie.setFileName(this.fileName);this.movie.setAction(this.action);this.movie.setCharSet(this.charSet);this.movie.setBomInc(this.incBom);this.movie.setHandCursor(this.handCursorEnabled);break;case "mouseover":this.domElement&&this.cssEffects&&
19
+ this.recoverActive&&this.domElement.addClass("active");break;case "mouseout":this.domElement&&this.cssEffects&&(this.recoverActive=!1,this.domElement.hasClass("active")&&(this.domElement.removeClass("active"),this.recoverActive=!0));break;case "mousedown":this.domElement&&this.cssEffects&&this.domElement.addClass("active");break;case "mouseup":this.domElement&&this.cssEffects&&(this.domElement.removeClass("active"),this.recoverActive=!1)}if(this.handlers[a])for(var d=0,f=this.handlers[a].length;d<
20
+ f;d++){var e=this.handlers[a][d];if("function"==typeof e)e(this,b);else if("object"==typeof e&&2==e.length)e[0][e[1]](this,b);else if("string"==typeof e)n[e](this,b)}}};n.ZeroClipboard_TableTools=g;var e=jQuery;TableTools=function(a,b){!this instanceof TableTools&&alert("Warning: TableTools must be initialised with the keyword 'new'");this.s={that:this,dt:e.fn.dataTable.Api?(new e.fn.dataTable.Api(a)).settings()[0]:a.fnSettings(),print:{saveStart:-1,saveLength:-1,saveScroll:-1,funcEnd:function(){}},
21
+ buttonCounter:0,select:{type:"",selected:[],preRowSelect:null,postSelected:null,postDeselected:null,all:!1,selectedClass:""},custom:{},swfPath:"",buttonSet:[],master:!1,tags:{}};this.dom={container:null,table:null,print:{hidden:[],message:null},collection:{collection:null,background:null}};this.classes=e.extend(!0,{},TableTools.classes);this.s.dt.bJUI&&e.extend(!0,this.classes,TableTools.classes_themeroller);this.fnSettings=function(){return this.s};"undefined"==typeof b&&(b={});TableTools._aInstances.push(this);
22
+ this._fnConstruct(b);return this};TableTools.prototype={fnGetSelected:function(a){var b=[],c=this.s.dt.aoData,d=this.s.dt.aiDisplay,f;if(a){a=0;for(f=d.length;a<f;a++)c[d[a]]._DTTT_selected&&b.push(c[d[a]].nTr)}else{a=0;for(f=c.length;a<f;a++)c[a]._DTTT_selected&&b.push(c[a].nTr)}return b},fnGetSelectedData:function(){var a=[],b=this.s.dt.aoData,c,d;c=0;for(d=b.length;c<d;c++)b[c]._DTTT_selected&&a.push(this.s.dt.oInstance.fnGetData(c));return a},fnGetSelectedIndexes:function(a){var b=[],c=this.s.dt.aoData,
23
+ d=this.s.dt.aiDisplay,f;if(a){a=0;for(f=d.length;a<f;a++)c[d[a]]._DTTT_selected&&b.push(d[a])}else{a=0;for(f=c.length;a<f;a++)c[a]._DTTT_selected&&b.push(a)}return b},fnIsSelected:function(a){a=this.s.dt.oInstance.fnGetPosition(a);return!0===this.s.dt.aoData[a]._DTTT_selected?!0:!1},fnSelectAll:function(a){this._fnRowSelect(a?this.s.dt.aiDisplay:this.s.dt.aoData)},fnSelectNone:function(a){this._fnRowDeselect(this.fnGetSelectedIndexes(a))},fnSelect:function(a){"single"==this.s.select.type&&this.fnSelectNone();
24
+ this._fnRowSelect(a)},fnDeselect:function(a){this._fnRowDeselect(a)},fnGetTitle:function(a){var b="";"undefined"!=typeof a.sTitle&&""!==a.sTitle?b=a.sTitle:(a=k.getElementsByTagName("title"),0<a.length&&(b=a[0].innerHTML));return 4>"¡".toString().length?b.replace(/[^a-zA-Z0-9_\u00A1-\uFFFF\.,\-_ !\(\)]/g,""):b.replace(/[^a-zA-Z0-9_\.,\-_ !\(\)]/g,"")},fnCalcColRatios:function(a){var b=this.s.dt.aoColumns,a=this._fnColumnTargets(a.mColumns),c=[],d=0,f=0,e,i;e=0;for(i=a.length;e<i;e++)a[e]&&(d=b[e].nTh.offsetWidth,
25
+ f+=d,c.push(d));e=0;for(i=c.length;e<i;e++)c[e]/=f;return c.join("\t")},fnGetTableData:function(a){if(this.s.dt)return this._fnGetDataTablesData(a)},fnSetText:function(a,b){this._fnFlashSetText(a,b)},fnResizeButtons:function(){for(var a in g.clients)if(a){var b=g.clients[a];"undefined"!=typeof b.domElement&&b.domElement.parentNode&&b.positionElement()}},fnResizeRequired:function(){for(var a in g.clients)if(a){var b=g.clients[a];if("undefined"!=typeof b.domElement&&b.domElement.parentNode==this.dom.container&&
26
+ !1===b.sized)return!0}return!1},fnPrint:function(a,b){b===q&&(b={});a===q||a?this._fnPrintStart(b):this._fnPrintEnd()},fnInfo:function(a,b){var c=e("<div/>").addClass(this.classes.print.info).html(a).appendTo("body");setTimeout(function(){c.fadeOut("normal",function(){c.remove()})},b)},fnContainer:function(){return this.dom.container},_fnConstruct:function(a){var b=this;this._fnCustomiseSettings(a);this.dom.container=k.createElement(this.s.tags.container);this.dom.container.className=this.classes.container;
27
+ "none"!=this.s.select.type&&this._fnRowSelectConfig();this._fnButtonDefinations(this.s.buttonSet,this.dom.container);this.s.dt.aoDestroyCallback.push({sName:"TableTools",fn:function(){e(b.s.dt.nTBody).off("click.DTTT_Select","tr");e(b.dom.container).empty();var a=e.inArray(b,TableTools._aInstances);-1!==a&&TableTools._aInstances.splice(a,1)}})},_fnCustomiseSettings:function(a){"undefined"==typeof this.s.dt._TableToolsInit&&(this.s.master=!0,this.s.dt._TableToolsInit=!0);this.dom.table=this.s.dt.nTable;
28
+ this.s.custom=e.extend({},TableTools.DEFAULTS,a);this.s.swfPath=this.s.custom.sSwfPath;"undefined"!=typeof g&&(g.moviePath=this.s.swfPath);this.s.select.type=this.s.custom.sRowSelect;this.s.select.preRowSelect=this.s.custom.fnPreRowSelect;this.s.select.postSelected=this.s.custom.fnRowSelected;this.s.select.postDeselected=this.s.custom.fnRowDeselected;this.s.custom.sSelectedClass&&(this.classes.select.row=this.s.custom.sSelectedClass);this.s.tags=this.s.custom.oTags;this.s.buttonSet=this.s.custom.aButtons},
29
+ _fnButtonDefinations:function(a,b){for(var c,d=0,f=a.length;d<f;d++){if("string"==typeof a[d]){if("undefined"==typeof TableTools.BUTTONS[a[d]]){alert("TableTools: Warning - unknown button type: "+a[d]);continue}c=e.extend({},TableTools.BUTTONS[a[d]],!0)}else{if("undefined"==typeof TableTools.BUTTONS[a[d].sExtends]){alert("TableTools: Warning - unknown button type: "+a[d].sExtends);continue}c=e.extend({},TableTools.BUTTONS[a[d].sExtends],!0);c=e.extend(c,a[d],!0)}(c=this._fnCreateButton(c,e(b).hasClass(this.classes.collection.container)))&&
30
+ b.appendChild(c)}},_fnCreateButton:function(a,b){var c=this._fnButtonBase(a,b);if(a.sAction.match(/flash/)){if(!this._fnHasFlash())return!1;this._fnFlashConfig(c,a)}else"text"==a.sAction?this._fnTextConfig(c,a):"div"==a.sAction?this._fnTextConfig(c,a):"collection"==a.sAction&&(this._fnTextConfig(c,a),this._fnCollectionConfig(c,a));if(-1!==this.s.dt.iTabIndex)e(c).attr("tabindex",this.s.dt.iTabIndex).attr("aria-controls",this.s.dt.sTableId).on("keyup.DTTT",function(a){13===a.keyCode&&(a.stopPropagation(),
31
+ e(this).trigger("click"))}).on("mousedown.DTTT",function(b){a.sAction.match(/flash/)||b.preventDefault()});return c},_fnButtonBase:function(a,b){var c,d,f;b?(c=a.sTag&&"default"!==a.sTag?a.sTag:this.s.tags.collection.button,d=a.sLinerTag&&"default"!==a.sLinerTag?a.sLiner:this.s.tags.collection.liner,f=this.classes.collection.buttons.normal):(c=a.sTag&&"default"!==a.sTag?a.sTag:this.s.tags.button,d=a.sLinerTag&&"default"!==a.sLinerTag?a.sLiner:this.s.tags.liner,f=this.classes.buttons.normal);c=k.createElement(c);
32
+ d=k.createElement(d);var e=this._fnGetMasterSettings();c.className=f+" "+a.sButtonClass;c.setAttribute("id","ToolTables_"+this.s.dt.sInstance+"_"+e.buttonCounter);c.appendChild(d);d.innerHTML=a.sButtonText;e.buttonCounter++;return c},_fnGetMasterSettings:function(){if(this.s.master)return this.s;for(var a=TableTools._aInstances,b=0,c=a.length;b<c;b++)if(this.dom.table==a[b].s.dt.nTable)return a[b].s},_fnCollectionConfig:function(a,b){var c=k.createElement(this.s.tags.collection.container);c.style.display=
33
+ "none";c.className=this.classes.collection.container;b._collection=c;k.body.appendChild(c);this._fnButtonDefinations(b.aButtons,c)},_fnCollectionShow:function(a,b){var c=this,d=e(a).offset(),f=b._collection,j=d.left,d=d.top+e(a).outerHeight(),i=e(n).height(),h=e(k).height(),o=e(n).width(),g=e(k).width();f.style.position="absolute";f.style.left=j+"px";f.style.top=d+"px";f.style.display="block";e(f).css("opacity",0);var l=k.createElement("div");l.style.position="absolute";l.style.left="0px";l.style.top=
34
+ "0px";l.style.height=(i>h?i:h)+"px";l.style.width=(o>g?o:g)+"px";l.className=this.classes.collection.background;e(l).css("opacity",0);k.body.appendChild(l);k.body.appendChild(f);i=e(f).outerWidth();o=e(f).outerHeight();j+i>g&&(f.style.left=g-i+"px");d+o>h&&(f.style.top=d-o-e(a).outerHeight()+"px");this.dom.collection.collection=f;this.dom.collection.background=l;setTimeout(function(){e(f).animate({opacity:1},500);e(l).animate({opacity:0.25},500)},10);this.fnResizeButtons();e(l).click(function(){c._fnCollectionHide.call(c,
35
+ null,null)})},_fnCollectionHide:function(a,b){!(null!==b&&"collection"==b.sExtends)&&null!==this.dom.collection.collection&&(e(this.dom.collection.collection).animate({opacity:0},500,function(){this.style.display="none"}),e(this.dom.collection.background).animate({opacity:0},500,function(){this.parentNode.removeChild(this)}),this.dom.collection.collection=null,this.dom.collection.background=null)},_fnRowSelectConfig:function(){if(this.s.master){var a=this,b=this.s.dt;e(b.nTable).addClass(this.classes.select.table);
36
+ "os"===this.s.select.type&&(e(b.nTBody).on("mousedown.DTTT_Select","tr",function(a){if(a.shiftKey)e(b.nTBody).css("-moz-user-select","none").one("selectstart.DTTT_Select","tr",function(){return!1})}),e(b.nTBody).on("mouseup.DTTT_Select","tr",function(){e(b.nTBody).css("-moz-user-select","")}));e(b.nTBody).on("click.DTTT_Select",this.s.custom.sRowSelector,function(c){var d=this.nodeName.toLowerCase()==="tr"?this:e(this).parents("tr")[0],f=a.s.select,j=a.s.dt.oInstance.fnGetPosition(d);if(d.parentNode==
37
+ b.nTBody&&b.oInstance.fnGetData(d)!==null){if(f.type=="os")if(c.ctrlKey||c.metaKey)a.fnIsSelected(d)?a._fnRowDeselect(d,c):a._fnRowSelect(d,c);else if(c.shiftKey){var i=a.s.dt.aiDisplay.slice(),h=e.inArray(f.lastRow,i),o=e.inArray(j,i);if(a.fnGetSelected().length===0||h===-1)i.splice(e.inArray(j,i)+1,i.length);else{if(h>o)var g=o,o=h,h=g;i.splice(o+1,i.length);i.splice(0,h)}if(a.fnIsSelected(d)){i.splice(e.inArray(j,i),1);a._fnRowDeselect(i,c)}else a._fnRowSelect(i,c)}else if(a.fnIsSelected(d)&&a.fnGetSelected().length===
38
+ 1)a._fnRowDeselect(d,c);else{a.fnSelectNone();a._fnRowSelect(d,c)}else if(a.fnIsSelected(d))a._fnRowDeselect(d,c);else if(f.type=="single"){a.fnSelectNone();a._fnRowSelect(d,c)}else f.type=="multi"&&a._fnRowSelect(d,c);f.lastRow=j}});b.oApi._fnCallbackReg(b,"aoRowCreatedCallback",function(c,d,f){b.aoData[f]._DTTT_selected&&e(c).addClass(a.classes.select.row)},"TableTools-SelectAll")}},_fnRowSelect:function(a,b){var c=this._fnSelectData(a),d=[],f,j;f=0;for(j=c.length;f<j;f++)c[f].nTr&&d.push(c[f].nTr);
39
+ if(null===this.s.select.preRowSelect||this.s.select.preRowSelect.call(this,b,d,!0)){f=0;for(j=c.length;f<j;f++)c[f]._DTTT_selected=!0,c[f].nTr&&e(c[f].nTr).addClass(this.classes.select.row);null!==this.s.select.postSelected&&this.s.select.postSelected.call(this,d);TableTools._fnEventDispatch(this,"select",d,!0)}},_fnRowDeselect:function(a,b){var c=this._fnSelectData(a),d=[],f,j;f=0;for(j=c.length;f<j;f++)c[f].nTr&&d.push(c[f].nTr);if(null===this.s.select.preRowSelect||this.s.select.preRowSelect.call(this,
40
+ b,d,!1)){f=0;for(j=c.length;f<j;f++)c[f]._DTTT_selected=!1,c[f].nTr&&e(c[f].nTr).removeClass(this.classes.select.row);null!==this.s.select.postDeselected&&this.s.select.postDeselected.call(this,d);TableTools._fnEventDispatch(this,"select",d,!1)}},_fnSelectData:function(a){var b=[],c,d,f;if(a.nodeName)c=this.s.dt.oInstance.fnGetPosition(a),b.push(this.s.dt.aoData[c]);else if("undefined"!==typeof a.length){d=0;for(f=a.length;d<f;d++)a[d].nodeName?(c=this.s.dt.oInstance.fnGetPosition(a[d]),b.push(this.s.dt.aoData[c])):
41
+ "number"===typeof a[d]?b.push(this.s.dt.aoData[a[d]]):b.push(a[d])}else b.push(a);return b},_fnTextConfig:function(a,b){var c=this;null!==b.fnInit&&b.fnInit.call(this,a,b);""!==b.sToolTip&&(a.title=b.sToolTip);e(a).hover(function(){b.fnMouseover!==null&&b.fnMouseover.call(this,a,b,null)},function(){b.fnMouseout!==null&&b.fnMouseout.call(this,a,b,null)});null!==b.fnSelect&&TableTools._fnEventListen(this,"select",function(d){b.fnSelect.call(c,a,b,d)});e(a).click(function(d){b.fnClick!==null&&b.fnClick.call(c,
42
+ a,b,null,d);b.fnComplete!==null&&b.fnComplete.call(c,a,b,null,null);c._fnCollectionHide(a,b)})},_fnHasFlash:function(){try{if(new ActiveXObject("ShockwaveFlash.ShockwaveFlash"))return!0}catch(a){if(navigator.mimeTypes&&navigator.mimeTypes["application/x-shockwave-flash"]!==q&&navigator.mimeTypes["application/x-shockwave-flash"].enabledPlugin)return!0}return!1},_fnFlashConfig:function(a,b){var c=this,d=new g.Client;null!==b.fnInit&&b.fnInit.call(this,a,b);d.setHandCursor(!0);"flash_save"==b.sAction?
43
+ (d.setAction("save"),d.setCharSet("utf16le"==b.sCharSet?"UTF16LE":"UTF8"),d.setBomInc(b.bBomInc),d.setFileName(b.sFileName.replace("*",this.fnGetTitle(b)))):"flash_pdf"==b.sAction?(d.setAction("pdf"),d.setFileName(b.sFileName.replace("*",this.fnGetTitle(b)))):d.setAction("copy");d.addEventListener("mouseOver",function(){b.fnMouseover!==null&&b.fnMouseover.call(c,a,b,d)});d.addEventListener("mouseOut",function(){b.fnMouseout!==null&&b.fnMouseout.call(c,a,b,d)});d.addEventListener("mouseDown",function(){b.fnClick!==
44
+ null&&b.fnClick.call(c,a,b,d)});d.addEventListener("complete",function(f,e){b.fnComplete!==null&&b.fnComplete.call(c,a,b,d,e);c._fnCollectionHide(a,b)});this._fnFlashGlue(d,a,b.sToolTip)},_fnFlashGlue:function(a,b,c){var d=this,f=b.getAttribute("id");k.getElementById(f)?a.glue(b,c):setTimeout(function(){d._fnFlashGlue(a,b,c)},100)},_fnFlashSetText:function(a,b){var c=this._fnChunkData(b,8192);a.clearText();for(var d=0,f=c.length;d<f;d++)a.appendText(c[d])},_fnColumnTargets:function(a){var b=[],c=
45
+ this.s.dt,d,f=c.aoColumns;d=f.length;if("function"==typeof a){a=a.call(this,c);for(c=0;c<d;c++)b.push(-1!==e.inArray(c,a)?!0:!1)}else if("object"==typeof a){for(c=0;c<d;c++)b.push(!1);c=0;for(d=a.length;c<d;c++)b[a[c]]=!0}else if("visible"==a)for(c=0;c<d;c++)b.push(f[c].bVisible?!0:!1);else if("hidden"==a)for(c=0;c<d;c++)b.push(f[c].bVisible?!1:!0);else if("sortable"==a)for(c=0;c<d;c++)b.push(f[c].bSortable?!0:!1);else for(c=0;c<d;c++)b.push(!0);return b},_fnNewline:function(a){return"auto"==a.sNewLine?
46
+ navigator.userAgent.match(/Windows/)?"\r\n":"\n":a.sNewLine},_fnGetDataTablesData:function(a){var b,c,d,f,j,i=[],h="",g=this.s.dt,k,l=RegExp(a.sFieldBoundary,"g"),n=this._fnColumnTargets(a.mColumns);d="undefined"!=typeof a.bSelectedOnly?a.bSelectedOnly:!1;if(a.bHeader){j=[];b=0;for(c=g.aoColumns.length;b<c;b++)n[b]&&(h=g.aoColumns[b].sTitle.replace(/\n/g," ").replace(/<.*?>/g,"").replace(/^\s+|\s+$/g,""),h=this._fnHtmlDecode(h),j.push(this._fnBoundData(h,a.sFieldBoundary,l)));i.push(j.join(a.sFieldSeperator))}d=
47
+ !0;var m;f=this.fnGetSelectedIndexes();m=(d="none"!==this.s.select.type&&d&&0!==f.length)?f:p.Api?(new p.Api(g)).rows(a.oSelectorOpts).indexes().flatten().toArray():g.oInstance.$("tr",a.oSelectorOpts).map(function(a,b){return g.oInstance.fnGetPosition(b)}).get();d=0;for(f=m.length;d<f;d++){k=g.aoData[m[d]].nTr;j=[];b=0;for(c=g.aoColumns.length;b<c;b++)n[b]&&(h=g.oApi._fnGetCellData(g,m[d],b,"display"),a.fnCellRender?h=a.fnCellRender(h,b,k,m[d])+"":"string"==typeof h?(h=h.replace(/\n/g," "),h=h.replace(/<img.*?\s+alt\s*=\s*(?:"([^"]+)"|'([^']+)'|([^\s>]+)).*?>/gi,
48
+ "$1$2$3"),h=h.replace(/<.*?>/g,"")):h+="",h=h.replace(/^\s+/,"").replace(/\s+$/,""),h=this._fnHtmlDecode(h),j.push(this._fnBoundData(h,a.sFieldBoundary,l)));i.push(j.join(a.sFieldSeperator));a.bOpenRows&&(b=e.grep(g.aoOpenRows,function(a){return a.nParent===k}),1===b.length&&(h=this._fnBoundData(e("td",b[0].nTr).html(),a.sFieldBoundary,l),i.push(h)))}if(a.bFooter&&null!==g.nTFoot){j=[];b=0;for(c=g.aoColumns.length;b<c;b++)n[b]&&null!==g.aoColumns[b].nTf&&(h=g.aoColumns[b].nTf.innerHTML.replace(/\n/g,
49
+ " ").replace(/<.*?>/g,""),h=this._fnHtmlDecode(h),j.push(this._fnBoundData(h,a.sFieldBoundary,l)));i.push(j.join(a.sFieldSeperator))}return i.join(this._fnNewline(a))},_fnBoundData:function(a,b,c){return""===b?a:b+a.replace(c,b+b)+b},_fnChunkData:function(a,b){for(var c=[],d=a.length,f=0;f<d;f+=b)f+b<d?c.push(a.substring(f,f+b)):c.push(a.substring(f,d));return c},_fnHtmlDecode:function(a){if(-1===a.indexOf("&"))return a;var b=k.createElement("div");return a.replace(/&([^\s]*?);/g,function(a,d){if("#"===
50
+ a.substr(1,1))return String.fromCharCode(Number(d.substr(1)));b.innerHTML=a;return b.childNodes[0].nodeValue})},_fnPrintStart:function(a){var b=this,c=this.s.dt;this._fnPrintHideNodes(c.nTable);this.s.print.saveStart=c._iDisplayStart;this.s.print.saveLength=c._iDisplayLength;a.bShowAll&&(c._iDisplayStart=0,c._iDisplayLength=-1,c.oApi._fnCalculateEnd&&c.oApi._fnCalculateEnd(c),c.oApi._fnDraw(c));if(""!==c.oScroll.sX||""!==c.oScroll.sY)this._fnPrintScrollStart(c),e(this.s.dt.nTable).bind("draw.DTTT_Print",
51
+ function(){b._fnPrintScrollStart(c)});var d=c.aanFeatures,f;for(f in d)if("i"!=f&&"t"!=f&&1==f.length)for(var g=0,i=d[f].length;g<i;g++)this.dom.print.hidden.push({node:d[f][g],display:"block"}),d[f][g].style.display="none";e(k.body).addClass(this.classes.print.body);""!==a.sInfo&&this.fnInfo(a.sInfo,3E3);a.sMessage&&e("<div/>").addClass(this.classes.print.message).html(a.sMessage).prependTo("body");this.s.print.saveScroll=e(n).scrollTop();n.scrollTo(0,0);e(k).bind("keydown.DTTT",function(a){if(a.keyCode==
52
+ 27){a.preventDefault();b._fnPrintEnd.call(b,a)}})},_fnPrintEnd:function(){var a=this.s.dt,b=this.s.print;this._fnPrintShowNodes();if(""!==a.oScroll.sX||""!==a.oScroll.sY)e(this.s.dt.nTable).unbind("draw.DTTT_Print"),this._fnPrintScrollEnd();n.scrollTo(0,b.saveScroll);e("div."+this.classes.print.message).remove();e(k.body).removeClass("DTTT_Print");a._iDisplayStart=b.saveStart;a._iDisplayLength=b.saveLength;a.oApi._fnCalculateEnd&&a.oApi._fnCalculateEnd(a);a.oApi._fnDraw(a);e(k).unbind("keydown.DTTT")},
53
+ _fnPrintScrollStart:function(){var a=this.s.dt;a.nScrollHead.getElementsByTagName("div")[0].getElementsByTagName("table");var b=a.nTable.parentNode,c;c=a.nTable.getElementsByTagName("thead");0<c.length&&a.nTable.removeChild(c[0]);null!==a.nTFoot&&(c=a.nTable.getElementsByTagName("tfoot"),0<c.length&&a.nTable.removeChild(c[0]));c=a.nTHead.cloneNode(!0);a.nTable.insertBefore(c,a.nTable.childNodes[0]);null!==a.nTFoot&&(c=a.nTFoot.cloneNode(!0),a.nTable.insertBefore(c,a.nTable.childNodes[1]));""!==a.oScroll.sX&&
54
+ (a.nTable.style.width=e(a.nTable).outerWidth()+"px",b.style.width=e(a.nTable).outerWidth()+"px",b.style.overflow="visible");""!==a.oScroll.sY&&(b.style.height=e(a.nTable).outerHeight()+"px",b.style.overflow="visible")},_fnPrintScrollEnd:function(){var a=this.s.dt,b=a.nTable.parentNode;""!==a.oScroll.sX&&(b.style.width=a.oApi._fnStringToCss(a.oScroll.sX),b.style.overflow="auto");""!==a.oScroll.sY&&(b.style.height=a.oApi._fnStringToCss(a.oScroll.sY),b.style.overflow="auto")},_fnPrintShowNodes:function(){for(var a=
55
+ this.dom.print.hidden,b=0,c=a.length;b<c;b++)a[b].node.style.display=a[b].display;a.splice(0,a.length)},_fnPrintHideNodes:function(a){for(var b=this.dom.print.hidden,c=a.parentNode,d=c.childNodes,f=0,g=d.length;f<g;f++)if(d[f]!=a&&1==d[f].nodeType){var i=e(d[f]).css("display");"none"!=i&&(b.push({node:d[f],display:i}),d[f].style.display="none")}"BODY"!=c.nodeName.toUpperCase()&&this._fnPrintHideNodes(c)}};TableTools._aInstances=[];TableTools._aListeners=[];TableTools.fnGetMasters=function(){for(var a=
56
+ [],b=0,c=TableTools._aInstances.length;b<c;b++)TableTools._aInstances[b].s.master&&a.push(TableTools._aInstances[b]);return a};TableTools.fnGetInstance=function(a){"object"!=typeof a&&(a=k.getElementById(a));for(var b=0,c=TableTools._aInstances.length;b<c;b++)if(TableTools._aInstances[b].s.master&&TableTools._aInstances[b].dom.table==a)return TableTools._aInstances[b];return null};TableTools._fnEventListen=function(a,b,c){TableTools._aListeners.push({that:a,type:b,fn:c})};TableTools._fnEventDispatch=
57
+ function(a,b,c,d){for(var f=TableTools._aListeners,e=0,g=f.length;e<g;e++)a.dom.table==f[e].that.dom.table&&f[e].type==b&&f[e].fn(c,d)};TableTools.buttonBase={sAction:"text",sTag:"default",sLinerTag:"default",sButtonClass:"DTTT_button_text",sButtonText:"Button text",sTitle:"",sToolTip:"",sCharSet:"utf8",bBomInc:!1,sFileName:"*.csv",sFieldBoundary:"",sFieldSeperator:"\t",sNewLine:"auto",mColumns:"all",bHeader:!0,bFooter:!0,bOpenRows:!1,bSelectedOnly:!1,oSelectorOpts:q,fnMouseover:null,fnMouseout:null,
58
+ fnClick:null,fnSelect:null,fnComplete:null,fnInit:null,fnCellRender:null};TableTools.BUTTONS={csv:e.extend({},TableTools.buttonBase,{sAction:"flash_save",sButtonClass:"DTTT_button_csv",sButtonText:"CSV",sFieldBoundary:'"',sFieldSeperator:",",fnClick:function(a,b,c){this.fnSetText(c,this.fnGetTableData(b))}}),xls:e.extend({},TableTools.buttonBase,{sAction:"flash_save",sCharSet:"utf16le",bBomInc:!0,sButtonClass:"DTTT_button_xls",sButtonText:"Excel",fnClick:function(a,b,c){this.fnSetText(c,this.fnGetTableData(b))}}),
59
+ copy:e.extend({},TableTools.buttonBase,{sAction:"flash_copy",sButtonClass:"DTTT_button_copy",sButtonText:"Copy",fnClick:function(a,b,c){this.fnSetText(c,this.fnGetTableData(b))},fnComplete:function(a,b,c,d){a=d.split("\n").length;b.bHeader&&a--;null!==this.s.dt.nTFoot&&b.bFooter&&a--;this.fnInfo("<h6>Table copied</h6><p>Copied "+a+" row"+(1==a?"":"s")+" to the clipboard.</p>",1500)}}),pdf:e.extend({},TableTools.buttonBase,{sAction:"flash_pdf",sNewLine:"\n",sFileName:"*.pdf",sButtonClass:"DTTT_button_pdf",
60
+ sButtonText:"PDF",sPdfOrientation:"portrait",sPdfSize:"A4",sPdfMessage:"",fnClick:function(a,b,c){this.fnSetText(c,"title:"+this.fnGetTitle(b)+"\nmessage:"+b.sPdfMessage+"\ncolWidth:"+this.fnCalcColRatios(b)+"\norientation:"+b.sPdfOrientation+"\nsize:"+b.sPdfSize+"\n--/TableToolsOpts--\n"+this.fnGetTableData(b))}}),print:e.extend({},TableTools.buttonBase,{sInfo:"<h6>Print view</h6><p>Please use your browser's print function to print this table. Press escape when finished.</p>",sMessage:null,bShowAll:!0,
61
+ sToolTip:"View print view",sButtonClass:"DTTT_button_print",sButtonText:"Print",fnClick:function(a,b){this.fnPrint(!0,b)}}),text:e.extend({},TableTools.buttonBase),select:e.extend({},TableTools.buttonBase,{sButtonText:"Select button",fnSelect:function(a){0!==this.fnGetSelected().length?e(a).removeClass(this.classes.buttons.disabled):e(a).addClass(this.classes.buttons.disabled)},fnInit:function(a){e(a).addClass(this.classes.buttons.disabled)}}),select_single:e.extend({},TableTools.buttonBase,{sButtonText:"Select button",
62
+ fnSelect:function(a){1==this.fnGetSelected().length?e(a).removeClass(this.classes.buttons.disabled):e(a).addClass(this.classes.buttons.disabled)},fnInit:function(a){e(a).addClass(this.classes.buttons.disabled)}}),select_all:e.extend({},TableTools.buttonBase,{sButtonText:"Select all",fnClick:function(){this.fnSelectAll()},fnSelect:function(a){this.fnGetSelected().length==this.s.dt.fnRecordsDisplay()?e(a).addClass(this.classes.buttons.disabled):e(a).removeClass(this.classes.buttons.disabled)}}),select_none:e.extend({},
63
+ TableTools.buttonBase,{sButtonText:"Deselect all",fnClick:function(){this.fnSelectNone()},fnSelect:function(a){0!==this.fnGetSelected().length?e(a).removeClass(this.classes.buttons.disabled):e(a).addClass(this.classes.buttons.disabled)},fnInit:function(a){e(a).addClass(this.classes.buttons.disabled)}}),ajax:e.extend({},TableTools.buttonBase,{sAjaxUrl:"/xhr.php",sButtonText:"Ajax button",fnClick:function(a,b){var c=this.fnGetTableData(b);e.ajax({url:b.sAjaxUrl,data:[{name:"tableData",value:c}],success:b.fnAjaxComplete,
64
+ dataType:"json",type:"POST",cache:!1,error:function(){alert("Error detected when sending table data to server")}})},fnAjaxComplete:function(){alert("Ajax complete")}}),div:e.extend({},TableTools.buttonBase,{sAction:"div",sTag:"div",sButtonClass:"DTTT_nonbutton",sButtonText:"Text button"}),collection:e.extend({},TableTools.buttonBase,{sAction:"collection",sButtonClass:"DTTT_button_collection",sButtonText:"Collection",fnClick:function(a,b){this._fnCollectionShow(a,b)}})};TableTools.buttons=TableTools.BUTTONS;
65
+ TableTools.classes={container:"DTTT_container",buttons:{normal:"DTTT_button",disabled:"DTTT_disabled"},collection:{container:"DTTT_collection",background:"DTTT_collection_background",buttons:{normal:"DTTT_button",disabled:"DTTT_disabled"}},select:{table:"DTTT_selectable",row:"DTTT_selected selected"},print:{body:"DTTT_Print",info:"DTTT_print_info",message:"DTTT_PrintMessage"}};TableTools.classes_themeroller={container:"DTTT_container ui-buttonset ui-buttonset-multi",buttons:{normal:"DTTT_button ui-button ui-state-default"},
66
+ collection:{container:"DTTT_collection ui-buttonset ui-buttonset-multi"}};TableTools.DEFAULTS={sSwfPath:"../swf/copy_csv_xls_pdf.swf",sRowSelect:"none",sRowSelector:"tr",sSelectedClass:null,fnPreRowSelect:null,fnRowSelected:null,fnRowDeselected:null,aButtons:["copy","csv","xls","pdf","print"],oTags:{container:"div",button:"a",liner:"span",collection:{container:"div",button:"a",liner:"span"}}};TableTools.defaults=TableTools.DEFAULTS;TableTools.prototype.CLASS="TableTools";TableTools.version="2.2.3";
67
+ e.fn.dataTable.Api&&e.fn.dataTable.Api.register("tabletools()",function(){var a=null;0<this.context.length&&(a=TableTools.fnGetInstance(this.context[0].nTable));return a});"function"==typeof e.fn.dataTable&&"function"==typeof e.fn.dataTableExt.fnVersionCheck&&e.fn.dataTableExt.fnVersionCheck("1.9.0")?e.fn.dataTableExt.aoFeatures.push({fnInit:function(a){var b=a.oInit;return(new TableTools(a.oInstance,b?b.tableTools||b.oTableTools||{}:{})).dom.container},cFeature:"T",sFeature:"TableTools"}):alert("Warning: TableTools requires DataTables 1.9.0 or newer - www.datatables.net/download");
68
+ e.fn.DataTable.TableTools=TableTools;"function"==typeof m.fn.dataTable&&"function"==typeof m.fn.dataTableExt.fnVersionCheck&&m.fn.dataTableExt.fnVersionCheck("1.9.0")?m.fn.dataTableExt.aoFeatures.push({fnInit:function(a){a=new TableTools(a.oInstance,"undefined"!=typeof a.oInit.oTableTools?a.oInit.oTableTools:{});TableTools._aInstances.push(a);return a.dom.container},cFeature:"T",sFeature:"TableTools"}):alert("Warning: TableTools 2 requires DataTables 1.9.0 or newer - www.datatables.net/download");
69
+ m.fn.dataTable.TableTools=TableTools;return m.fn.DataTable.TableTools=TableTools};"function"===typeof define&&define.amd?define(["jquery","datatables"],p):"object"===typeof exports?p(require("jquery"),require("datatables")):jQuery&&!jQuery.fn.dataTable.TableTools&&p(jQuery,jQuery.fn.dataTable)})(window,document);
@@ -0,0 +1,116 @@
1
+ .hide {
2
+ display: none;
3
+ }
4
+
5
+ .inuse, .ui-slider-range .inuse, .yadcf-filter-range-number-slider .inuse {
6
+ background: #8BBEF0;
7
+ }
8
+
9
+ .yadcf-filter-reset-button {
10
+ display: inline-block;
11
+ }
12
+
13
+ .yadcf-filter-reset-button.range-number-slider-reset-button{
14
+ position: relative;
15
+ top: -6px;
16
+ }
17
+
18
+ .yadcf-filter {
19
+ padding-right: 4px;
20
+ padding-left: 4px;
21
+ padding-bottom: 3px;
22
+ padding-top: 3px;
23
+ }
24
+
25
+ .yadcf-filter > option{
26
+ background: white;
27
+ }
28
+
29
+ .ui-autocomplete .ui-menu-item {
30
+ font-size:13px;
31
+ }
32
+
33
+ #ui-datepicker-div {
34
+ font-size:13px;
35
+ }
36
+ .yadcf-filter-wrapper {
37
+ display: inline-block;
38
+ white-space: nowrap;
39
+ margin-left: 2px;
40
+ }
41
+
42
+ .yadcf-filter-range-number {
43
+ width: 40px;
44
+ }
45
+
46
+ .yadcf-filter-range-number-seperator {
47
+ margin-left: 10px;
48
+ margin-right: 10px;
49
+ }
50
+
51
+ .yadcf-filter-range-date {
52
+ width: 80px;
53
+ }
54
+
55
+ .yadcf-filter-range-date-seperator {
56
+ margin-left: 10px;
57
+ margin-right: 10px;
58
+ }
59
+
60
+ .yadcf-filter-wrapper-inner {
61
+ display: inline-block;
62
+ border: 1px solid #ABADB3;
63
+ padding-left: 2px;
64
+ padding-right: 2px;
65
+ }
66
+
67
+ .yadcf-number-slider-filter-wrapper-inner {
68
+ display: inline-block;
69
+ width: 200px;
70
+ margin-bottom: 7px;
71
+ }
72
+
73
+ .yadcf-filter-range-number-slider .ui-slider-handle {
74
+ width: 10px;
75
+ height: 10px;
76
+ margin-top: 1px;
77
+ }
78
+
79
+ .yadcf-filter-range-number-slider .ui-slider-range {
80
+ position: relative;
81
+ height: 5px;
82
+ }
83
+
84
+ .yadcf-filter-range-number-slider {
85
+ height: 5px;
86
+ margin-left: 6px;
87
+ margin-right: 6px;
88
+ }
89
+
90
+ .yadcf-filter-range-number-slider {
91
+ overflow: visible;
92
+ }
93
+
94
+ .yadcf-number-slider-filter-wrapper-inner .yadcf-filter-range-number-slider-min-tip {
95
+ font-size: 13px;
96
+ font-weight: normal;
97
+ position: absolute;
98
+ outline-style: none;
99
+ }
100
+
101
+ .yadcf-number-slider-filter-wrapper-inner .yadcf-filter-range-number-slider-max-tip {
102
+ font-size: 13px;
103
+ font-weight: normal;
104
+ position:absolute;
105
+ outline-style: none;
106
+ }
107
+
108
+ .yadcf-number-slider-filter-wrapper-inner .yadcf-filter-range-number-slider-min-tip-inner {
109
+ position:absolute;
110
+ top: 11px;
111
+ }
112
+
113
+ .yadcf-number-slider-filter-wrapper-inner .yadcf-filter-range-number-slider-max-tip-inner {
114
+ position:absolute;
115
+ top: 11px;
116
+ }
@@ -0,0 +1,2235 @@
1
+ /*global $, jQuery, exFilterColumn*/
2
+ /*jslint plusplus: true, nomen: true */
3
+ /*!
4
+ * Yet Another DataTables Column Filter - (yadcf)
5
+ *
6
+ * File: jquery.dataTables.yadcf.js
7
+ * Version: 0.8.3
8
+ *
9
+ * Author: Daniel Reznick
10
+ * Info: https://github.com/vedmack/yadcf
11
+ * Contact: vedmack@gmail.com
12
+ * Twitter: @danielreznick
13
+ * Q&A https://groups.google.com/forum/#!forum/daniels_code
14
+ *
15
+ * Copyright 2013 Daniel Reznick, all rights reserved.
16
+ * Dual licensed under two licenses: GPL v2 license or a BSD (3-point) license (just like DataTables itself)
17
+ *
18
+ * This source file is distributed in the hope that it will be useful, but
19
+ * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
20
+ * or FITNESS FOR A PARTICULAR PURPOSE. See the license files for details.
21
+ */
22
+ /*
23
+ * Parameters:
24
+ *
25
+ *
26
+ * -------------
27
+
28
+ * column_number
29
+ Required: true
30
+ Type: String
31
+ Description: The number of the column to which the filter will be applied
32
+
33
+ * filter_type
34
+ Required: false
35
+ Type: String
36
+ Default value: select
37
+ Possible values: select / multi_select / auto_complete / text / date / range_number / range_number_slider / range_date / custom_func
38
+ Description: The type of the filter to be used in the column
39
+
40
+ * custom_func
41
+ Required: true (when filter_type is custom_func)
42
+ Type: function
43
+ Default value: undefined
44
+ Description: should be pointing to a function with the following signature myCustomFilterFunction(filterVal, columnVal) , where filterVal is the value from the select box and
45
+ columnVal is the value from the relevant row column, this function should return true if teh row matches your condition and the row should be displayed) and false otherwise
46
+
47
+ * data
48
+ Required: false / true (when filter_type is custom_func)
49
+ Type: Array (of string or objects)
50
+ Description: When the need of predefined data for filter is needed just use an array of strings ["value1","value2"....] (supported in select / multi_select / auto_complete filters) or
51
+ array of objects [{value: 'Some Data 1', label: 'One'}, {value: 'Some Data 3', label: 'Three'}] (supported in select / multi_select filters)
52
+ Note: that when filter_type is custom_func this array will populate the custom filter select element
53
+
54
+ * column_data_type
55
+ Required: false
56
+ Type: String
57
+ Default value: text
58
+ Possible values: text / html
59
+ Description: The type of data in column , use "html" when you have some html code in the column (support parsing of multiple elements per cell)
60
+
61
+ * text_data_delimiter
62
+ Required: false
63
+ Type: String
64
+ Description: Delimiter that seperates text in table column, for example text_data_delimiter: ","
65
+
66
+ * html_data_type
67
+ Required: false
68
+ Type: String
69
+ Default value: text
70
+ Possible values: text / value / id
71
+ Description: When using "html" for column_data_type argument you can choose how exactly to parse your html element/s in column , for example use "text" for the following <span class="someClass">Some text</span>
72
+
73
+ * filter_container_id
74
+ Required: false
75
+ Type: String
76
+ Description: In case that user don't want to place the filter in column header , he can pass an id of the desired container for the column filter
77
+
78
+ * filter_default_label
79
+ Required: false
80
+ Type: String / Array of string in case of range_number filter (first entry is for the first input and the second entry is for the second input
81
+ Default value: Select value
82
+ Description: The label that will appear in the select menu filter when no value is selected from the filter
83
+
84
+ * filter_reset_button_text
85
+ Required: false
86
+ Type: String / boolean
87
+ Default value: x
88
+ Description: The text that will appear inside the reset button next to the select drop down (set this to false (boolean) in order to hide it from that column filter)
89
+
90
+ * enable_auto_complete (this attribute is deprecated , and will become obsolete in the future , so you better start using filter_type: "auto_complete")
91
+ Required: false
92
+ Type: boolean
93
+ Default value: false
94
+ Description: Turns the filter into an autocomplete input - make use of the jQuery UI Autocomplete widget (with some enhancements)
95
+
96
+ * sort_as
97
+ Required: false
98
+ Type: String
99
+ Default value: alpha
100
+ Possible values: alpha / num
101
+ Description: Defines how the values in the filter will be sorted, alphabetically or numerically
102
+
103
+ * sort_order
104
+ Required: false
105
+ Type: String
106
+ Default value: asc
107
+ Possible values: asc / desc
108
+ Description: Defines the order in which the values in the filter will be sorted, ascending or descending
109
+
110
+ * date_format
111
+ Required: false
112
+ Type: String
113
+ Default value: mm/dd/yyyy
114
+ Possible values: mm/dd/yyyy / dd/mm/yyyy (eventually I replace yyyy into yy for jquery datepicker)
115
+ Description: Defines the format in which the date values are being parsed into Date object
116
+
117
+ * ignore_char
118
+ Required: false
119
+ Type: String
120
+ Description: Tells the range_number and range_number_slide to ignore specific char while filtering (that char can used as number separator)
121
+
122
+ * filter_match_mode
123
+ Required: false
124
+ Type: String
125
+ Default value: contains
126
+ Possible values: contains / exact / startsWith
127
+ Description: Allows to control the matching mode of the filter (supported in select / auto_complete / text filters)
128
+
129
+ * select_type
130
+ Required: false
131
+ Type: String
132
+ Default value: undefined
133
+ Possible values: chosen / select2
134
+ Description: Turns the simple select element into "Chosen/Select2 select" (make use of the Chosen/Select2 jQuery plugin)
135
+
136
+
137
+ * select_type_options
138
+ Required: false
139
+ Type: Object
140
+ Default value: {}
141
+ Description: This parameter will be passed "as is" to the Chosen/Select2 plugin constructor
142
+
143
+
144
+ * case_insensitive
145
+ Required: false
146
+ Type: boolean
147
+ Default value: true
148
+ Description: Do case-insensitive filtering (supported in select / auto_complete / text filters)
149
+
150
+
151
+ * filter_delay
152
+ Required: false
153
+ Type: integer
154
+ Default value: undefined
155
+ Description: Delay filter execution for a XXX milliseconds - filter will fire XXX milliseconds after the last keyup.
156
+ Special Notes: Currently supported in text / range_number / range_date filters / range_number_slider
157
+
158
+ *
159
+ *
160
+ *
161
+ * External API functions:
162
+ *
163
+ *
164
+ * -------------
165
+
166
+ * exFilterColumn
167
+ Description: Allows to trigger filter/s externally/programmatically (support ALL filter types!!!) , perfect for showing table with pre filtered columns
168
+ Arguments: table_arg: (variable of the datatable),
169
+ array of pairs: column number String/Object with from and to, filter_value (the actual string value that we want to filter by)
170
+ Usage Example: yadcf.exFilterColumn(oTable, [[0, 'Some Data 2']]); //pre filter one column
171
+ yadcf.exFilterColumn(oTable, [[0, 'Some Data 1'], [1, {from: 111, to: 1110}], [2, {from: "", to: "11/25/2014"}]]); //pre filter several columns
172
+
173
+ * exGetColumnFilterVal
174
+ Description: Allows to retreive column current filtered value (support ALL filter types!!!)
175
+ Arguments: table_arg: (variable of the datatable),
176
+ column number: column number from which we want the value
177
+ Usage Example: yadcf.exGetColumnFilterVal(oTable,1);
178
+ Return value: String (for simple filter) / Object (for range filter) with from and to properties / Array of strings for multi_select filter
179
+
180
+ *
181
+ *
182
+ *
183
+ * Server-side processing API (see more on showcase):
184
+ *
185
+ * From server to client:
186
+ * In order to populate the filters with data from server (select / auto_complete / range_number_slider (min and max values), you should add to your current json respond the following properties:
187
+ * lets say for first column you add yadcf_data_0 filled with array of values, for column second column yadcf_data_1 and so on...
188
+ *
189
+ * From client to server:
190
+ * Read the filtered value like this (for first column) req.getParameter("columns[0][search][value]"); <- java code , php/.Net/etc you just need to get it from the request
191
+ * Range filter value will arrive delimited by -yadcf_delim- , so just split it into an array or something like this: String[] minMax = sSearch_0.split("-yadcf_delim-");
192
+ *
193
+ *
194
+ * -------------
195
+ *
196
+ */
197
+ var yadcf = (function ($) {
198
+
199
+ 'use strict';
200
+
201
+ var oTables = {},
202
+ oTablesIndex = {},
203
+ options = {},
204
+ exFilterColumnQueue = [],
205
+ yadcfDelay;
206
+
207
+ function getOptions(selector) {
208
+ return options[selector];
209
+ }
210
+
211
+ function setOptions(selector_arg, options_arg) {
212
+ var tmpOptions = {},
213
+ i,
214
+ j,
215
+ col_num_as_int,
216
+ default_options = {
217
+ filter_type : "select",
218
+ enable_auto_complete : false,
219
+ sort_as : "alpha",
220
+ sort_order : "asc",
221
+ date_format : "mm/dd/yyyy",
222
+ ignore_char : undefined,
223
+ filter_match_mode : "contains",
224
+ select_type : undefined,
225
+ select_type_options : {},
226
+ case_insensitive : true
227
+ },
228
+ adaptContainerCssClassImpl = function (dummy) { return ''; };
229
+
230
+ for (i = 0; i < options_arg.length; i++) {
231
+ if (options_arg[i].select_type === 'select2') {
232
+ default_options.select_type_options = {adaptContainerCssClass: adaptContainerCssClassImpl};
233
+ }
234
+ //validate custom function required attributes
235
+ if (options_arg[i].filter_type === 'custom_func') {
236
+ if (options_arg[i].custom_func === undefined) {
237
+ alert('You are trying to use filter_type: "custom_func" for column ' + options_arg[i].column_number + ' but there is no such custom_func attribute provided (custom_func: \"function reference goes here...\")');
238
+ return;
239
+ }
240
+ if (options_arg[i].data === undefined) {
241
+ alert('You are trying to use filter_type: "custom_func" for column ' + options_arg[i].column_number + ' but there is no such data attribute provided (data: \"array of options goes here...\")');
242
+ return;
243
+ }
244
+ }
245
+ col_num_as_int = +options_arg[i].column_number;
246
+ tmpOptions[col_num_as_int] = $.extend(true, {}, default_options, options_arg[i]);
247
+ }
248
+ options[selector_arg] = tmpOptions;
249
+ }
250
+
251
+ function resetIApiIndex() {
252
+ $.fn.dataTableExt.iApiIndex = 0;
253
+
254
+ }
255
+
256
+ function generateTableSelectorJQFriendly(tmpStr) {
257
+ return tmpStr.replace(":", "-").replace("(", "").replace(")", "").replace(".", "-").replace("#", "-");
258
+ }
259
+
260
+ yadcfDelay = (function () {
261
+ var timer = 0;
262
+ return function (callback, ms, param) {
263
+ clearTimeout(timer);
264
+ timer = setTimeout(function () {
265
+ callback(param);
266
+ }, ms);
267
+ return timer;
268
+ };
269
+ }());
270
+
271
+ //Used by exFilterColumn for translating readable search value into proper search string for datatables filtering
272
+ function yadcfMatchFilterString(table_arg, column_number, selected_value, filter_match_mode, multiple) {
273
+ var case_insensitive = yadcf.getOptions(table_arg.selector)[column_number].case_insensitive,
274
+ ret_val;
275
+
276
+ table_arg.fnSettings().aoPreSearchCols[column_number].bSmart = false;
277
+ table_arg.fnSettings().aoPreSearchCols[column_number].bCaseInsensitive = case_insensitive;
278
+
279
+ if (multiple === undefined || multiple === false) {
280
+ if (filter_match_mode === "contains") {
281
+ table_arg.fnSettings().aoPreSearchCols[column_number].bRegex = false;
282
+ ret_val = selected_value;
283
+ } else if (filter_match_mode === "exact") {
284
+ table_arg.fnSettings().aoPreSearchCols[column_number].bRegex = true;
285
+ ret_val = "^" + selected_value + "$";
286
+ } else if (filter_match_mode === "startsWith") {
287
+ table_arg.fnSettings().aoPreSearchCols[column_number].bRegex = true;
288
+ ret_val = "^" + selected_value;
289
+ }
290
+ } else {
291
+ if (filter_match_mode === "contains") {
292
+ table_arg.fnSettings().aoPreSearchCols[column_number].bRegex = true;
293
+ ret_val = selected_value.join("|");
294
+ } else if (filter_match_mode === "exact") {
295
+ table_arg.fnSettings().aoPreSearchCols[column_number].bRegex = true;
296
+ ret_val = "^(" + selected_value.join("|") + ")$";
297
+ } else if (filter_match_mode === "startsWith") {
298
+ table_arg.fnSettings().aoPreSearchCols[column_number].bRegex = true;
299
+ ret_val = "^(" + selected_value.join("|") + ")";
300
+ }
301
+ }
302
+ return ret_val;
303
+ }
304
+
305
+ function yadcfMatchFilter(oTable, selected_value, filter_match_mode, column_number) {
306
+ var case_insensitive = yadcf.getOptions(oTable.selector)[column_number].case_insensitive;
307
+ if (filter_match_mode === "contains") {
308
+ oTable.fnFilter(selected_value, column_number, false, false, true, case_insensitive);
309
+ } else if (filter_match_mode === "exact") {
310
+ oTable.fnFilter("^" + selected_value + "$", column_number, true, false, true, case_insensitive);
311
+ } else if (filter_match_mode === "startsWith") {
312
+ oTable.fnFilter("^" + selected_value, column_number, true, false, true, case_insensitive);
313
+ }
314
+ }
315
+
316
+ function yadcfParseMatchFilter(tmpStr, filter_match_mode) {
317
+ var retVal;
318
+ if (filter_match_mode === "contains") {
319
+ retVal = tmpStr;
320
+ } else if (filter_match_mode === "exact") {
321
+ retVal = tmpStr.substring(1, tmpStr.length - 1);
322
+ } else if (filter_match_mode === "startsWith") {
323
+ retVal = tmpStr.substring(1, tmpStr.length);
324
+ }
325
+ return retVal;
326
+ }
327
+
328
+ function doFilterCustomDateFunc(arg, table_selector_jq_friendly, column_number) {
329
+ var oTable = oTables[table_selector_jq_friendly];
330
+ if (arg === "clear" || arg.value === "-1") {
331
+ if (arg === "clear") {
332
+ $("#yadcf-filter-" + table_selector_jq_friendly + "-" + column_number).val("-1").focus();
333
+ }
334
+ $("#yadcf-filter-" + table_selector_jq_friendly + "-" + column_number).removeClass("inuse");
335
+ } else {
336
+ $("#yadcf-filter-" + table_selector_jq_friendly + "-" + column_number).addClass("inuse");
337
+ }
338
+
339
+ oTable.fnDraw();
340
+ }
341
+
342
+ function doFilter(arg, table_selector_jq_friendly, column_number, filter_match_mode) {
343
+ $.fn.dataTableExt.iApiIndex = oTablesIndex[table_selector_jq_friendly];
344
+ var oTable = oTables[table_selector_jq_friendly],
345
+ selected_value;
346
+
347
+ if (arg === "clear") {
348
+ $("#yadcf-filter-" + table_selector_jq_friendly + "-" + column_number).val("-1").focus();
349
+ $("#yadcf-filter-" + table_selector_jq_friendly + "-" + column_number).removeClass("inuse");
350
+ $(document).data("#yadcf-filter-" + table_selector_jq_friendly + "-" + column_number + "_val", "-1");
351
+ oTable.fnFilter("", column_number);
352
+ resetIApiIndex();
353
+ if (yadcf.getOptions(oTable.selector)[column_number].select_type === 'chosen') {
354
+ $("#yadcf-filter-" + table_selector_jq_friendly + "-" + column_number).trigger("chosen:updated");
355
+ }
356
+ return;
357
+ }
358
+
359
+ $("#yadcf-filter-" + table_selector_jq_friendly + "-" + column_number).addClass("inuse");
360
+
361
+ $(document).data("#yadcf-filter-" + table_selector_jq_friendly + "-" + column_number + "_val", arg.value);
362
+
363
+ selected_value = $.trim($(arg).find('option:selected').val());
364
+
365
+ if (arg.value !== "-1") {
366
+ yadcfMatchFilter(oTable, selected_value, filter_match_mode, column_number);
367
+ } else {
368
+ oTable.fnFilter("", column_number);
369
+ $("#yadcf-filter-" + table_selector_jq_friendly + "-" + column_number).removeClass("inuse");
370
+ }
371
+ resetIApiIndex();
372
+ }
373
+
374
+ function doFilterMultiSelect(arg, table_selector_jq_friendly, column_number, filter_match_mode) {
375
+ $.fn.dataTableExt.iApiIndex = oTablesIndex[table_selector_jq_friendly];
376
+ var oTable = oTables[table_selector_jq_friendly],
377
+ aEscapedTerms = [],
378
+ selected_values = $(arg).val(),
379
+ i,
380
+ stringForSearch;
381
+
382
+ $(document).data("#yadcf-filter-" + table_selector_jq_friendly + "-" + column_number + "_val", selected_values);
383
+
384
+ if (selected_values !== null) {
385
+ for (i = selected_values.length - 1; i >= 0; i--) {
386
+ if (selected_values[i] === "-1") {
387
+ selected_values.splice(i, 1);
388
+ break;
389
+ }
390
+ }
391
+ if (selected_values.length !== 0) {
392
+ stringForSearch = selected_values.join("|");
393
+ stringForSearch = stringForSearch.replace(/([.*+?^=!:${}()\[\]\/\\])/g, "\\$1");
394
+ if (filter_match_mode === "contains") {
395
+ oTable.fnFilter(stringForSearch, column_number, true, false, true);
396
+ } else if (filter_match_mode === "exact") {
397
+ oTable.fnFilter("^(" + stringForSearch + ")$", column_number, true, false, true);
398
+ } else if (filter_match_mode === "startsWith") {
399
+ oTable.fnFilter("^(" + stringForSearch + ")", column_number, true, false, true);
400
+ }
401
+ } else {
402
+ oTable.fnFilter("", column_number);
403
+ }
404
+ } else {
405
+ oTable.fnFilter("", column_number);
406
+ }
407
+ resetIApiIndex();
408
+ }
409
+
410
+ function yadcfParseMatchFilterMultiSelect(tmpStr, filter_match_mode) {
411
+ var retVal;
412
+ if (filter_match_mode === "contains") {
413
+ retVal = tmpStr;
414
+ } else if (filter_match_mode === "exact") {
415
+ retVal = tmpStr.substring(1, tmpStr.length - 1);
416
+ retVal = retVal.substring(1, retVal.length - 1);
417
+ } else if (filter_match_mode === "startsWith") {
418
+ retVal = tmpStr.substring(1, tmpStr.length);
419
+ retVal = retVal.substring(1, retVal.length - 1);
420
+ }
421
+ return retVal;
422
+ }
423
+
424
+ function doFilterAutocomplete(arg, table_selector_jq_friendly, column_number, filter_match_mode) {
425
+ $.fn.dataTableExt.iApiIndex = oTablesIndex[table_selector_jq_friendly];
426
+ var oTable = oTables[table_selector_jq_friendly];
427
+
428
+ if (arg === "clear") {
429
+ $("#yadcf-filter-" + table_selector_jq_friendly + "-" + column_number).val("").focus();
430
+ $("#yadcf-filter-" + table_selector_jq_friendly + "-" + column_number).removeClass("inuse");
431
+ $(document).removeData("#yadcf-filter-" + table_selector_jq_friendly + "-" + column_number + "_val");
432
+ oTable.fnFilter("", column_number);
433
+ resetIApiIndex();
434
+ return;
435
+ }
436
+
437
+ $("#yadcf-filter-" + table_selector_jq_friendly + "-" + column_number).addClass("inuse");
438
+
439
+ $(document).data("#yadcf-filter-" + table_selector_jq_friendly + "-" + column_number + "_val", arg.value);
440
+
441
+ yadcfMatchFilter(oTable, arg.value, filter_match_mode, column_number);
442
+
443
+ resetIApiIndex();
444
+ }
445
+
446
+ function autocompleteSelect(event, ui) {
447
+
448
+ var table_column = event.target.id.replace("yadcf-filter-", ""),
449
+ dashIndex = table_column.lastIndexOf("-"),
450
+ table_selector_jq_friendly = table_column.substring(0, dashIndex),
451
+ col_num = parseInt(table_column.substring(dashIndex + 1), 10),
452
+ filter_match_mode = $(event.target).attr("filter_match_mode");
453
+ doFilterAutocomplete(ui.item, table_selector_jq_friendly, col_num, filter_match_mode);
454
+ }
455
+
456
+ function sortNumAsc(a, b) {
457
+ return a - b;
458
+ }
459
+
460
+ function sortNumDesc(a, b) {
461
+ return b - a;
462
+ }
463
+
464
+ function findMinInArray(array, ignore_char) {
465
+ var narray = [], i;
466
+ for (i = 0; i < array.length; i++) {
467
+ if (array[i] !== null) {
468
+ if (ignore_char !== undefined) {
469
+ array[i] = array[i].toString().replace(ignore_char, "");
470
+ }
471
+ narray.push(array[i]);
472
+ }
473
+ }
474
+ return Math.min.apply(Math, narray);
475
+ }
476
+
477
+ function findMaxInArray(array, ignore_char) {
478
+ var narray = [], i;
479
+ for (i = 0; i < array.length; i++) {
480
+ if (array[i] !== null) {
481
+ if (ignore_char !== undefined) {
482
+ array[i] = array[i].toString().replace(ignore_char, "");
483
+ }
484
+ narray.push(array[i]);
485
+ }
486
+ }
487
+ return Math.max.apply(Math, narray);
488
+ }
489
+
490
+ function addRangeNumberFilterCapability(table_selector_jq_friendly, fromId, toId, col_num, ignore_char) {
491
+
492
+ $.fn.dataTableExt.afnFiltering.push(
493
+ function (oSettings, aData, iDataIndex) {
494
+ var min = document.getElementById(fromId).value,
495
+ max = document.getElementById(toId).value,
496
+ val = aData[col_num] === "-" ? 0 : aData[col_num],
497
+ retVal = false,
498
+ table_selector_jq_friendly_local = table_selector_jq_friendly,
499
+ current_table_selector_jq_friendly = yadcf.generateTableSelectorJQFriendly(oSettings.oInstance.selector),
500
+ ignore_char_local = ignore_char;
501
+
502
+ if (table_selector_jq_friendly_local !== current_table_selector_jq_friendly) {
503
+ return true;
504
+ }
505
+
506
+ if (ignore_char_local !== undefined) {
507
+ min = min.replace(ignore_char_local, "");
508
+ max = max.replace(ignore_char_local, "");
509
+ val = val.toString().replace(ignore_char_local, "");
510
+ }
511
+
512
+ min = (min !== "") ? (+min) : min;
513
+ max = (max !== "") ? (+max) : max;
514
+ val = (val !== "") ? (+val) : val;
515
+ if (min === "" && max === "") {
516
+ retVal = true;
517
+ } else if (min === "" && val <= max) {
518
+ retVal = true;
519
+ } else if (min <= val && "" === max) {
520
+ retVal = true;
521
+ } else if (min <= val && val <= max) {
522
+ retVal = true;
523
+ }
524
+ return retVal;
525
+ }
526
+ );
527
+ }
528
+
529
+ function addCustomFunctionFilterCapability(table_selector_jq_friendly, filterId, col_num) {
530
+
531
+ $.fn.dataTableExt.afnFiltering.push(
532
+ function (oSettings, aData, iDataIndex) {
533
+ var filterVal = document.getElementById(filterId) !== null ? document.getElementById(filterId).value : "",
534
+ columnVal = aData[col_num] === "-" ? 0 : aData[col_num],
535
+ retVal = false,
536
+ table_selector_jq_friendly_local = table_selector_jq_friendly,
537
+ current_table_selector_jq_friendly = yadcf.generateTableSelectorJQFriendly(oSettings.oInstance.selector),
538
+ custom_func;
539
+
540
+ if (table_selector_jq_friendly_local !== current_table_selector_jq_friendly) {
541
+ return true;
542
+ }
543
+
544
+ custom_func = yadcf.getOptions(oSettings.oInstance.selector)[col_num].custom_func;
545
+
546
+ retVal = custom_func(filterVal, columnVal);
547
+
548
+ return retVal;
549
+ }
550
+ );
551
+ }
552
+ function addRangeDateFilterCapability(table_selector_jq_friendly, fromId, toId, col_num, date_format) {
553
+
554
+ $.fn.dataTableExt.afnFiltering.push(
555
+ function (oSettings, aData, iDataIndex) {
556
+ var min = document.getElementById(fromId) !== null ? document.getElementById(fromId).value : "",
557
+ max = document.getElementById(toId) !== null ? document.getElementById(toId).value : "",
558
+ val = aData[col_num] === "-" ? 0 : aData[col_num],
559
+ retVal = false,
560
+ table_selector_jq_friendly_local = table_selector_jq_friendly,
561
+ current_table_selector_jq_friendly = yadcf.generateTableSelectorJQFriendly(oSettings.oInstance.selector);
562
+
563
+ if (table_selector_jq_friendly_local !== current_table_selector_jq_friendly) {
564
+ return true;
565
+ }
566
+ try {
567
+ if (min.length === (date_format.length + 2)) {
568
+ min = (min !== "") ? $.datepicker.parseDate(date_format, min) : min;
569
+ }
570
+ } catch (err1) {}
571
+ try {
572
+ if (max.length === (date_format.length + 2)) {
573
+ max = (max !== "") ? $.datepicker.parseDate(date_format, max) : max;
574
+ }
575
+ } catch (err2) {}
576
+ try {
577
+ val = (val !== "") ? $.datepicker.parseDate(date_format, val) : val;
578
+ } catch (err3) {}
579
+
580
+ if ((min === "" || !(min instanceof Date)) && (max === "" || !(max instanceof Date))) {
581
+ retVal = true;
582
+ } else if (min === "" && val <= max) {
583
+ retVal = true;
584
+ } else if (min <= val && "" === max) {
585
+ retVal = true;
586
+ } else if (min <= val && val <= max) {
587
+ retVal = true;
588
+ }
589
+
590
+ return retVal;
591
+ }
592
+ );
593
+ }
594
+
595
+ function addRangeNumberSliderFilterCapability(table_selector_jq_friendly, fromId, toId, col_num, ignore_char) {
596
+
597
+ $.fn.dataTableExt.afnFiltering.push(
598
+ function (oSettings, aData, iDataIndex) {
599
+ var min = $('#' + fromId).text(),
600
+ max = $('#' + toId).text(),
601
+ val = aData[col_num] === "-" ? 0 : aData[col_num],
602
+ retVal = false,
603
+ table_selector_jq_friendly_local = table_selector_jq_friendly,
604
+ current_table_selector_jq_friendly = yadcf.generateTableSelectorJQFriendly(oSettings.oInstance.selector),
605
+ ignore_char_local = ignore_char,
606
+ column_data_type,
607
+ html_data_type,
608
+ i,
609
+ columnObjKey;
610
+
611
+ if (table_selector_jq_friendly_local !== current_table_selector_jq_friendly) {
612
+ return true;
613
+ }
614
+
615
+ if (!isFinite(min) || !isFinite(max)) {
616
+ return true;
617
+ }
618
+
619
+ column_data_type = yadcf.getOptions(oSettings.oInstance.selector)[col_num].column_data_type;
620
+ html_data_type = yadcf.getOptions(oSettings.oInstance.selector)[col_num].html_data_type;
621
+
622
+ if (column_data_type === "html") {
623
+ if (html_data_type === undefined) {
624
+ html_data_type = "text";
625
+ }
626
+ switch (html_data_type) {
627
+ case "text":
628
+ val = $(val).text();
629
+ break;
630
+ case "value":
631
+ val = $(val).val();
632
+ break;
633
+ case "id":
634
+ val = val.id;
635
+ break;
636
+ }
637
+ }
638
+
639
+ if (ignore_char_local !== undefined) {
640
+ min = min.replace(ignore_char_local, "");
641
+ max = max.replace(ignore_char_local, "");
642
+ val = val.toString().replace(ignore_char_local, "");
643
+ }
644
+
645
+ min = (min !== "") ? (+min) : min;
646
+ max = (max !== "") ? (+max) : max;
647
+ val = (val !== "") ? (+val) : val;
648
+ if (min === "" && max === "") {
649
+ retVal = true;
650
+ } else if (min === "" && val <= max) {
651
+ retVal = true;
652
+ } else if (min <= val && "" === max) {
653
+ retVal = true;
654
+ } else if (min <= val && val <= max) {
655
+ retVal = true;
656
+ }
657
+ return retVal;
658
+ }
659
+ );
660
+ }
661
+
662
+ function addRangeNumberFilter(filter_selector_string, table_selector_jq_friendly, column_number, filter_reset_button_text, filter_default_label, ignore_char) {
663
+ var fromId = "yadcf-filter-" + table_selector_jq_friendly + "-from-" + column_number,
664
+ toId = "yadcf-filter-" + table_selector_jq_friendly + "-to-" + column_number,
665
+ filter_selector_string_tmp,
666
+ filter_wrapper_id,
667
+ oTable;
668
+
669
+ filter_wrapper_id = "yadcf-filter-wrapper-" + table_selector_jq_friendly + "-" + column_number;
670
+
671
+ if ($("#" + filter_wrapper_id).length > 0) {
672
+ return;
673
+ }
674
+
675
+ //add a wrapper to hold both filter and reset button
676
+ $(filter_selector_string).append("<div onclick=\"yadcf.stopPropagation(event);\" id=\"" + filter_wrapper_id + "\" class=\"yadcf-filter-wrapper\"></div>");
677
+ filter_selector_string = filter_selector_string + " div.yadcf-filter-wrapper";
678
+ filter_selector_string_tmp = filter_selector_string;
679
+
680
+ $(filter_selector_string).append("<div id=\"yadcf-filter-wrapper-inner-" + table_selector_jq_friendly + "-" + column_number + "\" class=\"yadcf-filter-wrapper-inner\"></div>");
681
+ filter_selector_string = filter_selector_string + " div.yadcf-filter-wrapper-inner";
682
+
683
+ $(filter_selector_string).append("<input placeholder=\"" + filter_default_label[0] + "\" id=\"" + fromId + "\" class=\"yadcf-filter-range-number yadcf-filter-range\" onkeyup=\"yadcf.rangeNumberKeyUP('" + table_selector_jq_friendly + "',event);\">" +
684
+ "</input>");
685
+ $(filter_selector_string).append("<span class=\"yadcf-filter-range-number-seperator\" >" +
686
+ "</span>");
687
+ $(filter_selector_string).append("<input placeholder=\"" + filter_default_label[1] + "\" id=\"" + toId + "\" class=\"yadcf-filter-range-number yadcf-filter-range\" onkeyup=\"yadcf.rangeNumberKeyUP('" + table_selector_jq_friendly + "',event);\">" +
688
+ "</input>");
689
+
690
+ if (filter_reset_button_text !== false) {
691
+ $(filter_selector_string_tmp).append("<input value=\"" + filter_reset_button_text + "\" type=\"button\" " +
692
+ "onclick=\"yadcf.stopPropagation(event);yadcf.rangeClear('" + table_selector_jq_friendly + "',event); return false;\" class=\"yadcf-filter-reset-button\">");
693
+ }
694
+
695
+ $.fn.dataTableExt.iApiIndex = oTablesIndex[table_selector_jq_friendly];
696
+ oTable = oTables[table_selector_jq_friendly];
697
+ if (oTable.fnSettings().oFeatures.bStateSave === true && oTable.fnSettings().oLoadedState) {
698
+ if (oTable.fnSettings().oLoadedState.yadcfState && oTable.fnSettings().oLoadedState.yadcfState[table_selector_jq_friendly] && oTable.fnSettings().oLoadedState.yadcfState[table_selector_jq_friendly][column_number]) {
699
+ $('#' + fromId).val(oTable.fnSettings().oLoadedState.yadcfState[table_selector_jq_friendly][column_number].from);
700
+ if (oTable.fnSettings().oLoadedState.yadcfState[table_selector_jq_friendly][column_number].from !== "") {
701
+ $('#' + fromId).addClass("inuse");
702
+ }
703
+ $('#' + toId).val(oTable.fnSettings().oLoadedState.yadcfState[table_selector_jq_friendly][column_number].to);
704
+ if (oTable.fnSettings().oLoadedState.yadcfState[table_selector_jq_friendly][column_number].to !== "") {
705
+ $('#' + toId).addClass("inuse");
706
+ }
707
+ }
708
+ }
709
+ resetIApiIndex();
710
+
711
+ if (oTable.fnSettings().oFeatures.bServerSide !== true) {
712
+ addRangeNumberFilterCapability(table_selector_jq_friendly, fromId, toId, column_number, ignore_char);
713
+ }
714
+
715
+ }
716
+
717
+ function dateSelectSingle(date, event, clear) {
718
+ var oTable,
719
+ column_number = $(event).attr('id').replace('yadcf-filter-', '').replace('-date', '').replace('-reset', ''),
720
+ dashIndex = column_number.lastIndexOf("-"),
721
+ table_selector_jq_friendly = column_number.substring(0, dashIndex),
722
+ date_str;
723
+
724
+ column_number = column_number.substring(dashIndex + 1);
725
+ $.fn.dataTableExt.iApiIndex = oTablesIndex[table_selector_jq_friendly];
726
+ oTable = oTables[table_selector_jq_friendly];
727
+
728
+ if (clear === undefined) {
729
+ date_str = document.getElementById($(event).attr('id')).value;
730
+ oTable.fnFilter(date, column_number);
731
+ $('#yadcf-filter-' + table_selector_jq_friendly + '-' + column_number).addClass("inuse");
732
+ } else if (clear === 'clear') {
733
+ oTable.fnFilter('', column_number);
734
+ $('#yadcf-filter-' + table_selector_jq_friendly + '-' + column_number).val('').removeClass("inuse");
735
+ }
736
+
737
+ resetIApiIndex();
738
+ }
739
+
740
+ function dateSelect(date, event) {
741
+
742
+ var oTable,
743
+ column_number = $(event).attr("id").replace("yadcf-filter-", "").replace("-from-date", "").replace("-to-date", ""),
744
+ dashIndex = column_number.lastIndexOf("-"),
745
+ table_selector_jq_friendly = column_number.substring(0, dashIndex),
746
+ yadcfState,
747
+ from,
748
+ to,
749
+ min,
750
+ max,
751
+ min_server,
752
+ max_server,
753
+ date_format;
754
+
755
+ column_number = column_number.substring(dashIndex + 1);
756
+ $.fn.dataTableExt.iApiIndex = oTablesIndex[table_selector_jq_friendly];
757
+
758
+ oTable = oTables[table_selector_jq_friendly];
759
+ date_format = yadcf.getOptions(oTable.selector)[column_number].date_format;
760
+ date_format = date_format.replace("yyyy", "yy");
761
+
762
+ $("#" + $(event).attr("id")).addClass("inuse");
763
+
764
+ if ($(event).attr("id").indexOf("-from-") !== -1) {
765
+ from = document.getElementById($(event).attr("id")).value;
766
+ to = document.getElementById($(event).attr("id").replace("-from-", "-to-")).value;
767
+ } else {
768
+ to = document.getElementById($(event).attr("id")).value;
769
+ from = document.getElementById($(event).attr("id").replace("-to-", "-from-")).value;
770
+ }
771
+
772
+ if (oTable.fnSettings().oFeatures.bServerSide !== true) {
773
+ oTable.fnDraw();
774
+ } else {
775
+ min = from;
776
+ max = to;
777
+
778
+ try {
779
+ if (min.length === (date_format.length + 2)) {
780
+ min = (min !== "") ? $.datepicker.parseDate(date_format, min) : min;
781
+ }
782
+ } catch (err1) {}
783
+ try {
784
+ if (max.length === (date_format.length + 2)) {
785
+ max = (max !== "") ? $.datepicker.parseDate(date_format, max) : max;
786
+ }
787
+ } catch (err2) {}
788
+ if (min instanceof Date) {
789
+ min_server = min.getTime();
790
+ } else {
791
+ min_server = min;
792
+ }
793
+ if (max instanceof Date) {
794
+ max_server = max.getTime();
795
+ } else {
796
+ max_server = max;
797
+ }
798
+ oTable.fnFilter(min_server + '-yadcf_delim-' + max_server, column_number);
799
+ }
800
+
801
+ if (!oTable.fnSettings().oLoadedState) {
802
+ oTable.fnSettings().oLoadedState = {};
803
+ oTable.fnSettings().oApi._fnSaveState(oTable.fnSettings());
804
+ }
805
+ if (oTable.fnSettings().oFeatures.bStateSave === true) {
806
+ if (oTable.fnSettings().oLoadedState.yadcfState !== undefined && oTable.fnSettings().oLoadedState.yadcfState[table_selector_jq_friendly] !== undefined) {
807
+ oTable.fnSettings().oLoadedState.yadcfState[table_selector_jq_friendly][column_number] =
808
+ {
809
+ 'from' : from,
810
+ 'to' : to
811
+ };
812
+ } else {
813
+ yadcfState = {};
814
+ yadcfState[table_selector_jq_friendly] = [];
815
+ yadcfState[table_selector_jq_friendly][column_number] = {
816
+ 'from' : from,
817
+ 'to' : to
818
+ };
819
+ oTable.fnSettings().oLoadedState.yadcfState = yadcfState;
820
+ }
821
+ oTable.fnSettings().oApi._fnSaveState(oTable.fnSettings());
822
+ }
823
+
824
+ resetIApiIndex();
825
+ }
826
+
827
+ function addRangeDateFilter(filter_selector_string, table_selector_jq_friendly, column_number, filter_reset_button_text, filter_default_label, date_format) {
828
+ var fromId = "yadcf-filter-" + table_selector_jq_friendly + "-from-date-" + column_number,
829
+ toId = "yadcf-filter-" + table_selector_jq_friendly + "-to-date-" + column_number,
830
+ filter_selector_string_tmp,
831
+ filter_wrapper_id,
832
+ oTable;
833
+
834
+ filter_wrapper_id = "yadcf-filter-wrapper-" + table_selector_jq_friendly + "-" + column_number;
835
+
836
+ if ($("#" + filter_wrapper_id).length > 0) {
837
+ return;
838
+ }
839
+
840
+ //add a wrapper to hold both filter and reset button
841
+ $(filter_selector_string).append("<div onclick=\"yadcf.stopPropagation(event);\" id=\"" + filter_wrapper_id + "\" class=\"yadcf-filter-wrapper\"></div>");
842
+ filter_selector_string = filter_selector_string + " div.yadcf-filter-wrapper";
843
+ filter_selector_string_tmp = filter_selector_string;
844
+
845
+ $(filter_selector_string).append("<div id=\"yadcf-filter-wrapper-inner-" + table_selector_jq_friendly + "-" + column_number + "\" class=\"yadcf-filter-wrapper-inner\"></div>");
846
+ filter_selector_string = filter_selector_string + " div.yadcf-filter-wrapper-inner";
847
+
848
+ $.fn.dataTableExt.iApiIndex = oTablesIndex[table_selector_jq_friendly];
849
+ oTable = oTables[table_selector_jq_friendly];
850
+ $(filter_selector_string).append("<input placeholder=\"" + filter_default_label[0] + "\" id=\"" + fromId + "\" class=\"yadcf-filter-range-date yadcf-filter-range\" onkeyup=\"yadcf.rangeDateKeyUP('" + table_selector_jq_friendly + "','" + date_format + "',event);\">" +
851
+ "</input>");
852
+ $(filter_selector_string).append("<span class=\"yadcf-filter-range-date-seperator\" >" +
853
+ "</span>");
854
+ $(filter_selector_string).append("<input placeholder=\"" + filter_default_label[1] + "\" id=\"" + toId + "\" class=\"yadcf-filter-range-date yadcf-filter-range\" onkeyup=\"yadcf.rangeDateKeyUP('" + table_selector_jq_friendly + "','" + date_format + "',event);\">" +
855
+ "</input>");
856
+
857
+ if (filter_reset_button_text !== false) {
858
+ $(filter_selector_string_tmp).append("<input value=\"" + filter_reset_button_text + "\" type=\"button\" " +
859
+ "onclick=\"yadcf.stopPropagation(event);yadcf.rangeClear('" + table_selector_jq_friendly + "',event); return false;\" class=\"yadcf-filter-reset-button\">");
860
+ }
861
+
862
+ $("#" + fromId).datepicker({
863
+ dateFormat: date_format,
864
+ onSelect: dateSelect
865
+ });
866
+ $("#" + toId).datepicker({
867
+ dateFormat: date_format,
868
+ onSelect: dateSelect
869
+ });
870
+
871
+ if (oTable.fnSettings().oFeatures.bStateSave === true && oTable.fnSettings().oLoadedState) {
872
+ if (oTable.fnSettings().oLoadedState.yadcfState && oTable.fnSettings().oLoadedState.yadcfState[table_selector_jq_friendly] && oTable.fnSettings().oLoadedState.yadcfState[table_selector_jq_friendly][column_number]) {
873
+ $('#' + fromId).val(oTable.fnSettings().oLoadedState.yadcfState[table_selector_jq_friendly][column_number].from);
874
+ if (oTable.fnSettings().oLoadedState.yadcfState[table_selector_jq_friendly][column_number].from !== "") {
875
+ $('#' + fromId).addClass("inuse");
876
+ }
877
+ $('#' + toId).val(oTable.fnSettings().oLoadedState.yadcfState[table_selector_jq_friendly][column_number].to);
878
+ if (oTable.fnSettings().oLoadedState.yadcfState[table_selector_jq_friendly][column_number].to !== "") {
879
+ $('#' + toId).addClass("inuse");
880
+ }
881
+ }
882
+ }
883
+
884
+ if (oTable.fnSettings().oFeatures.bServerSide !== true) {
885
+ addRangeDateFilterCapability(table_selector_jq_friendly, fromId, toId, column_number, date_format);
886
+ }
887
+
888
+ resetIApiIndex();
889
+ }
890
+
891
+ function addDateFilter(filter_selector_string, table_selector_jq_friendly, column_number, filter_reset_button_text, filter_default_label, date_format) {
892
+ var dateId = "yadcf-filter-" + table_selector_jq_friendly + "-" + column_number,
893
+ filter_selector_string_tmp,
894
+ filter_wrapper_id,
895
+ oTable;
896
+
897
+ filter_wrapper_id = "yadcf-filter-wrapper-" + table_selector_jq_friendly + "-" + column_number;
898
+
899
+ if ($("#" + filter_wrapper_id).length > 0) {
900
+ return;
901
+ }
902
+
903
+ //add a wrapper to hold both filter and reset button
904
+ $(filter_selector_string).append("<div onclick=\"yadcf.stopPropagation(event);\" id=\"" + filter_wrapper_id + "\" class=\"yadcf-filter-wrapper\"></div>");
905
+ filter_selector_string = filter_selector_string + " div.yadcf-filter-wrapper";
906
+ filter_selector_string_tmp = filter_selector_string;
907
+
908
+ $(filter_selector_string).append("<input placeholder=\"" + filter_default_label + "\" id=\"" + dateId + "\" class=\"yadcf-filter-date\" onkeyup=\"yadcf.dateKeyUP('" +
909
+ table_selector_jq_friendly + "','" + date_format + "',event);\"></input>");
910
+
911
+ if (filter_reset_button_text !== false) {
912
+ $(filter_selector_string_tmp).append('<input value="' + filter_reset_button_text + '" type="button" id="' + dateId + '-reset"' +
913
+ 'onclick="yadcf.stopPropagation(event);yadcf.dateSelectSingle(\'' + table_selector_jq_friendly + '\',event.target, \'clear\'); return false;" class="yadcf-filter-reset-button">');
914
+ }
915
+
916
+ $("#" + dateId).datepicker({
917
+ dateFormat: date_format,
918
+ onSelect: dateSelectSingle
919
+ });
920
+
921
+ $.fn.dataTableExt.iApiIndex = oTablesIndex[table_selector_jq_friendly];
922
+ oTable = oTables[table_selector_jq_friendly];
923
+
924
+ if (oTable.fnSettings().aoPreSearchCols[column_number].sSearch !== '') {
925
+ $('#yadcf-filter-' + table_selector_jq_friendly + '-' + column_number).val(oTable.fnSettings().aoPreSearchCols[column_number].sSearch).addClass("inuse");
926
+ }
927
+
928
+ resetIApiIndex();
929
+
930
+ }
931
+
932
+ function rangeNumberSldierDrawTips(min_tip_val, max_tip_val, min_tip_id, max_tip_id, table_selector_jq_friendly, column_number) {
933
+ var first_handle = $("#yadcf-filter-wrapper-inner-" + table_selector_jq_friendly + "-" + column_number + " .ui-slider-handle:first"),
934
+ last_handle = $("#yadcf-filter-wrapper-inner-" + table_selector_jq_friendly + "-" + column_number + " .ui-slider-handle:last"),
935
+ min_tip_inner,
936
+ max_tip_inner;
937
+
938
+ min_tip_inner = "<div id=\"" + min_tip_id + "\" class=\"yadcf-filter-range-number-slider-min-tip-inner\">" + min_tip_val + "</div>";
939
+ max_tip_inner = "<div id=\"" + max_tip_id + "\" class=\"yadcf-filter-range-number-slider-max-tip-inner\">" + max_tip_val + "</div>";
940
+
941
+ $(first_handle).addClass("yadcf-filter-range-number-slider-min-tip").html(min_tip_inner);
942
+ $(last_handle).addClass("yadcf-filter-range-number-slider-max-tip").html(max_tip_inner);
943
+ }
944
+
945
+ function rangeNumberSliderChange(table_selector_jq_friendly, event, ui) {
946
+ var oTable,
947
+ min_val,
948
+ max_val,
949
+ slider_inuse,
950
+ yadcfState,
951
+ column_number = $(event.target).attr('id').replace("yadcf-filter-", "").replace(table_selector_jq_friendly, "").replace("-slider-", ""),
952
+ options,
953
+ keyUp;
954
+
955
+ oTable = oTables[table_selector_jq_friendly];
956
+ options = getOptions(oTable.selector)[column_number];
957
+
958
+ keyUp = function () {
959
+
960
+ $.fn.dataTableExt.iApiIndex = oTablesIndex[table_selector_jq_friendly];
961
+
962
+ if (oTable.fnSettings().oFeatures.bServerSide !== true) {
963
+ oTable.fnDraw();
964
+ } else {
965
+ oTable.fnFilter(ui.values[0] + '-yadcf_delim-' + ui.values[1], column_number);
966
+ }
967
+
968
+ min_val = +$($(event.target).parent().find(".yadcf-filter-range-number-slider-min-tip-hidden")).text();
969
+ max_val = +$($(event.target).parent().find(".yadcf-filter-range-number-slider-max-tip-hidden")).text();
970
+
971
+
972
+ if (min_val !== ui.values[0]) {
973
+ $($(event.target).find(".ui-slider-handle")[0]).addClass("inuse");
974
+ slider_inuse = true;
975
+ } else {
976
+ $($(event.target).find(".ui-slider-handle")[0]).removeClass("inuse");
977
+ }
978
+ if (max_val !== ui.values[1]) {
979
+ $($(event.target).find(".ui-slider-handle")[1]).addClass("inuse");
980
+ slider_inuse = true;
981
+ } else {
982
+ $($(event.target).find(".ui-slider-handle")[1]).removeClass("inuse");
983
+ }
984
+
985
+ if (slider_inuse === true) {
986
+ $(event.target).find(".ui-slider-range").addClass("inuse");
987
+ } else {
988
+ $(event.target).find(".ui-slider-range").removeClass("inuse");
989
+ }
990
+ if (!oTable.fnSettings().oLoadedState) {
991
+ oTable.fnSettings().oLoadedState = {};
992
+ oTable.fnSettings().oApi._fnSaveState(oTable.fnSettings());
993
+ }
994
+ if (oTable.fnSettings().oFeatures.bStateSave === true) {
995
+ if (oTable.fnSettings().oLoadedState.yadcfState !== undefined && oTable.fnSettings().oLoadedState.yadcfState[table_selector_jq_friendly] !== undefined) {
996
+ oTable.fnSettings().oLoadedState.yadcfState[table_selector_jq_friendly][column_number] =
997
+ {
998
+ 'from' : ui.values[0],
999
+ 'to' : ui.values[1]
1000
+ };
1001
+ } else {
1002
+ yadcfState = {};
1003
+ yadcfState[table_selector_jq_friendly] = [];
1004
+ yadcfState[table_selector_jq_friendly][column_number] = {
1005
+ 'from' : ui.values[0],
1006
+ 'to' : ui.values[1]
1007
+ };
1008
+ oTable.fnSettings().oLoadedState.yadcfState = yadcfState;
1009
+ }
1010
+ oTable.fnSettings().oApi._fnSaveState(oTable.fnSettings());
1011
+ }
1012
+
1013
+ resetIApiIndex();
1014
+ };
1015
+
1016
+ if (options.filter_delay === undefined) {
1017
+ keyUp();
1018
+ } else {
1019
+ yadcfDelay(function () {
1020
+ keyUp();
1021
+ }, options.filter_delay);
1022
+ }
1023
+ }
1024
+
1025
+ function addRangeNumberSliderFilter(filter_selector_string, table_selector_jq_friendly, column_number, filter_reset_button_text, min_val, max_val, ignore_char) {
1026
+ var sliderId = "yadcf-filter-" + table_selector_jq_friendly + "-slider-" + column_number,
1027
+ min_tip_id = "yadcf-filter-" + table_selector_jq_friendly + "-min_tip-" + column_number,
1028
+ max_tip_id = "yadcf-filter-" + table_selector_jq_friendly + "-max_tip-" + column_number,
1029
+ filter_selector_string_tmp,
1030
+ filter_wrapper_id,
1031
+ oTable,
1032
+ min_state_val = min_val,
1033
+ max_state_val = max_val;
1034
+
1035
+ filter_wrapper_id = "yadcf-filter-wrapper-" + table_selector_jq_friendly + "-" + column_number;
1036
+
1037
+ if ($("#" + filter_wrapper_id).length > 0) {
1038
+ if (!isFinite($('#' + min_tip_id).text()) || !isFinite($('#' + max_tip_id).text()) || !isFinite(min_val) || !isFinite(max_val) ||
1039
+ !isFinite($(filter_selector_string).find('.yadcf-filter-range-number-slider-min-tip-hidden.hide').text()) ||
1040
+ !isFinite($(filter_selector_string).find('.yadcf-filter-range-number-slider-max-tip-hidden.hide').text())) {
1041
+ $(filter_selector_string).empty();
1042
+ } else {
1043
+ return;
1044
+ }
1045
+ }
1046
+
1047
+ //add a wrapper to hold both filter and reset button
1048
+ $(filter_selector_string).append("<div onclick=\"yadcf.stopPropagation(event);\" id=\"" + filter_wrapper_id + "\" class=\"yadcf-filter-wrapper\"></div>");
1049
+ filter_selector_string = filter_selector_string + " div.yadcf-filter-wrapper";
1050
+ filter_selector_string_tmp = filter_selector_string;
1051
+
1052
+ $(filter_selector_string).append("<div id=\"yadcf-filter-wrapper-inner-" + table_selector_jq_friendly + "-" + column_number + "\" class=\"yadcf-number-slider-filter-wrapper-inner\"></div>");
1053
+ filter_selector_string = filter_selector_string + " div.yadcf-number-slider-filter-wrapper-inner";
1054
+
1055
+ $(filter_selector_string).append("<div id=\"" + sliderId + "\" class=\"yadcf-filter-range-number-slider\"></div>");
1056
+ filter_selector_string = filter_selector_string + " #" + sliderId;
1057
+
1058
+ $(filter_selector_string).append("<span class=\"yadcf-filter-range-number-slider-min-tip-hidden hide\">" + min_val + "</span>");
1059
+ $(filter_selector_string).append("<span class=\"yadcf-filter-range-number-slider-max-tip-hidden hide\">" + max_val + "</span>");
1060
+
1061
+ $.fn.dataTableExt.iApiIndex = oTablesIndex[table_selector_jq_friendly];
1062
+ oTable = oTables[table_selector_jq_friendly];
1063
+ if (oTable.fnSettings().oFeatures.bStateSave === true && oTable.fnSettings().oLoadedState) {
1064
+ if (oTable.fnSettings().oLoadedState.yadcfState && oTable.fnSettings().oLoadedState.yadcfState[table_selector_jq_friendly] && oTable.fnSettings().oLoadedState.yadcfState[table_selector_jq_friendly][column_number]) {
1065
+ if (min_val !== oTable.fnSettings().oLoadedState.yadcfState[table_selector_jq_friendly][column_number].from) {
1066
+ min_state_val = oTable.fnSettings().oLoadedState.yadcfState[table_selector_jq_friendly][column_number].from;
1067
+ }
1068
+ if (max_val !== oTable.fnSettings().oLoadedState.yadcfState[table_selector_jq_friendly][column_number].to) {
1069
+ max_state_val = oTable.fnSettings().oLoadedState.yadcfState[table_selector_jq_friendly][column_number].to;
1070
+ }
1071
+ }
1072
+ }
1073
+
1074
+ if (isFinite(min_val) && isFinite(max_val) && isFinite(min_state_val) && isFinite(max_state_val)) {
1075
+ $("#" + sliderId).slider({
1076
+ range: true,
1077
+ min: min_val,
1078
+ max: max_val,
1079
+ values: [min_state_val, max_state_val],
1080
+ create: function (event, ui) {
1081
+ rangeNumberSldierDrawTips(min_state_val, max_state_val, min_tip_id, max_tip_id, table_selector_jq_friendly, column_number);
1082
+ },
1083
+ slide: function (event, ui) {
1084
+ rangeNumberSldierDrawTips(ui.values[0], ui.values[1], min_tip_id, max_tip_id, table_selector_jq_friendly, column_number);
1085
+ rangeNumberSliderChange(table_selector_jq_friendly, event, ui);
1086
+ },
1087
+ change: function (event, ui) {
1088
+ rangeNumberSldierDrawTips(ui.values[0], ui.values[1], min_tip_id, max_tip_id, table_selector_jq_friendly, column_number);
1089
+ rangeNumberSliderChange(table_selector_jq_friendly, event, ui);
1090
+ }
1091
+ });
1092
+
1093
+ if (filter_reset_button_text !== false) {
1094
+ $(filter_selector_string_tmp).append("<input value=\"" + filter_reset_button_text + "\" type=\"button\" " +
1095
+ "onclick=\"yadcf.stopPropagation(event);yadcf.rangeNumberSliderClear('" + table_selector_jq_friendly + "',event); return false;\" class=\"yadcf-filter-reset-button range-number-slider-reset-button\">");
1096
+ }
1097
+ }
1098
+
1099
+ $.fn.dataTableExt.iApiIndex = oTablesIndex[table_selector_jq_friendly];
1100
+ oTable = oTables[table_selector_jq_friendly];
1101
+ if (oTable.fnSettings().oFeatures.bStateSave === true && oTable.fnSettings().oLoadedState) {
1102
+ if (oTable.fnSettings().oLoadedState.yadcfState && oTable.fnSettings().oLoadedState.yadcfState[table_selector_jq_friendly] && oTable.fnSettings().oLoadedState.yadcfState[table_selector_jq_friendly][column_number]) {
1103
+ if (isFinite(min_val) && min_val !== oTable.fnSettings().oLoadedState.yadcfState[table_selector_jq_friendly][column_number].from) {
1104
+ $($(filter_selector_string).find(".ui-slider-handle")[0]).addClass("inuse");
1105
+ }
1106
+ if (isFinite(max_val) && max_val !== oTable.fnSettings().oLoadedState.yadcfState[table_selector_jq_friendly][column_number].to) {
1107
+ $($(filter_selector_string).find(".ui-slider-handle")[1]).addClass("inuse");
1108
+ }
1109
+ if ((isFinite(min_val) && isFinite(max_val)) && (min_val !== oTable.fnSettings().oLoadedState.yadcfState[table_selector_jq_friendly][column_number].from || max_val !== oTable.fnSettings().oLoadedState.yadcfState[table_selector_jq_friendly][column_number].to)) {
1110
+ $($(filter_selector_string).find(".ui-slider-range")).addClass("inuse");
1111
+ }
1112
+ }
1113
+ }
1114
+ resetIApiIndex();
1115
+
1116
+ if (oTable.fnSettings().oFeatures.bServerSide !== true) {
1117
+ addRangeNumberSliderFilterCapability(table_selector_jq_friendly, min_tip_id, max_tip_id, column_number, ignore_char);
1118
+ }
1119
+ }
1120
+
1121
+ function dot2obj(tmpObj, dot_refs) {
1122
+ var i = 0;
1123
+ dot_refs = dot_refs.split(".");
1124
+ for (i = 0; i < dot_refs.length; i++) {
1125
+ tmpObj = tmpObj[dot_refs[i]];
1126
+ }
1127
+ return tmpObj;
1128
+ }
1129
+
1130
+ function appendFilters(oTable, args, table_selector) {
1131
+
1132
+ var i = 0,
1133
+ $filter_selector,
1134
+ filter_selector_string,
1135
+
1136
+ data,
1137
+ filter_container_id,
1138
+ column_number_data,
1139
+ column_number,
1140
+ column_data_type,
1141
+ html_data_type,
1142
+ text_data_delimiter,
1143
+ filter_default_label,
1144
+ filter_reset_button_text,
1145
+ enable_auto_complete,
1146
+ sort_as,
1147
+ sort_order,
1148
+ date_format,
1149
+ ignore_char,
1150
+ filter_match_mode,
1151
+
1152
+ options,
1153
+ options_tmp,
1154
+ j,
1155
+ k,
1156
+ data_length,
1157
+ col_inner_elements,
1158
+ col_inner_data,
1159
+ col_filter_array,
1160
+ ii,
1161
+ table_selector_jq_friendly,
1162
+ min_val,
1163
+ max_val,
1164
+ col_num_visible,
1165
+ col_num_visible_iter,
1166
+ tmpStr,
1167
+ columnObjKey,
1168
+ columnObj;
1169
+
1170
+
1171
+ for (columnObjKey in args) {
1172
+ if (args.hasOwnProperty(columnObjKey)) {
1173
+ columnObj = args[columnObjKey];
1174
+
1175
+ data = columnObj.data;
1176
+ filter_container_id = columnObj.filter_container_id;
1177
+ column_number = columnObj.column_number;
1178
+ column_number = +column_number;
1179
+ column_number_data = undefined;
1180
+ if (isNaN(oTable.fnSettings().aoColumns[column_number].mData) && typeof oTable.fnSettings().aoColumns[column_number].mData !== 'object') {
1181
+ column_number_data = oTable.fnSettings().aoColumns[column_number].mData;
1182
+ }
1183
+ column_data_type = columnObj.column_data_type;
1184
+ html_data_type = columnObj.html_data_type;
1185
+ text_data_delimiter = columnObj.text_data_delimiter;
1186
+ filter_default_label = columnObj.filter_default_label;
1187
+ filter_reset_button_text = columnObj.filter_reset_button_text;
1188
+ enable_auto_complete = columnObj.enable_auto_complete;
1189
+ sort_as = columnObj.sort_as;
1190
+ sort_order = columnObj.sort_order;
1191
+ date_format = columnObj.date_format;
1192
+ //for jquery datepicker
1193
+ date_format = date_format.replace("yyyy", "yy");
1194
+
1195
+ if (columnObj.ignore_char !== undefined) {
1196
+ ignore_char = new RegExp(columnObj.ignore_char, "g");
1197
+ }
1198
+ filter_match_mode = columnObj.filter_match_mode;
1199
+
1200
+ if (column_number === undefined) {
1201
+ alert("You must specify column number");
1202
+ return;
1203
+ }
1204
+
1205
+ if (column_data_type === undefined) {
1206
+ column_data_type = "text";
1207
+ } else if (column_data_type === "html") {
1208
+ if (html_data_type === undefined) {
1209
+ html_data_type = "text";
1210
+ }
1211
+ }
1212
+
1213
+ if (enable_auto_complete === true) {
1214
+ columnObj.filter_type = "auto_complete";
1215
+ }
1216
+
1217
+ if (filter_default_label === undefined) {
1218
+ if (columnObj.filter_type === "select" || columnObj.filter_type === 'custom_func') {
1219
+ filter_default_label = "Select value";
1220
+ } else if (columnObj.filter_type === "multi_select") {
1221
+ filter_default_label = "Select values";
1222
+ } else if (columnObj.filter_type === "auto_complete" || columnObj.filter_type === "text") {
1223
+ filter_default_label = "Type a value";
1224
+ } else if (columnObj.filter_type === "range_number" || columnObj.filter_type === "range_date") {
1225
+ filter_default_label = ["from", "to"];
1226
+ } else if (columnObj.filter_type === "date") {
1227
+ filter_default_label = "Select a date";
1228
+ }
1229
+ }
1230
+
1231
+ if (filter_reset_button_text === undefined) {
1232
+ filter_reset_button_text = "x";
1233
+ }
1234
+
1235
+ options = [];
1236
+ col_filter_array = {};
1237
+
1238
+ if (data === undefined) {
1239
+ data = oTable.fnSettings().aoData;
1240
+ data_length = data.length;
1241
+
1242
+ for (j = 0; j < data_length; j++) {
1243
+ if (column_data_type === "html") {
1244
+ if (column_number_data === undefined) {
1245
+ col_inner_elements = $(data[j]._aData[column_number]);
1246
+ } else {
1247
+ col_inner_elements = dot2obj(data[j]._aData, column_number_data);
1248
+ col_inner_elements = $(col_inner_elements);
1249
+ }
1250
+ for (k = 0; k < col_inner_elements.length; k++) {
1251
+ switch (html_data_type) {
1252
+ case "text":
1253
+ col_inner_data = $(col_inner_elements[k]).text();
1254
+ break;
1255
+ case "value":
1256
+ col_inner_data = $(col_inner_elements[k]).val();
1257
+ break;
1258
+ case "id":
1259
+ col_inner_data = col_inner_elements[k].id;
1260
+ break;
1261
+ }
1262
+ if (!(col_filter_array.hasOwnProperty(col_inner_data))) {
1263
+ col_filter_array[col_inner_data] = col_inner_data;
1264
+ options.push(col_inner_data);
1265
+ }
1266
+ }
1267
+ } else if (column_data_type === "text") {
1268
+ if (text_data_delimiter !== undefined) {
1269
+ if (column_number_data === undefined) {
1270
+ col_inner_elements = data[j]._aData[column_number].split(text_data_delimiter);
1271
+ } else {
1272
+ col_inner_elements = dot2obj(data[j]._aData, column_number_data);
1273
+ col_inner_elements = col_inner_elements.split(text_data_delimiter);
1274
+ }
1275
+ for (k = 0; k < col_inner_elements.length; k++) {
1276
+ col_inner_data = col_inner_elements[k];
1277
+ if (!(col_filter_array.hasOwnProperty(col_inner_data))) {
1278
+ col_filter_array[col_inner_data] = col_inner_data;
1279
+ options.push(col_inner_data);
1280
+ }
1281
+ }
1282
+ } else {
1283
+ if (column_number_data === undefined) {
1284
+ col_inner_data = data[j]._aData[column_number];
1285
+ } else {
1286
+ col_inner_data = dot2obj(data[j]._aData, column_number_data);
1287
+ }
1288
+ if (!(col_filter_array.hasOwnProperty(col_inner_data))) {
1289
+ col_filter_array[col_inner_data] = col_inner_data;
1290
+ options.push(col_inner_data);
1291
+ }
1292
+ }
1293
+ }
1294
+ }
1295
+
1296
+ } else {
1297
+ for (ii = 0; ii < data.length; ii++) {
1298
+ options.push(data[ii]);
1299
+ }
1300
+ }
1301
+
1302
+ if (columnObj.filter_type === "range_number_slider") {
1303
+ min_val = findMinInArray(options, ignore_char);
1304
+ max_val = findMaxInArray(options, ignore_char);
1305
+ }
1306
+
1307
+
1308
+ if (filter_container_id === undefined) {
1309
+ //Can't show filter inside a column for a hidden one (place it outside using filter_container_id)
1310
+ if (oTable.fnSettings().aoColumns[column_number].bVisible === false) {
1311
+ //console.log('Yadcf warning: Can\'t show filter inside a column N#' + column_number + ' for a hidden one (place it outside using filter_container_id)');
1312
+ continue;
1313
+ }
1314
+ col_num_visible = column_number;
1315
+
1316
+ for (col_num_visible_iter = 0; col_num_visible_iter < oTable.fnSettings().aoColumns.length && col_num_visible_iter < column_number; col_num_visible_iter++) {
1317
+ if (oTable.fnSettings().aoColumns[col_num_visible_iter].bVisible === false) {
1318
+ col_num_visible--;
1319
+ }
1320
+ }
1321
+ filter_selector_string = table_selector + " thead th:eq(" + col_num_visible + ")";
1322
+ $filter_selector = $(filter_selector_string).find(".yadcf-filter");
1323
+ } else {
1324
+ if ($("#" + filter_container_id).length === 0) {
1325
+ alert("Filter container could not be found.");
1326
+ return;
1327
+ }
1328
+ filter_selector_string = "#" + filter_container_id;
1329
+ $filter_selector = $(filter_selector_string).find(".yadcf-filter");
1330
+ }
1331
+
1332
+ table_selector_jq_friendly = yadcf.generateTableSelectorJQFriendly(table_selector);
1333
+
1334
+ if (columnObj.filter_type === "select" || columnObj.filter_type === "auto_complete" || columnObj.filter_type === "multi_select" || columnObj.filter_type === "custom_func") {
1335
+ if (sort_as === "alpha") {
1336
+ if (sort_order === "asc") {
1337
+ options.sort();
1338
+ } else if (sort_order === "desc") {
1339
+ options.sort();
1340
+ options.reverse();
1341
+ }
1342
+ } else if (sort_as === "num") {
1343
+ if (sort_order === "asc") {
1344
+ options.sort(sortNumAsc);
1345
+ } else if (sort_order === "desc") {
1346
+ options.sort(sortNumDesc);
1347
+ }
1348
+ }
1349
+ }
1350
+
1351
+ if (columnObj.filter_type === "select" || columnObj.filter_type === 'custom_func') {
1352
+ options_tmp = "<option value=\"" + "-1" + "\">" + filter_default_label + "</option>";
1353
+ if (typeof options[0] === 'object') {
1354
+ for (ii = 0; ii < options.length; ii++) {
1355
+ options_tmp += "<option value=\"" + options[ii].value + "\">" + options[ii].label + "</option>";
1356
+ }
1357
+ } else {
1358
+ for (ii = 0; ii < options.length; ii++) {
1359
+ options_tmp += "<option value=\"" + options[ii] + "\">" + options[ii] + "</option>";
1360
+ }
1361
+ }
1362
+ options = options_tmp;
1363
+
1364
+ } else if (columnObj.filter_type === "multi_select") {
1365
+ if (columnObj.select_type === undefined) {
1366
+ options_tmp = "<option data-placeholder=\"true\" value=\"" + "-1" + "\">" + filter_default_label + "</option>";
1367
+ } else {
1368
+ options_tmp = "";
1369
+ }
1370
+ if (typeof options[0] === 'object') {
1371
+ for (ii = 0; ii < options.length; ii++) {
1372
+ options_tmp += "<option value=\"" + options[ii].value + "\">" + options[ii].label + "</option>";
1373
+ }
1374
+ } else {
1375
+ for (ii = 0; ii < options.length; ii++) {
1376
+ options_tmp += "<option value=\"" + options[ii] + "\">" + options[ii] + "</option>";
1377
+ }
1378
+ }
1379
+ options = options_tmp;
1380
+ }
1381
+
1382
+ if ($filter_selector.length === 1) {
1383
+ if (columnObj.filter_type === "select" || columnObj.filter_type === "multi_select") {
1384
+
1385
+ $filter_selector.empty();
1386
+ $filter_selector.append(options);
1387
+ if (oTable.fnSettings().aoPreSearchCols[column_number].sSearch !== '') {
1388
+ tmpStr = oTable.fnSettings().aoPreSearchCols[column_number].sSearch;
1389
+ if (columnObj.filter_type === "select") {
1390
+ tmpStr = yadcfParseMatchFilter(tmpStr, getOptions(oTable.selector)[column_number].filter_match_mode);
1391
+ $('#yadcf-filter-' + table_selector_jq_friendly + '-' + column_number).val(tmpStr).addClass("inuse");
1392
+ } else if (columnObj.filter_type === "multi_select") {
1393
+ tmpStr = yadcfParseMatchFilterMultiSelect(tmpStr, getOptions(oTable.selector)[column_number].filter_match_mode);
1394
+ tmpStr = tmpStr.replace(/\\/g, "");
1395
+ tmpStr = tmpStr.split("|");
1396
+ $('#yadcf-filter-' + table_selector_jq_friendly + '-' + column_number).val(tmpStr);
1397
+ }
1398
+ }
1399
+ if (columnObj.select_type !== undefined && columnObj.select_type === 'chosen') {
1400
+ $("#yadcf-filter-" + table_selector_jq_friendly + "-" + column_number).trigger("chosen:updated");
1401
+ } else if (columnObj.select_type !== undefined && columnObj.select_type === 'select2') {
1402
+ $("#yadcf-filter-" + table_selector_jq_friendly + "-" + column_number).select2("destroy").select2(columnObj.select_type_options);
1403
+ }
1404
+ } else if (columnObj.filter_type === "auto_complete") {
1405
+ $(document).data("yadcf-filter-" + table_selector_jq_friendly + "-" + column_number, options);
1406
+ }
1407
+ } else {
1408
+ if (filter_container_id === undefined) {
1409
+ if ($(filter_selector_string + " div.DataTables_sort_wrapper").length > 0) {
1410
+ $(filter_selector_string + " div.DataTables_sort_wrapper").css("display", "inline-block");
1411
+ }
1412
+ } else {
1413
+ if ($("#yadcf-filter-wrapper-" + filter_container_id).length === 0) {
1414
+ $("#" + filter_container_id).append("<div id=\"yadcf-filter-wrapper-" + filter_container_id + "\"></div>");
1415
+ }
1416
+ filter_selector_string = "#yadcf-filter-wrapper-" + filter_container_id;
1417
+ }
1418
+
1419
+ if (columnObj.filter_type === "select" || columnObj.filter_type === 'custom_func') {
1420
+
1421
+ //add a wrapper to hold both filter and reset button
1422
+ $(filter_selector_string).append("<div id=\"yadcf-filter-wrapper-" + table_selector_jq_friendly + "-" + column_number + "\" class=\"yadcf-filter-wrapper\"></div>");
1423
+ filter_selector_string = filter_selector_string + " div.yadcf-filter-wrapper";
1424
+
1425
+ if (columnObj.filter_type === "select") {
1426
+ $(filter_selector_string).append("<select id=\"yadcf-filter-" + table_selector_jq_friendly + "-" + column_number + "\" class=\"yadcf-filter\" " +
1427
+ "onchange=\"yadcf.doFilter(this, '" + table_selector_jq_friendly + "', " + column_number + ", '" + filter_match_mode + "')\" onclick='yadcf.stopPropagation(event);'>" + options + "</select>");
1428
+ if (filter_reset_button_text !== false) {
1429
+ $(filter_selector_string).find(".yadcf-filter").after("<input value=\"" + filter_reset_button_text + "\" type=\"button\" " +
1430
+ "onclick=\"yadcf.stopPropagation(event);yadcf.doFilter('clear', '" + table_selector_jq_friendly + "', " + column_number + "); return false;\" class=\"yadcf-filter-reset-button\">");
1431
+ }
1432
+ } else {
1433
+ $(filter_selector_string).append("<select id=\"yadcf-filter-" + table_selector_jq_friendly + "-" + column_number + "\" class=\"yadcf-filter\" " +
1434
+ "onchange=\"yadcf.doFilterCustomDateFunc(this, '" + table_selector_jq_friendly + "', " + column_number + ")\" onclick='yadcf.stopPropagation(event);'>" + options + "</select>");
1435
+ if (filter_reset_button_text !== false) {
1436
+ $(filter_selector_string).find(".yadcf-filter").after("<input value=\"" + filter_reset_button_text + "\" type=\"button\" " +
1437
+ "onclick=\"yadcf.stopPropagation(event);yadcf.doFilterCustomDateFunc('clear', '" + table_selector_jq_friendly + "', " + column_number + "); return false;\" class=\"yadcf-filter-reset-button\">");
1438
+ }
1439
+ if (oTable.fnSettings().oFeatures.bServerSide !== true) {
1440
+ addCustomFunctionFilterCapability(table_selector_jq_friendly, "yadcf-filter-" + table_selector_jq_friendly + "-" + column_number, column_number);
1441
+ }
1442
+ }
1443
+
1444
+ if (oTable.fnSettings().aoPreSearchCols[column_number].sSearch !== '') {
1445
+ tmpStr = oTable.fnSettings().aoPreSearchCols[column_number].sSearch;
1446
+ tmpStr = yadcfParseMatchFilter(tmpStr, getOptions(oTable.selector)[column_number].filter_match_mode);
1447
+ $('#yadcf-filter-' + table_selector_jq_friendly + '-' + column_number).val(tmpStr).addClass("inuse");
1448
+ }
1449
+
1450
+ if (columnObj.select_type !== undefined && columnObj.select_type === 'chosen') {
1451
+ $("#yadcf-filter-" + table_selector_jq_friendly + "-" + column_number).chosen(columnObj.select_type_options);
1452
+ $("#yadcf-filter-" + table_selector_jq_friendly + "-" + column_number).next().attr("onclick", "yadcf.stopPropagation(event);");
1453
+ } else if (columnObj.select_type !== undefined && columnObj.select_type === 'select2') {
1454
+ $("#yadcf-filter-" + table_selector_jq_friendly + "-" + column_number).select2(columnObj.select_type_options);
1455
+ }
1456
+
1457
+ } else if (columnObj.filter_type === "multi_select") {
1458
+
1459
+ //add a wrapper to hold both filter and reset button
1460
+ $(filter_selector_string).append("<div id=\"yadcf-filter-wrapper-" + table_selector_jq_friendly + "-" + column_number + "\" class=\"yadcf-filter-wrapper\"></div>");
1461
+ filter_selector_string = filter_selector_string + " div.yadcf-filter-wrapper";
1462
+
1463
+ $(filter_selector_string).append("<select multiple data-placeholder=\"" + filter_default_label + "\" id=\"yadcf-filter-" + table_selector_jq_friendly + "-" + column_number + "\" class=\"yadcf-filter\" " +
1464
+ "onchange=\"yadcf.doFilterMultiSelect(this, '" + table_selector_jq_friendly + "', " + column_number + ", '" + filter_match_mode + "')\" onclick='yadcf.stopPropagation(event);'>" + options + "</select>");
1465
+
1466
+ if (filter_reset_button_text !== false) {
1467
+ $(filter_selector_string).find(".yadcf-filter").after("<input value=\"" + filter_reset_button_text + "\" type=\"button\" " +
1468
+ "onclick=\"yadcf.stopPropagation(event);yadcf.doFilter('clear', '" + table_selector_jq_friendly + "', " + column_number + "); return false;\" class=\"yadcf-filter-reset-button\">");
1469
+ }
1470
+
1471
+ if (oTable.fnSettings().aoPreSearchCols[column_number].sSearch !== '') {
1472
+ tmpStr = oTable.fnSettings().aoPreSearchCols[column_number].sSearch;
1473
+ tmpStr = yadcfParseMatchFilterMultiSelect(tmpStr, getOptions(oTable.selector)[column_number].filter_match_mode);
1474
+ tmpStr = tmpStr.replace(/\\/g, "");
1475
+ tmpStr = tmpStr.split("|");
1476
+ $('#yadcf-filter-' + table_selector_jq_friendly + '-' + column_number).val(tmpStr);
1477
+ }
1478
+
1479
+ if (columnObj.filter_container_id === undefined && columnObj.select_type_options.width === undefined) {
1480
+ columnObj.select_type_options = $.extend(columnObj.select_type_options, {width: $(filter_selector_string).closest("th").width() + "px"});
1481
+ }
1482
+ if (columnObj.select_type !== undefined && columnObj.select_type === 'chosen') {
1483
+ $("#yadcf-filter-" + table_selector_jq_friendly + "-" + column_number).chosen(columnObj.select_type_options);
1484
+ $("#yadcf-filter-" + table_selector_jq_friendly + "-" + column_number).next().attr("onclick", "yadcf.stopPropagation(event);");
1485
+ } else if (columnObj.select_type !== undefined && columnObj.select_type === 'select2') {
1486
+ $("#yadcf-filter-" + table_selector_jq_friendly + "-" + column_number).select2(columnObj.select_type_options);
1487
+ }
1488
+
1489
+ } else if (columnObj.filter_type === "auto_complete") {
1490
+
1491
+ //add a wrapper to hold both filter and reset button
1492
+ $(filter_selector_string).append("<div id=\"yadcf-filter-wrapper-" + table_selector_jq_friendly + "-" + column_number + "\" class=\"yadcf-filter-wrapper\"></div>");
1493
+ filter_selector_string = filter_selector_string + " div.yadcf-filter-wrapper";
1494
+
1495
+ $(filter_selector_string).append("<input id=\"yadcf-filter-" + table_selector_jq_friendly + "-" + column_number + "\" class=\"yadcf-filter\" onclick='yadcf.stopPropagation(event);"
1496
+ + "' placeholder='" + filter_default_label + "'" + " filter_match_mode='" + filter_match_mode + "'" + " onkeyup=\"yadcf.autocompleteKeyUP('" + table_selector_jq_friendly + "',event);\"></input>");
1497
+ $(document).data("yadcf-filter-" + table_selector_jq_friendly + "-" + column_number, options);
1498
+
1499
+ if (filter_reset_button_text !== false) {
1500
+ $(filter_selector_string).find(".yadcf-filter").after("<input value=\"" + filter_reset_button_text + "\" type=\"button\" " +
1501
+ "onclick=\"yadcf.stopPropagation(event);yadcf.doFilterAutocomplete('clear', '" + table_selector_jq_friendly + "', " + column_number + "); return false;\" class=\"yadcf-filter-reset-button\">");
1502
+ }
1503
+
1504
+ } else if (columnObj.filter_type === "text") {
1505
+
1506
+ //add a wrapper to hold both filter and reset button
1507
+ $(filter_selector_string).append("<div id=\"yadcf-filter-wrapper-" + table_selector_jq_friendly + "-" + column_number + "\" class=\"yadcf-filter-wrapper\"></div>");
1508
+ filter_selector_string = filter_selector_string + " div.yadcf-filter-wrapper";
1509
+
1510
+ $(filter_selector_string).append("<input type=\"text\" id=\"yadcf-filter-" + table_selector_jq_friendly + "-" + column_number + "\" class=\"yadcf-filter\" onclick='yadcf.stopPropagation(event);"
1511
+ + "' placeholder='" + filter_default_label + "'" + " filter_match_mode='" + filter_match_mode + "'" + " onkeyup=\"yadcf.textKeyUP('" + table_selector_jq_friendly + "',event);\"></input>");
1512
+
1513
+ if (filter_reset_button_text !== false) {
1514
+ $(filter_selector_string).find(".yadcf-filter").after("<input value=\"" + filter_reset_button_text + "\" type=\"button\" " + " id=\"yadcf-filter-" + table_selector_jq_friendly + "-" + column_number + "-reset\"" +
1515
+ "onclick=\"yadcf.stopPropagation(event);yadcf.textKeyUP('" + table_selector_jq_friendly + "', event, 'clear'); return false;\" class=\"yadcf-filter-reset-button\">");
1516
+ }
1517
+
1518
+ if (oTable.fnSettings().aoPreSearchCols[column_number].sSearch !== '') {
1519
+ tmpStr = oTable.fnSettings().aoPreSearchCols[column_number].sSearch;
1520
+ tmpStr = yadcfParseMatchFilter(tmpStr, getOptions(oTable.selector)[column_number].filter_match_mode);
1521
+ $('#yadcf-filter-' + table_selector_jq_friendly + '-' + column_number).val(tmpStr).addClass("inuse");
1522
+ }
1523
+
1524
+ } else if (columnObj.filter_type === "date") {
1525
+
1526
+ addDateFilter(filter_selector_string, table_selector_jq_friendly, column_number, filter_reset_button_text, filter_default_label, date_format);
1527
+
1528
+ } else if (columnObj.filter_type === "range_number") {
1529
+
1530
+ addRangeNumberFilter(filter_selector_string, table_selector_jq_friendly, column_number, filter_reset_button_text, filter_default_label, ignore_char);
1531
+
1532
+ } else if (columnObj.filter_type === "range_number_slider") {
1533
+
1534
+ addRangeNumberSliderFilter(filter_selector_string, table_selector_jq_friendly, column_number, filter_reset_button_text, min_val, max_val, ignore_char);
1535
+
1536
+ } else if (columnObj.filter_type === "range_date") {
1537
+
1538
+ addRangeDateFilter(filter_selector_string, table_selector_jq_friendly, column_number, filter_reset_button_text, filter_default_label, date_format);
1539
+
1540
+ }
1541
+ }
1542
+
1543
+ if ($(document).data("#yadcf-filter-" + table_selector_jq_friendly + "-" + column_number + "_val") !== undefined && $(document).data("#yadcf-filter-" + table_selector_jq_friendly + "-" + column_number + "_val") !== "-1") {
1544
+ $(filter_selector_string).find(".yadcf-filter").val($(document).data("#yadcf-filter-" + table_selector_jq_friendly + "-" + column_number + "_val"));
1545
+ }
1546
+ if (columnObj.filter_type === "auto_complete") {
1547
+ $("#yadcf-filter-" + table_selector_jq_friendly + "-" + column_number).autocomplete({
1548
+ source: $(document).data("yadcf-filter-" + table_selector_jq_friendly + "-" + column_number),
1549
+ select: autocompleteSelect
1550
+ });
1551
+ if (oTable.fnSettings().aoPreSearchCols[column_number].sSearch !== '') {
1552
+ tmpStr = oTable.fnSettings().aoPreSearchCols[column_number].sSearch;
1553
+ tmpStr = yadcfParseMatchFilter(tmpStr, getOptions(oTable.selector)[column_number].filter_match_mode);
1554
+ $('#yadcf-filter-' + table_selector_jq_friendly + '-' + column_number).val(tmpStr).addClass("inuse");
1555
+ }
1556
+ }
1557
+ }
1558
+ }
1559
+ if (exFilterColumnQueue.length > 0) {
1560
+ (exFilterColumnQueue.shift())();
1561
+ }
1562
+ }
1563
+
1564
+ function endsWith(str, suffix) {
1565
+ return str.indexOf(suffix, str.length - suffix.length) !== -1;
1566
+ }
1567
+
1568
+ function rangeClear(table_selector_jq_friendly, event) {
1569
+ $.fn.dataTableExt.iApiIndex = oTablesIndex[table_selector_jq_friendly];
1570
+ var oTable = oTables[table_selector_jq_friendly],
1571
+ yadcfState,
1572
+ column_number;
1573
+
1574
+ column_number = parseInt($(event.target).parent().attr("id").replace('yadcf-filter-wrapper-' + table_selector_jq_friendly + '-', ''), 10);
1575
+
1576
+ $(event.target).parent().find(".yadcf-filter-range").val("");
1577
+ if ($(event.target).parent().find(".yadcf-filter-range-number").length > 0) {
1578
+ $($(event.target).parent().find(".yadcf-filter-range")[0]).focus();
1579
+ }
1580
+
1581
+ if (oTable.fnSettings().oFeatures.bServerSide !== true) {
1582
+ oTable.fnDraw();
1583
+ } else {
1584
+ oTable.fnFilter('-yadcf_delim-', column_number);
1585
+ }
1586
+
1587
+ if (!oTable.fnSettings().oLoadedState) {
1588
+ oTable.fnSettings().oLoadedState = {};
1589
+ oTable.fnSettings().oApi._fnSaveState(oTable.fnSettings());
1590
+ }
1591
+ if (oTable.fnSettings().oFeatures.bStateSave === true) {
1592
+ if (oTable.fnSettings().oLoadedState.yadcfState !== undefined && oTable.fnSettings().oLoadedState.yadcfState[table_selector_jq_friendly] !== undefined) {
1593
+ oTable.fnSettings().oLoadedState.yadcfState[table_selector_jq_friendly][column_number] =
1594
+ {
1595
+ 'from' : "",
1596
+ 'to' : ""
1597
+ };
1598
+ } else {
1599
+ yadcfState = {};
1600
+ yadcfState[table_selector_jq_friendly] = [];
1601
+ yadcfState[table_selector_jq_friendly][column_number] = {
1602
+ 'from' : "",
1603
+ 'to' : ""
1604
+ };
1605
+ oTable.fnSettings().oLoadedState.yadcfState = yadcfState;
1606
+ }
1607
+ oTable.fnSettings().oApi._fnSaveState(oTable.fnSettings());
1608
+ }
1609
+ resetIApiIndex();
1610
+
1611
+ $(event.target).parent().find(".yadcf-filter-range").removeClass("inuse");
1612
+
1613
+ return;
1614
+ }
1615
+
1616
+ function rangeNumberSliderClear(table_selector_jq_friendly, event) {
1617
+ $.fn.dataTableExt.iApiIndex = oTablesIndex[table_selector_jq_friendly];
1618
+ var oTable = oTables[table_selector_jq_friendly],
1619
+ min_val,
1620
+ max_val;
1621
+
1622
+ min_val = +$($(event.target).parent().find(".yadcf-filter-range-number-slider-min-tip-hidden")).text();
1623
+ max_val = +$($(event.target).parent().find(".yadcf-filter-range-number-slider-max-tip-hidden")).text();
1624
+
1625
+ $("#" + $(event.target).prev().find(".yadcf-filter-range-number-slider").attr("id")).slider("option", "values", [min_val, max_val]);
1626
+
1627
+ $($(event.target).prev().find(".ui-slider-handle")[0]).attr("tabindex", -1).focus();
1628
+
1629
+ $($(event.target).prev().find(".ui-slider-handle")[0]).removeClass("inuse");
1630
+ $($(event.target).prev().find(".ui-slider-handle")[1]).removeClass("inuse");
1631
+ $(event.target).prev().find(".ui-slider-range").removeClass("inuse");
1632
+
1633
+ oTable.fnDraw();
1634
+ resetIApiIndex();
1635
+
1636
+ return;
1637
+ }
1638
+
1639
+ function dateKeyUP(table_selector_jq_friendly, date_format, event) {
1640
+ var oTable,
1641
+ date,
1642
+ dateId,
1643
+ column_number;
1644
+
1645
+ dateId = event.target.id;
1646
+ date = document.getElementById(dateId).value;
1647
+ try {
1648
+ if (date.length === (date_format.length + 2)) {
1649
+ date = (date !== "") ? $.datepicker.parseDate(date_format, date) : date;
1650
+ }
1651
+ } catch (err1) {}
1652
+
1653
+ if (((date instanceof Date) || date === "")) {
1654
+
1655
+ $.fn.dataTableExt.iApiIndex = oTablesIndex[table_selector_jq_friendly];
1656
+ oTable = oTables[table_selector_jq_friendly];
1657
+ column_number = parseInt(dateId.replace("yadcf-filter-" + table_selector_jq_friendly + "-", ""), 10);
1658
+
1659
+ if (date instanceof Date) {
1660
+ $("#" + dateId).addClass('inuse');
1661
+ oTable.fnFilter(document.getElementById(dateId).value, column_number);
1662
+ } else {
1663
+ $("#" + dateId).removeClass('inuse');
1664
+ }
1665
+ if ($.trim(event.target.value) === '' && $(event.target).hasClass('inuse')) {
1666
+ $('#' + event.target.id).removeClass('inuse');
1667
+ oTable.fnFilter('', column_number);
1668
+ }
1669
+ resetIApiIndex();
1670
+ } else if ($(event.target).hasClass('inuse')) {
1671
+
1672
+ $.fn.dataTableExt.iApiIndex = oTablesIndex[table_selector_jq_friendly];
1673
+ oTable = oTables[table_selector_jq_friendly];
1674
+ column_number = parseInt(dateId.replace("yadcf-filter-" + table_selector_jq_friendly + "-", ""), 10);
1675
+
1676
+ $("#" + dateId).removeClass('inuse');
1677
+
1678
+ oTable.fnFilter('', column_number);
1679
+ resetIApiIndex();
1680
+ }
1681
+ }
1682
+
1683
+ function rangeDateKeyUP(table_selector_jq_friendly, date_format, event) {
1684
+ $.fn.dataTableExt.iApiIndex = oTablesIndex[table_selector_jq_friendly];
1685
+ var oTable = oTables[table_selector_jq_friendly],
1686
+ min,
1687
+ min_server,
1688
+ max,
1689
+ max_server,
1690
+ fromId,
1691
+ toId,
1692
+ column_number,
1693
+ options,
1694
+ keyUp;
1695
+
1696
+ column_number = parseInt($(event.target).attr("id").replace('-from-date-', '').replace('-to-date-', '').replace('yadcf-filter-' + table_selector_jq_friendly, ''), 10);
1697
+ options = getOptions(oTable.selector)[column_number];
1698
+
1699
+ keyUp = function () {
1700
+ if (event.target.id.indexOf("-from-") !== -1) {
1701
+ fromId = event.target.id;
1702
+ toId = event.target.id.replace("-from-", "-to-");
1703
+
1704
+ min = document.getElementById(fromId).value;
1705
+ max = document.getElementById(toId).value;
1706
+ } else {
1707
+ toId = event.target.id;
1708
+ fromId = event.target.id.replace("-to-", "-from-");
1709
+
1710
+ max = document.getElementById(toId).value;
1711
+ min = document.getElementById(fromId).value;
1712
+ }
1713
+
1714
+ try {
1715
+ if (min.length === (date_format.length + 2)) {
1716
+ min = (min !== "") ? $.datepicker.parseDate(date_format, min) : min;
1717
+ }
1718
+ } catch (err1) {}
1719
+ try {
1720
+ if (max.length === (date_format.length + 2)) {
1721
+ max = (max !== "") ? $.datepicker.parseDate(date_format, max) : max;
1722
+ }
1723
+ } catch (err2) {}
1724
+
1725
+ if (((max instanceof Date) && (min instanceof Date) && (max >= min)) || min === "" || max === "") {
1726
+
1727
+ if (oTable.fnSettings().oFeatures.bServerSide !== true) {
1728
+ oTable.fnDraw();
1729
+ } else {
1730
+ if (min instanceof Date) {
1731
+ min_server = min.getTime();
1732
+ } else {
1733
+ min_server = min;
1734
+ }
1735
+ if (max instanceof Date) {
1736
+ max_server = max.getTime();
1737
+ } else {
1738
+ max_server = max;
1739
+ }
1740
+ oTable.fnFilter(min_server + '-yadcf_delim-' + max_server, column_number);
1741
+ }
1742
+
1743
+ if (min instanceof Date) {
1744
+ $("#" + fromId).addClass("inuse");
1745
+ } else {
1746
+ $("#" + fromId).removeClass("inuse");
1747
+ }
1748
+ if (max instanceof Date) {
1749
+ $("#" + toId).addClass("inuse");
1750
+ } else {
1751
+ $("#" + toId).removeClass("inuse");
1752
+ }
1753
+
1754
+ if ($.trim(event.target.value) === "" && $(event.target).hasClass("inuse")) {
1755
+ $("#" + event.target.id).removeClass("inuse");
1756
+ }
1757
+
1758
+ }
1759
+ resetIApiIndex();
1760
+ };
1761
+
1762
+ if (options.filter_delay === undefined) {
1763
+ keyUp(table_selector_jq_friendly, event);
1764
+ } else {
1765
+ yadcfDelay(function () {
1766
+ keyUp(table_selector_jq_friendly, event);
1767
+ }, options.filter_delay);
1768
+ }
1769
+ }
1770
+
1771
+ function rangeNumberKeyUP(table_selector_jq_friendly, event) {
1772
+ $.fn.dataTableExt.iApiIndex = oTablesIndex[table_selector_jq_friendly];
1773
+ var oTable = oTables[table_selector_jq_friendly],
1774
+ min,
1775
+ max,
1776
+ fromId,
1777
+ toId,
1778
+ yadcfState,
1779
+ column_number,
1780
+ options,
1781
+ keyUp;
1782
+
1783
+ column_number = parseInt($(event.target).attr("id").replace('-from-', '').replace('-to-', '').replace('yadcf-filter-' + table_selector_jq_friendly, ''), 10);
1784
+ options = getOptions(oTable.selector)[column_number];
1785
+
1786
+ keyUp = function () {
1787
+
1788
+ if (event.target.id.indexOf("-from-") !== -1) {
1789
+ fromId = event.target.id;
1790
+ toId = event.target.id.replace("-from-", "-to-");
1791
+
1792
+ min = document.getElementById(fromId).value;
1793
+ max = document.getElementById(toId).value;
1794
+ } else {
1795
+ toId = event.target.id;
1796
+ fromId = event.target.id.replace("-to-", "-from-");
1797
+
1798
+ max = document.getElementById(toId).value;
1799
+ min = document.getElementById(fromId).value;
1800
+ }
1801
+
1802
+ min = (min !== "") ? (+min) : min;
1803
+ max = (max !== "") ? (+max) : max;
1804
+
1805
+ if ((!isNaN(max) && !isNaN(min) && (max >= min)) || min === "" || max === "") {
1806
+
1807
+ if (oTable.fnSettings().oFeatures.bServerSide !== true) {
1808
+ oTable.fnDraw();
1809
+ } else {
1810
+ oTable.fnFilter(min + '-yadcf_delim-' + max, column_number);
1811
+ }
1812
+ if (document.getElementById(fromId).value !== "") {
1813
+ $("#" + fromId).addClass("inuse");
1814
+ }
1815
+ if (document.getElementById(toId).value !== "") {
1816
+ $("#" + toId).addClass("inuse");
1817
+ }
1818
+
1819
+ if ($.trim(event.target.value) === "" && $(event.target).hasClass("inuse")) {
1820
+ $("#" + event.target.id).removeClass("inuse");
1821
+ }
1822
+ if (!oTable.fnSettings().oLoadedState) {
1823
+ oTable.fnSettings().oLoadedState = {};
1824
+ oTable.fnSettings().oApi._fnSaveState(oTable.fnSettings());
1825
+ }
1826
+ if (oTable.fnSettings().oFeatures.bStateSave === true) {
1827
+ if (oTable.fnSettings().oLoadedState.yadcfState !== undefined && oTable.fnSettings().oLoadedState.yadcfState[table_selector_jq_friendly] !== undefined) {
1828
+ oTable.fnSettings().oLoadedState.yadcfState[table_selector_jq_friendly][column_number] =
1829
+ {
1830
+ 'from' : min,
1831
+ 'to' : max
1832
+ };
1833
+ } else {
1834
+ yadcfState = {};
1835
+ yadcfState[table_selector_jq_friendly] = [];
1836
+ yadcfState[table_selector_jq_friendly][column_number] = {
1837
+ 'from' : min,
1838
+ 'to' : max
1839
+ };
1840
+ oTable.fnSettings().oLoadedState.yadcfState = yadcfState;
1841
+ }
1842
+ oTable.fnSettings().oApi._fnSaveState(oTable.fnSettings());
1843
+ }
1844
+ }
1845
+ resetIApiIndex();
1846
+ };
1847
+
1848
+ if (options.filter_delay === undefined) {
1849
+ keyUp();
1850
+ } else {
1851
+ yadcfDelay(function () {
1852
+ keyUp();
1853
+ }, options.filter_delay);
1854
+ }
1855
+ }
1856
+
1857
+ function textKeyUP(table_selector_jq_friendly, event, clear) {
1858
+
1859
+ var column_number = parseInt($(event.target).attr("id").replace("yadcf-filter-" + table_selector_jq_friendly + "-", "").replace('-reset', ''), 10),
1860
+ oTable = oTables[table_selector_jq_friendly],
1861
+ options = getOptions(oTable.selector)[column_number],
1862
+
1863
+ keyUp = function (table_selector_jq_friendly, event, clear) {
1864
+ $.fn.dataTableExt.iApiIndex = oTablesIndex[table_selector_jq_friendly];
1865
+
1866
+ if (clear !== undefined || event.target.value === '') {
1867
+ $("#yadcf-filter-" + table_selector_jq_friendly + "-" + column_number).val("").focus();
1868
+ $("#yadcf-filter-" + table_selector_jq_friendly + "-" + column_number).removeClass("inuse");
1869
+ oTable.fnFilter("", column_number);
1870
+ resetIApiIndex();
1871
+ return;
1872
+ }
1873
+
1874
+ $("#yadcf-filter-" + table_selector_jq_friendly + "-" + column_number).addClass("inuse");
1875
+
1876
+ yadcfMatchFilter(oTable, event.target.value, options.filter_match_mode, column_number);
1877
+
1878
+ resetIApiIndex();
1879
+ };
1880
+
1881
+ if (options.filter_delay === undefined) {
1882
+ keyUp(table_selector_jq_friendly, event, clear);
1883
+ } else {
1884
+ yadcfDelay(function () {
1885
+ keyUp(table_selector_jq_friendly, event, clear);
1886
+ }, options.filter_delay);
1887
+ }
1888
+ }
1889
+
1890
+ function autocompleteKeyUP(table_selector_jq_friendly, event) {
1891
+ if (event.target.value === "" && event.keyCode === 8 && $(event.target).hasClass("inuse")) {
1892
+ $.fn.dataTableExt.iApiIndex = oTablesIndex[table_selector_jq_friendly];
1893
+ var oTable = oTables[table_selector_jq_friendly],
1894
+ column_number = parseInt($(event.target).attr("id").replace("yadcf-filter-" + table_selector_jq_friendly + "-", ""), 10);
1895
+
1896
+ $("#yadcf-filter-" + table_selector_jq_friendly + "-" + column_number).removeClass("inuse");
1897
+ $(document).removeData("#yadcf-filter-" + table_selector_jq_friendly + "-" + column_number + "_val");
1898
+ oTable.fnFilter("", column_number);
1899
+ resetIApiIndex();
1900
+ }
1901
+ }
1902
+
1903
+ //taken and modified from DataTables 1.10.0-beta.2 source
1904
+ function yadcfVersionCheck(version) {
1905
+ var aThis = $.fn.dataTable.ext.sVersion.split('.'),
1906
+ aThat = version.split('.'),
1907
+ iThis,
1908
+ iThat,
1909
+ i,
1910
+ iLen;
1911
+
1912
+ for (i = 0, iLen = aThat.length; i < iLen; i++) {
1913
+ iThis = parseInt(aThis[i], 10) || 0;
1914
+ iThat = parseInt(aThat[i], 10) || 0;
1915
+
1916
+ // Parts are the same, keep comparing
1917
+ if (iThis === iThat) {
1918
+ continue;
1919
+ }
1920
+
1921
+ // Parts are different, return immediately
1922
+ return iThis > iThat;
1923
+ }
1924
+
1925
+ return true;
1926
+ }
1927
+
1928
+ function initAndBindTable(oTable, table_selector, index) {
1929
+
1930
+ var table_selector_jq_friendly = yadcf.generateTableSelectorJQFriendly(table_selector),
1931
+ table_selector_tmp;
1932
+ oTables[table_selector_jq_friendly] = oTable;
1933
+ oTablesIndex[table_selector_jq_friendly] = index;
1934
+
1935
+ if (oTable.fnSettings().sAjaxSource === null && oTable.fnSettings().ajax === null) {
1936
+ table_selector_tmp = table_selector;
1937
+ if (table_selector.indexOf(":eq") !== -1) {
1938
+ table_selector_tmp = table_selector.substring(0, table_selector.lastIndexOf(":eq"));
1939
+ }
1940
+ appendFilters(oTable, yadcf.getOptions(table_selector_tmp), table_selector);
1941
+ } else {
1942
+ appendFilters(oTable, yadcf.getOptions(table_selector), table_selector);
1943
+ if (yadcfVersionCheck('1.10')) {
1944
+ $(document).off('draw.dt').on('draw.dt', oTable.selector, function (event, ui) {
1945
+ appendFilters(oTable, yadcf.getOptions(ui.oInstance.selector), ui.oInstance.selector);
1946
+ });
1947
+ $(document).off('xhr.dt').on('xhr.dt', function (e, settings, json) {
1948
+ var col_num;
1949
+ for (col_num in yadcf.getOptions(settings.oInstance.selector)) {
1950
+ if (yadcf.getOptions(settings.oInstance.selector).hasOwnProperty(col_num)) {
1951
+ if (json['yadcf_data_' + col_num] !== undefined) {
1952
+ yadcf.getOptions(settings.oInstance.selector)[col_num].data = json['yadcf_data_' + col_num];
1953
+ }
1954
+ }
1955
+ }
1956
+ });
1957
+ $(document).off('column-visibility.dt').on('column-visibility.dt', function (e, settings, col_num, state) {
1958
+ var obj = {};
1959
+ if (state === true) {
1960
+ obj[col_num] = yadcf.getOptions(settings.oInstance.selector)[col_num];
1961
+ appendFilters(oTables[yadcf.generateTableSelectorJQFriendly(settings.oInstance.selector)],
1962
+ obj,
1963
+ settings.oInstance.selector);
1964
+ }
1965
+ });
1966
+ } else {
1967
+ $(document).off('draw').on('draw', oTable.selector, function (event, ui) {
1968
+ appendFilters(oTable, yadcf.getOptions(ui.oInstance.selector), ui.oInstance.selector);
1969
+ });
1970
+ }
1971
+ }
1972
+ if (oTable.fnSettings().oFeatures.bStateSave === true) {
1973
+ if (yadcfVersionCheck('1.10')) {
1974
+ $(oTable.selector).off('stateSaveParams.dt').on('stateSaveParams.dt', function (e, settings, data) {
1975
+ if (settings.oLoadedState && settings.oLoadedState.yadcfState !== undefined) {
1976
+ data.yadcfState = settings.oLoadedState.yadcfState;
1977
+ } else {
1978
+ data.naruto = 'kurama';
1979
+ }
1980
+ });
1981
+ } else {
1982
+ $(oTable.selector).off('stateSaveParams').on('stateSaveParams', function (e, settings, data) {
1983
+ if (settings.oLoadedState && settings.oLoadedState.yadcfState !== undefined) {
1984
+ data.yadcfState = settings.oLoadedState.yadcfState;
1985
+ } else {
1986
+ data.naruto = 'kurama';
1987
+ }
1988
+ });
1989
+ }
1990
+ //when using DOM source
1991
+ if (oTable.fnSettings().sAjaxSource === null && oTable.fnSettings().ajax === null) {
1992
+ //we need to make sure that the yadcf state will be saved after page reload
1993
+ oTable.fnSettings().oApi._fnSaveState(oTable.fnSettings());
1994
+ //redraw the table in order to apply the filters
1995
+ oTable.fnDraw();
1996
+ }
1997
+ }
1998
+ }
1999
+
2000
+ $.fn.yadcf = function (options_arg) {
2001
+
2002
+ if ($(this.selector).length === 1) {
2003
+ setOptions(this.selector, options_arg);
2004
+ initAndBindTable(this, this.selector, 0);
2005
+ } else {
2006
+ var i = 0,
2007
+ selector;
2008
+ for (i; i < $(this.selector).length; i++) {
2009
+ $.fn.dataTableExt.iApiIndex = i;
2010
+ selector = this.selector + ":eq(" + i + ")";
2011
+ setOptions(this.selector, options_arg);
2012
+ initAndBindTable(this, selector, i);
2013
+ }
2014
+ $.fn.dataTableExt.iApiIndex = 0;
2015
+ }
2016
+ return this;
2017
+ };
2018
+
2019
+ function init(oTable, options_arg) {
2020
+ var instance = oTable.settings()[0].oInstance,
2021
+ i = 0,
2022
+ selector;
2023
+ if ($(instance.selector).length === 1) {
2024
+ setOptions(instance.selector, options_arg);
2025
+ initAndBindTable(instance, instance.selector, 0);
2026
+ } else {
2027
+ for (i; i < $(instance.selector).length; i++) {
2028
+ $.fn.dataTableExt.iApiIndex = i;
2029
+ selector = instance.selector + ":eq(" + i + ")";
2030
+ setOptions(instance.selector, options_arg);
2031
+ initAndBindTable(instance, selector, i);
2032
+ }
2033
+ $.fn.dataTableExt.iApiIndex = 0;
2034
+ }
2035
+ }
2036
+
2037
+ function stopPropagation(evt) {
2038
+ if (evt.stopPropagation !== undefined) {
2039
+ evt.stopPropagation();
2040
+ } else {
2041
+ evt.cancelBubble = true;
2042
+ }
2043
+ }
2044
+
2045
+ //--------------------------------------------------------
2046
+ function exInternalFilterColumnAJAXQueue(table_arg, col_filter_arr) {
2047
+ return function () {
2048
+ exFilterColumn(table_arg, col_filter_arr, true);
2049
+ };
2050
+ }
2051
+
2052
+ function exFilterColumn(table_arg, col_filter_arr, ajaxSource) {
2053
+ var table_selector_jq_friendly,
2054
+ j,
2055
+ tmpStr,
2056
+ column_number,
2057
+ filter_value,
2058
+ fromId,
2059
+ toId,
2060
+ sliderId,
2061
+ optionsObj;
2062
+ //check if the table arg is from new datatables API (capital "D")
2063
+ if (table_arg.settings !== undefined) {
2064
+ table_arg = table_arg.settings()[0].oInstance;
2065
+ }
2066
+ table_selector_jq_friendly = yadcf.generateTableSelectorJQFriendly(table_arg.selector);
2067
+ if ((table_arg.fnSettings().sAjaxSource === null && table_arg.fnSettings().ajax === null) || ajaxSource === true) {
2068
+ for (j = 0; j < col_filter_arr.length; j++) {
2069
+ column_number = col_filter_arr[j][0];
2070
+ optionsObj = getOptions(table_arg.selector)[column_number];
2071
+ filter_value = col_filter_arr[j][1];
2072
+
2073
+ switch (optionsObj.filter_type) {
2074
+ case 'select':
2075
+ case 'auto_complete':
2076
+ case 'text':
2077
+ case 'date':
2078
+ $('#yadcf-filter-' + table_selector_jq_friendly + '-' + column_number).val(filter_value).addClass('inuse');
2079
+ tmpStr = yadcfMatchFilterString(table_arg, column_number, filter_value, optionsObj.filter_match_mode, false);
2080
+ table_arg.fnSettings().aoPreSearchCols[column_number].sSearch = tmpStr;
2081
+ break;
2082
+ case 'multi_select':
2083
+ $('#yadcf-filter-' + table_selector_jq_friendly + '-' + column_number).val(filter_value);
2084
+ tmpStr = yadcfMatchFilterString(table_arg, column_number, filter_value, optionsObj.filter_match_mode, true);
2085
+ table_arg.fnSettings().aoPreSearchCols[column_number].sSearch = tmpStr;
2086
+ if (optionsObj.select_type !== undefined) {
2087
+ if (optionsObj.select_type === 'chosen') {
2088
+ $('#yadcf-filter-' + table_selector_jq_friendly + '-' + column_number).trigger('chosen:updated');
2089
+ } else if (optionsObj.select_type === 'select2') {
2090
+ $("#yadcf-filter-" + table_selector_jq_friendly + "-" + column_number).select2("destroy").select2(optionsObj.select_type_options);
2091
+ }
2092
+ }
2093
+ break;
2094
+ case 'range_date':
2095
+ fromId = 'yadcf-filter-' + table_selector_jq_friendly + '-from-date-' + column_number;
2096
+ toId = 'yadcf-filter-' + table_selector_jq_friendly + '-to-date-' + column_number;
2097
+ if (filter_value.from !== '') {
2098
+ $('#' + fromId).val(filter_value.from);
2099
+ $('#' + fromId).addClass('inuse');
2100
+ }
2101
+ if (filter_value.to !== '') {
2102
+ $('#' + toId).val(filter_value.to);
2103
+ $('#' + toId).addClass('inuse');
2104
+ }
2105
+ break;
2106
+ case 'range_number':
2107
+ fromId = 'yadcf-filter-' + table_selector_jq_friendly + '-from-' + column_number;
2108
+ toId = 'yadcf-filter-' + table_selector_jq_friendly + '-to-' + column_number;
2109
+ if (filter_value.from !== '') {
2110
+ $('#' + fromId).val(filter_value.from);
2111
+ $('#' + fromId).addClass('inuse');
2112
+ }
2113
+ if (filter_value.to !== '') {
2114
+ $('#' + toId).val(filter_value.to);
2115
+ $('#' + toId).addClass('inuse');
2116
+ }
2117
+ break;
2118
+ case 'range_number_slider':
2119
+ sliderId = 'yadcf-filter-' + table_selector_jq_friendly + '-slider-' + column_number;
2120
+ fromId = 'yadcf-filter-' + table_selector_jq_friendly + '-min_tip-' + column_number;
2121
+ toId = 'yadcf-filter-' + table_selector_jq_friendly + '-max_tip-' + column_number;
2122
+ if (filter_value.from !== '') {
2123
+ $('#' + fromId).text(filter_value.from);
2124
+ $('#' + fromId).parent().addClass('inuse');
2125
+ $('#' + fromId).parent().parent().find('ui-slider-range').addClass('inuse');
2126
+ $('#' + sliderId).slider('values', 0, filter_value.from);
2127
+ }
2128
+ if (filter_value.to !== '') {
2129
+ $('#' + toId).text(filter_value.to);
2130
+ $('#' + toId).parent().addClass('inuse');
2131
+ $('#' + toId).parent().parent().find('.ui-slider-range').addClass('inuse');
2132
+ $('#' + sliderId).slider('values', 1, filter_value.to);
2133
+ }
2134
+ break;
2135
+ }
2136
+
2137
+ }
2138
+ if (table_arg.fnSettings().oFeatures.bServerSide !== true) {
2139
+ table_arg.fnDraw();
2140
+ } else {
2141
+ switch (optionsObj.filter_type) {
2142
+ case 'select':
2143
+ case 'auto_complete':
2144
+ case 'text':
2145
+ case 'date':
2146
+ setTimeout(function () {
2147
+ table_arg.fnFilter(filter_value, column_number);
2148
+ }, 10);
2149
+ break;
2150
+ default:
2151
+ console.log('exFilterColumn is not supported for ' + optionsObj.filter_type);
2152
+ break;
2153
+ }
2154
+ }
2155
+ } else {
2156
+ exFilterColumnQueue.push(exInternalFilterColumnAJAXQueue(table_arg, col_filter_arr));
2157
+ }
2158
+ }
2159
+
2160
+ function exGetColumnFilterVal(table_arg, column_number) {
2161
+ var retVal,
2162
+ fromId,
2163
+ toId,
2164
+ table_selector_jq_friendly,
2165
+ optionsObj = getOptions(table_arg.selector)[column_number];
2166
+
2167
+ table_selector_jq_friendly = yadcf.generateTableSelectorJQFriendly(table_arg.selector);
2168
+
2169
+ switch (optionsObj.filter_type) {
2170
+ case 'select':
2171
+ retVal = $('#yadcf-filter-' + table_selector_jq_friendly + '-' + column_number).val();
2172
+ if (retVal === '-1') {
2173
+ retVal = '';
2174
+ }
2175
+ break;
2176
+ case 'auto_complete':
2177
+ case 'text':
2178
+ case 'date':
2179
+ retVal = $('#yadcf-filter-' + table_selector_jq_friendly + '-' + column_number).val();
2180
+ break;
2181
+ case 'multi_select':
2182
+ retVal = $('#yadcf-filter-' + table_selector_jq_friendly + '-' + column_number).val();
2183
+ if (retVal === null) {
2184
+ retVal = '';
2185
+ }
2186
+ break;
2187
+ case 'range_date':
2188
+ retVal = {};
2189
+ fromId = 'yadcf-filter-' + table_selector_jq_friendly + '-from-date-' + column_number;
2190
+ toId = 'yadcf-filter-' + table_selector_jq_friendly + '-to-date-' + column_number;
2191
+
2192
+ retVal.from = $('#' + fromId).val();
2193
+ retVal.to = $('#' + toId).val();
2194
+ break;
2195
+ case 'range_number':
2196
+ retVal = {};
2197
+ fromId = 'yadcf-filter-' + table_selector_jq_friendly + '-from-' + column_number;
2198
+ toId = 'yadcf-filter-' + table_selector_jq_friendly + '-to-' + column_number;
2199
+
2200
+ retVal.from = $('#' + fromId).val();
2201
+ retVal.to = $('#' + toId).val();
2202
+ break;
2203
+ case 'range_number_slider':
2204
+ retVal = {};
2205
+ fromId = 'yadcf-filter-' + table_selector_jq_friendly + '-min_tip-' + column_number;
2206
+ toId = 'yadcf-filter-' + table_selector_jq_friendly + '-max_tip-' + column_number;
2207
+
2208
+ retVal.from = $('#' + fromId).text();
2209
+ retVal.to = $('#' + toId).text();
2210
+ break;
2211
+ }
2212
+ return retVal;
2213
+ }
2214
+ return {
2215
+ init : init,
2216
+ doFilter : doFilter,
2217
+ doFilterMultiSelect : doFilterMultiSelect,
2218
+ doFilterAutocomplete : doFilterAutocomplete,
2219
+ autocompleteKeyUP : autocompleteKeyUP,
2220
+ getOptions : getOptions,
2221
+ rangeNumberKeyUP : rangeNumberKeyUP,
2222
+ rangeDateKeyUP : rangeDateKeyUP,
2223
+ rangeClear : rangeClear,
2224
+ rangeNumberSliderClear : rangeNumberSliderClear,
2225
+ stopPropagation : stopPropagation,
2226
+ generateTableSelectorJQFriendly : generateTableSelectorJQFriendly,
2227
+ exFilterColumn : exFilterColumn,
2228
+ exGetColumnFilterVal : exGetColumnFilterVal,
2229
+ dateKeyUP : dateKeyUP,
2230
+ dateSelectSingle : dateSelectSingle,
2231
+ textKeyUP : textKeyUP,
2232
+ doFilterCustomDateFunc : doFilterCustomDateFunc
2233
+ };
2234
+
2235
+ }(jQuery));