my_admin 0.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (822) hide show
  1. checksums.yaml +15 -0
  2. data/.gitignore +4 -0
  3. data/Gemfile +12 -0
  4. data/MIT-LICENSE +20 -0
  5. data/README.md +407 -0
  6. data/Rakefile +35 -0
  7. data/app/assets/fonts/my_admin/FontAwesome.otf +0 -0
  8. data/app/assets/fonts/my_admin/fontawesome-webfont.eot +0 -0
  9. data/app/assets/fonts/my_admin/fontawesome-webfont.svg +284 -0
  10. data/app/assets/fonts/my_admin/fontawesome-webfont.ttf +0 -0
  11. data/app/assets/fonts/my_admin/fontawesome-webfont.woff +0 -0
  12. data/app/assets/fonts/my_admin/glyphicons-regular.eot +0 -0
  13. data/app/assets/fonts/my_admin/glyphicons-regular.otf +0 -0
  14. data/app/assets/fonts/my_admin/glyphicons-regular.svg +435 -0
  15. data/app/assets/fonts/my_admin/glyphicons-regular.ttf +0 -0
  16. data/app/assets/fonts/my_admin/glyphicons-regular.woff +0 -0
  17. data/app/assets/images/my_admin/apple-touch-icon-precomposed.png +0 -0
  18. data/app/assets/images/my_admin/email-login.jpg +0 -0
  19. data/app/assets/images/my_admin/email-logo.jpg +0 -0
  20. data/app/assets/images/my_admin/favicon.ico +0 -0
  21. data/app/assets/images/my_admin/glyphicons-halflings-white.png +0 -0
  22. data/app/assets/images/my_admin/glyphicons-halflings.png +0 -0
  23. data/app/assets/images/my_admin/loading.gif +0 -0
  24. data/app/assets/images/my_admin/logo-big.png +0 -0
  25. data/app/assets/images/my_admin/logo-big@2x.png +0 -0
  26. data/app/assets/images/my_admin/logo.png +0 -0
  27. data/app/assets/images/my_admin/logo@2x.png +0 -0
  28. data/app/assets/images/my_admin/navigation-bg-small.png +0 -0
  29. data/app/assets/images/my_admin/navigation-bg.png +0 -0
  30. data/app/assets/images/my_admin/no_image.gif +0 -0
  31. data/app/assets/images/my_admin/plugins/chosen/chosen-sprite.png +0 -0
  32. data/app/assets/images/my_admin/plugins/colorbox/controls.png +0 -0
  33. data/app/assets/images/my_admin/plugins/colorbox/loading.gif +0 -0
  34. data/app/assets/images/my_admin/plugins/colorpicker/alpha.png +0 -0
  35. data/app/assets/images/my_admin/plugins/colorpicker/hue.png +0 -0
  36. data/app/assets/images/my_admin/plugins/colorpicker/saturation.png +0 -0
  37. data/app/assets/images/my_admin/plugins/elfinder/arrows-active.png +0 -0
  38. data/app/assets/images/my_admin/plugins/elfinder/arrows-normal.png +0 -0
  39. data/app/assets/images/my_admin/plugins/elfinder/crop.gif +0 -0
  40. data/app/assets/images/my_admin/plugins/elfinder/dialogs.png +0 -0
  41. data/app/assets/images/my_admin/plugins/elfinder/icons-big.png +0 -0
  42. data/app/assets/images/my_admin/plugins/elfinder/icons-small.png +0 -0
  43. data/app/assets/images/my_admin/plugins/elfinder/logo.png +0 -0
  44. data/app/assets/images/my_admin/plugins/elfinder/progress.gif +0 -0
  45. data/app/assets/images/my_admin/plugins/elfinder/quicklook-bg.png +0 -0
  46. data/app/assets/images/my_admin/plugins/elfinder/quicklook-icons.png +0 -0
  47. data/app/assets/images/my_admin/plugins/elfinder/resize.png +0 -0
  48. data/app/assets/images/my_admin/plugins/elfinder/spinner-mini.gif +0 -0
  49. data/app/assets/images/my_admin/plugins/elfinder/toolbar.png +0 -0
  50. data/app/assets/images/my_admin/plugins/gmap/here.png +0 -0
  51. data/app/assets/images/my_admin/plugins/gmap/icon_greenA.png +0 -0
  52. data/app/assets/images/my_admin/plugins/gmap/icon_greenB.png +0 -0
  53. data/app/assets/images/my_admin/plugins/gmap/zoomin.png +0 -0
  54. data/app/assets/images/my_admin/plugins/gmap/zoomout.png +0 -0
  55. data/app/assets/images/my_admin/plugins/gritter/gritter-light.png +0 -0
  56. data/app/assets/images/my_admin/plugins/gritter/gritter-long.png +0 -0
  57. data/app/assets/images/my_admin/plugins/gritter/gritter.png +0 -0
  58. data/app/assets/images/my_admin/plugins/gritter/ie-spacer.gif +0 -0
  59. data/app/assets/images/my_admin/plugins/icheck/flat/aero.png +0 -0
  60. data/app/assets/images/my_admin/plugins/icheck/flat/aero@2x.png +0 -0
  61. data/app/assets/images/my_admin/plugins/icheck/flat/blue.png +0 -0
  62. data/app/assets/images/my_admin/plugins/icheck/flat/blue@2x.png +0 -0
  63. data/app/assets/images/my_admin/plugins/icheck/flat/flat.png +0 -0
  64. data/app/assets/images/my_admin/plugins/icheck/flat/flat@2x.png +0 -0
  65. data/app/assets/images/my_admin/plugins/icheck/flat/green.png +0 -0
  66. data/app/assets/images/my_admin/plugins/icheck/flat/green@2x.png +0 -0
  67. data/app/assets/images/my_admin/plugins/icheck/flat/grey.png +0 -0
  68. data/app/assets/images/my_admin/plugins/icheck/flat/grey@2x.png +0 -0
  69. data/app/assets/images/my_admin/plugins/icheck/flat/orange.png +0 -0
  70. data/app/assets/images/my_admin/plugins/icheck/flat/orange@2x.png +0 -0
  71. data/app/assets/images/my_admin/plugins/icheck/flat/pink.png +0 -0
  72. data/app/assets/images/my_admin/plugins/icheck/flat/pink@2x.png +0 -0
  73. data/app/assets/images/my_admin/plugins/icheck/flat/purple.png +0 -0
  74. data/app/assets/images/my_admin/plugins/icheck/flat/purple@2x.png +0 -0
  75. data/app/assets/images/my_admin/plugins/icheck/flat/red.png +0 -0
  76. data/app/assets/images/my_admin/plugins/icheck/flat/red@2x.png +0 -0
  77. data/app/assets/images/my_admin/plugins/icheck/flat/yellow.png +0 -0
  78. data/app/assets/images/my_admin/plugins/icheck/flat/yellow@2x.png +0 -0
  79. data/app/assets/images/my_admin/plugins/icheck/futurico/futurico.png +0 -0
  80. data/app/assets/images/my_admin/plugins/icheck/futurico/futurico@2x.png +0 -0
  81. data/app/assets/images/my_admin/plugins/icheck/line/line.png +0 -0
  82. data/app/assets/images/my_admin/plugins/icheck/line/line@2x.png +0 -0
  83. data/app/assets/images/my_admin/plugins/icheck/minimal/aero.png +0 -0
  84. data/app/assets/images/my_admin/plugins/icheck/minimal/aero@2x.png +0 -0
  85. data/app/assets/images/my_admin/plugins/icheck/minimal/blue.png +0 -0
  86. data/app/assets/images/my_admin/plugins/icheck/minimal/blue@2x.png +0 -0
  87. data/app/assets/images/my_admin/plugins/icheck/minimal/green.png +0 -0
  88. data/app/assets/images/my_admin/plugins/icheck/minimal/green@2x.png +0 -0
  89. data/app/assets/images/my_admin/plugins/icheck/minimal/grey.png +0 -0
  90. data/app/assets/images/my_admin/plugins/icheck/minimal/grey@2x.png +0 -0
  91. data/app/assets/images/my_admin/plugins/icheck/minimal/minimal.png +0 -0
  92. data/app/assets/images/my_admin/plugins/icheck/minimal/minimal@2x.png +0 -0
  93. data/app/assets/images/my_admin/plugins/icheck/minimal/orange.png +0 -0
  94. data/app/assets/images/my_admin/plugins/icheck/minimal/orange@2x.png +0 -0
  95. data/app/assets/images/my_admin/plugins/icheck/minimal/pink.png +0 -0
  96. data/app/assets/images/my_admin/plugins/icheck/minimal/pink@2x.png +0 -0
  97. data/app/assets/images/my_admin/plugins/icheck/minimal/purple.png +0 -0
  98. data/app/assets/images/my_admin/plugins/icheck/minimal/purple@2x.png +0 -0
  99. data/app/assets/images/my_admin/plugins/icheck/minimal/red.png +0 -0
  100. data/app/assets/images/my_admin/plugins/icheck/minimal/red@2x.png +0 -0
  101. data/app/assets/images/my_admin/plugins/icheck/minimal/yellow.png +0 -0
  102. data/app/assets/images/my_admin/plugins/icheck/minimal/yellow@2x.png +0 -0
  103. data/app/assets/images/my_admin/plugins/icheck/polaris/polaris.png +0 -0
  104. data/app/assets/images/my_admin/plugins/icheck/polaris/polaris@2x.png +0 -0
  105. data/app/assets/images/my_admin/plugins/icheck/square/aero.png +0 -0
  106. data/app/assets/images/my_admin/plugins/icheck/square/aero@2x.png +0 -0
  107. data/app/assets/images/my_admin/plugins/icheck/square/blue.png +0 -0
  108. data/app/assets/images/my_admin/plugins/icheck/square/blue@2x.png +0 -0
  109. data/app/assets/images/my_admin/plugins/icheck/square/green.png +0 -0
  110. data/app/assets/images/my_admin/plugins/icheck/square/green@2x.png +0 -0
  111. data/app/assets/images/my_admin/plugins/icheck/square/grey.png +0 -0
  112. data/app/assets/images/my_admin/plugins/icheck/square/grey@2x.png +0 -0
  113. data/app/assets/images/my_admin/plugins/icheck/square/orange.png +0 -0
  114. data/app/assets/images/my_admin/plugins/icheck/square/orange@2x.png +0 -0
  115. data/app/assets/images/my_admin/plugins/icheck/square/pink.png +0 -0
  116. data/app/assets/images/my_admin/plugins/icheck/square/pink@2x.png +0 -0
  117. data/app/assets/images/my_admin/plugins/icheck/square/purple.png +0 -0
  118. data/app/assets/images/my_admin/plugins/icheck/square/purple@2x.png +0 -0
  119. data/app/assets/images/my_admin/plugins/icheck/square/red.png +0 -0
  120. data/app/assets/images/my_admin/plugins/icheck/square/red@2x.png +0 -0
  121. data/app/assets/images/my_admin/plugins/icheck/square/square.png +0 -0
  122. data/app/assets/images/my_admin/plugins/icheck/square/square@2x.png +0 -0
  123. data/app/assets/images/my_admin/plugins/icheck/square/yellow.png +0 -0
  124. data/app/assets/images/my_admin/plugins/icheck/square/yellow@2x.png +0 -0
  125. data/app/assets/images/my_admin/plugins/multiselect/switch.png +0 -0
  126. data/app/assets/images/my_admin/plugins/pageguide/pageguide_arrow.png +0 -0
  127. data/app/assets/images/my_admin/plugins/plupload/backgrounds.gif +0 -0
  128. data/app/assets/images/my_admin/plugins/plupload/buttons-disabled.png +0 -0
  129. data/app/assets/images/my_admin/plugins/plupload/buttons.png +0 -0
  130. data/app/assets/images/my_admin/plugins/plupload/delete.gif +0 -0
  131. data/app/assets/images/my_admin/plugins/plupload/done.gif +0 -0
  132. data/app/assets/images/my_admin/plugins/plupload/error.gif +0 -0
  133. data/app/assets/images/my_admin/plugins/plupload/throbber.gif +0 -0
  134. data/app/assets/images/my_admin/plugins/plupload/transp50.png +0 -0
  135. data/app/assets/images/my_admin/plugins/select2/select2-spinner.gif +0 -0
  136. data/app/assets/images/my_admin/plugins/select2/select2.png +0 -0
  137. data/app/assets/images/my_admin/plugins/select2/select2x2.png +0 -0
  138. data/app/assets/images/my_admin/plugins/xeditable/clear.png +0 -0
  139. data/app/assets/images/my_admin/plugins/xeditable/loading.gif +0 -0
  140. data/app/assets/images/my_admin/sorting-asc.png +0 -0
  141. data/app/assets/images/my_admin/sorting-desc.png +0 -0
  142. data/app/assets/images/my_admin/sorting.png +0 -0
  143. data/app/assets/images/my_admin/users/missing_mini.png +0 -0
  144. data/app/assets/images/my_admin/users/missing_my_admin.png +0 -0
  145. data/app/assets/javascripts/my_admin/application.js +62 -0
  146. data/app/assets/javascripts/my_admin/application_locked.js +20 -0
  147. data/app/assets/javascripts/my_admin/application_off.js +22 -0
  148. data/app/assets/javascripts/my_admin/bootstrap.js +2268 -0
  149. data/app/assets/javascripts/my_admin/demonstration.js +1101 -0
  150. data/app/assets/javascripts/my_admin/eakroko.js +538 -0
  151. data/app/assets/javascripts/my_admin/extensions.js +20 -0
  152. data/app/assets/javascripts/my_admin/jquery.dateFormat.js +355 -0
  153. data/app/assets/javascripts/my_admin/jquery.maskMoney.js +355 -0
  154. data/app/assets/javascripts/my_admin/locale/pt-br/validate.js +24 -0
  155. data/app/assets/javascripts/my_admin/main.js +891 -0
  156. data/app/assets/javascripts/my_admin/my_admin.js +186 -0
  157. data/app/assets/javascripts/my_admin/plugins/bootbox/jquery.bootbox.js +17 -0
  158. data/app/assets/javascripts/my_admin/plugins/chosen/chosen.jquery.min.js +10 -0
  159. data/app/assets/javascripts/my_admin/plugins/chosen/chosen.jquery.min.min.js +9 -0
  160. data/app/assets/javascripts/my_admin/plugins/ckeditor/CHANGES.md +60 -0
  161. data/app/assets/javascripts/my_admin/plugins/ckeditor/LICENSE.md +1264 -0
  162. data/app/assets/javascripts/my_admin/plugins/ckeditor/README.md +39 -0
  163. data/app/assets/javascripts/my_admin/plugins/ckeditor/build-config.js +161 -0
  164. data/app/assets/javascripts/my_admin/plugins/ckeditor/ckeditor.js +874 -0
  165. data/app/assets/javascripts/my_admin/plugins/ckeditor/config.js +11 -0
  166. data/app/assets/javascripts/my_admin/plugins/ckeditor/contents.css +99 -0
  167. data/app/assets/javascripts/my_admin/plugins/ckeditor/lang/af.js +5 -0
  168. data/app/assets/javascripts/my_admin/plugins/ckeditor/lang/ar.js +5 -0
  169. data/app/assets/javascripts/my_admin/plugins/ckeditor/lang/bg.js +5 -0
  170. data/app/assets/javascripts/my_admin/plugins/ckeditor/lang/bn.js +5 -0
  171. data/app/assets/javascripts/my_admin/plugins/ckeditor/lang/bs.js +5 -0
  172. data/app/assets/javascripts/my_admin/plugins/ckeditor/lang/ca.js +5 -0
  173. data/app/assets/javascripts/my_admin/plugins/ckeditor/lang/cs.js +5 -0
  174. data/app/assets/javascripts/my_admin/plugins/ckeditor/lang/cy.js +5 -0
  175. data/app/assets/javascripts/my_admin/plugins/ckeditor/lang/da.js +5 -0
  176. data/app/assets/javascripts/my_admin/plugins/ckeditor/lang/de.js +5 -0
  177. data/app/assets/javascripts/my_admin/plugins/ckeditor/lang/el.js +5 -0
  178. data/app/assets/javascripts/my_admin/plugins/ckeditor/lang/en-au.js +5 -0
  179. data/app/assets/javascripts/my_admin/plugins/ckeditor/lang/en-ca.js +5 -0
  180. data/app/assets/javascripts/my_admin/plugins/ckeditor/lang/en-gb.js +5 -0
  181. data/app/assets/javascripts/my_admin/plugins/ckeditor/lang/en.js +5 -0
  182. data/app/assets/javascripts/my_admin/plugins/ckeditor/lang/eo.js +5 -0
  183. data/app/assets/javascripts/my_admin/plugins/ckeditor/lang/es.js +5 -0
  184. data/app/assets/javascripts/my_admin/plugins/ckeditor/lang/et.js +5 -0
  185. data/app/assets/javascripts/my_admin/plugins/ckeditor/lang/eu.js +5 -0
  186. data/app/assets/javascripts/my_admin/plugins/ckeditor/lang/fa.js +5 -0
  187. data/app/assets/javascripts/my_admin/plugins/ckeditor/lang/fi.js +5 -0
  188. data/app/assets/javascripts/my_admin/plugins/ckeditor/lang/fo.js +5 -0
  189. data/app/assets/javascripts/my_admin/plugins/ckeditor/lang/fr-ca.js +5 -0
  190. data/app/assets/javascripts/my_admin/plugins/ckeditor/lang/fr.js +5 -0
  191. data/app/assets/javascripts/my_admin/plugins/ckeditor/lang/gl.js +5 -0
  192. data/app/assets/javascripts/my_admin/plugins/ckeditor/lang/gu.js +5 -0
  193. data/app/assets/javascripts/my_admin/plugins/ckeditor/lang/he.js +5 -0
  194. data/app/assets/javascripts/my_admin/plugins/ckeditor/lang/hi.js +5 -0
  195. data/app/assets/javascripts/my_admin/plugins/ckeditor/lang/hr.js +5 -0
  196. data/app/assets/javascripts/my_admin/plugins/ckeditor/lang/hu.js +5 -0
  197. data/app/assets/javascripts/my_admin/plugins/ckeditor/lang/is.js +5 -0
  198. data/app/assets/javascripts/my_admin/plugins/ckeditor/lang/it.js +5 -0
  199. data/app/assets/javascripts/my_admin/plugins/ckeditor/lang/ja.js +5 -0
  200. data/app/assets/javascripts/my_admin/plugins/ckeditor/lang/ka.js +5 -0
  201. data/app/assets/javascripts/my_admin/plugins/ckeditor/lang/km.js +5 -0
  202. data/app/assets/javascripts/my_admin/plugins/ckeditor/lang/ko.js +5 -0
  203. data/app/assets/javascripts/my_admin/plugins/ckeditor/lang/ku.js +5 -0
  204. data/app/assets/javascripts/my_admin/plugins/ckeditor/lang/lt.js +5 -0
  205. data/app/assets/javascripts/my_admin/plugins/ckeditor/lang/lv.js +5 -0
  206. data/app/assets/javascripts/my_admin/plugins/ckeditor/lang/mk.js +5 -0
  207. data/app/assets/javascripts/my_admin/plugins/ckeditor/lang/mn.js +5 -0
  208. data/app/assets/javascripts/my_admin/plugins/ckeditor/lang/ms.js +5 -0
  209. data/app/assets/javascripts/my_admin/plugins/ckeditor/lang/nb.js +5 -0
  210. data/app/assets/javascripts/my_admin/plugins/ckeditor/lang/nl.js +5 -0
  211. data/app/assets/javascripts/my_admin/plugins/ckeditor/lang/no.js +5 -0
  212. data/app/assets/javascripts/my_admin/plugins/ckeditor/lang/pl.js +5 -0
  213. data/app/assets/javascripts/my_admin/plugins/ckeditor/lang/pt-br.js +5 -0
  214. data/app/assets/javascripts/my_admin/plugins/ckeditor/lang/pt.js +5 -0
  215. data/app/assets/javascripts/my_admin/plugins/ckeditor/lang/ro.js +5 -0
  216. data/app/assets/javascripts/my_admin/plugins/ckeditor/lang/ru.js +5 -0
  217. data/app/assets/javascripts/my_admin/plugins/ckeditor/lang/sk.js +5 -0
  218. data/app/assets/javascripts/my_admin/plugins/ckeditor/lang/sl.js +5 -0
  219. data/app/assets/javascripts/my_admin/plugins/ckeditor/lang/sr-latn.js +5 -0
  220. data/app/assets/javascripts/my_admin/plugins/ckeditor/lang/sr.js +5 -0
  221. data/app/assets/javascripts/my_admin/plugins/ckeditor/lang/sv.js +5 -0
  222. data/app/assets/javascripts/my_admin/plugins/ckeditor/lang/th.js +5 -0
  223. data/app/assets/javascripts/my_admin/plugins/ckeditor/lang/tr.js +5 -0
  224. data/app/assets/javascripts/my_admin/plugins/ckeditor/lang/ug.js +5 -0
  225. data/app/assets/javascripts/my_admin/plugins/ckeditor/lang/uk.js +5 -0
  226. data/app/assets/javascripts/my_admin/plugins/ckeditor/lang/vi.js +5 -0
  227. data/app/assets/javascripts/my_admin/plugins/ckeditor/lang/zh-cn.js +5 -0
  228. data/app/assets/javascripts/my_admin/plugins/ckeditor/lang/zh.js +5 -0
  229. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/a11yhelp/dialogs/a11yhelp.js +10 -0
  230. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/a11yhelp/dialogs/lang/_translationstatus.txt +25 -0
  231. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/a11yhelp/dialogs/lang/ar.js +9 -0
  232. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/a11yhelp/dialogs/lang/bg.js +9 -0
  233. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/a11yhelp/dialogs/lang/ca.js +9 -0
  234. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/a11yhelp/dialogs/lang/cs.js +10 -0
  235. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/a11yhelp/dialogs/lang/cy.js +9 -0
  236. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/a11yhelp/dialogs/lang/da.js +9 -0
  237. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/a11yhelp/dialogs/lang/de.js +10 -0
  238. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/a11yhelp/dialogs/lang/el.js +10 -0
  239. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/a11yhelp/dialogs/lang/en.js +9 -0
  240. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/a11yhelp/dialogs/lang/eo.js +10 -0
  241. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/a11yhelp/dialogs/lang/es.js +10 -0
  242. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/a11yhelp/dialogs/lang/et.js +9 -0
  243. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/a11yhelp/dialogs/lang/fa.js +9 -0
  244. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/a11yhelp/dialogs/lang/fi.js +10 -0
  245. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/a11yhelp/dialogs/lang/fr.js +10 -0
  246. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/a11yhelp/dialogs/lang/gu.js +9 -0
  247. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/a11yhelp/dialogs/lang/he.js +9 -0
  248. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/a11yhelp/dialogs/lang/hi.js +9 -0
  249. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/a11yhelp/dialogs/lang/hr.js +9 -0
  250. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/a11yhelp/dialogs/lang/hu.js +9 -0
  251. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/a11yhelp/dialogs/lang/it.js +10 -0
  252. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/a11yhelp/dialogs/lang/ja.js +9 -0
  253. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/a11yhelp/dialogs/lang/ku.js +10 -0
  254. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/a11yhelp/dialogs/lang/lt.js +9 -0
  255. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/a11yhelp/dialogs/lang/lv.js +10 -0
  256. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/a11yhelp/dialogs/lang/mk.js +9 -0
  257. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/a11yhelp/dialogs/lang/mn.js +9 -0
  258. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/a11yhelp/dialogs/lang/nb.js +9 -0
  259. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/a11yhelp/dialogs/lang/nl.js +10 -0
  260. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/a11yhelp/dialogs/lang/no.js +9 -0
  261. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/a11yhelp/dialogs/lang/pl.js +9 -0
  262. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/a11yhelp/dialogs/lang/pt-br.js +9 -0
  263. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/a11yhelp/dialogs/lang/pt.js +9 -0
  264. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/a11yhelp/dialogs/lang/ro.js +9 -0
  265. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/a11yhelp/dialogs/lang/ru.js +9 -0
  266. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/a11yhelp/dialogs/lang/sk.js +10 -0
  267. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/a11yhelp/dialogs/lang/sl.js +9 -0
  268. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/a11yhelp/dialogs/lang/sv.js +10 -0
  269. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/a11yhelp/dialogs/lang/tr.js +10 -0
  270. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/a11yhelp/dialogs/lang/ug.js +9 -0
  271. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/a11yhelp/dialogs/lang/uk.js +9 -0
  272. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/a11yhelp/dialogs/lang/vi.js +9 -0
  273. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/a11yhelp/dialogs/lang/zh-cn.js +7 -0
  274. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/about/dialogs/about.js +6 -0
  275. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/about/dialogs/logo_ckeditor.png +0 -0
  276. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/clipboard/dialogs/paste.js +11 -0
  277. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/colordialog/dialogs/colordialog.js +13 -0
  278. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/dialog/dialogDefinition.js +4 -0
  279. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/div/dialogs/div.js +9 -0
  280. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/fakeobjects/images/spacer.gif +0 -0
  281. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/find/dialogs/find.js +24 -0
  282. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/flash/dialogs/flash.js +23 -0
  283. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/flash/images/placeholder.png +0 -0
  284. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/forms/dialogs/button.js +8 -0
  285. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/forms/dialogs/checkbox.js +8 -0
  286. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/forms/dialogs/form.js +8 -0
  287. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/forms/dialogs/hiddenfield.js +8 -0
  288. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/forms/dialogs/radio.js +8 -0
  289. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/forms/dialogs/select.js +20 -0
  290. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/forms/dialogs/textarea.js +8 -0
  291. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/forms/dialogs/textfield.js +10 -0
  292. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/forms/images/hiddenfield.gif +0 -0
  293. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/icons.png +0 -0
  294. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/iframe/dialogs/iframe.js +10 -0
  295. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/iframe/images/placeholder.png +0 -0
  296. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/image/dialogs/image.js +41 -0
  297. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/image/images/noimage.png +0 -0
  298. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/link/dialogs/anchor.js +8 -0
  299. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/link/dialogs/link.js +36 -0
  300. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/link/images/anchor.png +0 -0
  301. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/liststyle/dialogs/liststyle.js +10 -0
  302. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/magicline/images/icon.png +0 -0
  303. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/pagebreak/images/pagebreak.gif +0 -0
  304. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/pastefromword/filter/default.js +31 -0
  305. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/preview/preview.html +10 -0
  306. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/scayt/LICENSE.md +28 -0
  307. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/scayt/README.md +25 -0
  308. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/scayt/dialogs/options.js +19 -0
  309. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/scayt/dialogs/toolbar.css +71 -0
  310. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/showblocks/images/block_address.png +0 -0
  311. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/showblocks/images/block_blockquote.png +0 -0
  312. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/showblocks/images/block_div.png +0 -0
  313. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/showblocks/images/block_h1.png +0 -0
  314. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/showblocks/images/block_h2.png +0 -0
  315. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/showblocks/images/block_h3.png +0 -0
  316. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/showblocks/images/block_h4.png +0 -0
  317. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/showblocks/images/block_h5.png +0 -0
  318. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/showblocks/images/block_h6.png +0 -0
  319. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/showblocks/images/block_p.png +0 -0
  320. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/showblocks/images/block_pre.png +0 -0
  321. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/smiley/dialogs/smiley.js +10 -0
  322. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/smiley/images/angel_smile.gif +0 -0
  323. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/smiley/images/angry_smile.gif +0 -0
  324. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/smiley/images/broken_heart.gif +0 -0
  325. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/smiley/images/confused_smile.gif +0 -0
  326. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/smiley/images/cry_smile.gif +0 -0
  327. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/smiley/images/devil_smile.gif +0 -0
  328. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/smiley/images/embaressed_smile.gif +0 -0
  329. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/smiley/images/embarrassed_smile.gif +0 -0
  330. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/smiley/images/envelope.gif +0 -0
  331. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/smiley/images/heart.gif +0 -0
  332. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/smiley/images/kiss.gif +0 -0
  333. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/smiley/images/lightbulb.gif +0 -0
  334. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/smiley/images/omg_smile.gif +0 -0
  335. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/smiley/images/regular_smile.gif +0 -0
  336. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/smiley/images/sad_smile.gif +0 -0
  337. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/smiley/images/shades_smile.gif +0 -0
  338. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/smiley/images/teeth_smile.gif +0 -0
  339. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/smiley/images/thumbs_down.gif +0 -0
  340. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/smiley/images/thumbs_up.gif +0 -0
  341. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/smiley/images/tongue_smile.gif +0 -0
  342. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/smiley/images/tounge_smile.gif +0 -0
  343. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/smiley/images/whatchutalkingabout_smile.gif +0 -0
  344. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/smiley/images/wink_smile.gif +0 -0
  345. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/specialchar/dialogs/lang/_translationstatus.txt +20 -0
  346. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/specialchar/dialogs/lang/ca.js +13 -0
  347. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/specialchar/dialogs/lang/cs.js +13 -0
  348. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/specialchar/dialogs/lang/cy.js +14 -0
  349. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/specialchar/dialogs/lang/de.js +13 -0
  350. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/specialchar/dialogs/lang/el.js +13 -0
  351. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/specialchar/dialogs/lang/en.js +13 -0
  352. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/specialchar/dialogs/lang/eo.js +12 -0
  353. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/specialchar/dialogs/lang/et.js +13 -0
  354. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/specialchar/dialogs/lang/fa.js +13 -0
  355. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/specialchar/dialogs/lang/fi.js +13 -0
  356. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/specialchar/dialogs/lang/fr.js +11 -0
  357. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/specialchar/dialogs/lang/he.js +13 -0
  358. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/specialchar/dialogs/lang/hr.js +13 -0
  359. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/specialchar/dialogs/lang/it.js +14 -0
  360. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/specialchar/dialogs/lang/ku.js +14 -0
  361. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/specialchar/dialogs/lang/lv.js +13 -0
  362. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/specialchar/dialogs/lang/nb.js +11 -0
  363. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/specialchar/dialogs/lang/nl.js +13 -0
  364. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/specialchar/dialogs/lang/no.js +11 -0
  365. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/specialchar/dialogs/lang/pt-br.js +11 -0
  366. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/specialchar/dialogs/lang/sk.js +13 -0
  367. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/specialchar/dialogs/lang/sv.js +11 -0
  368. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/specialchar/dialogs/lang/tr.js +12 -0
  369. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/specialchar/dialogs/lang/ug.js +13 -0
  370. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/specialchar/dialogs/lang/zh-cn.js +9 -0
  371. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/specialchar/dialogs/specialchar.js +14 -0
  372. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/table/dialogs/table.js +20 -0
  373. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/tabletools/dialogs/tableCell.js +16 -0
  374. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/templates/dialogs/templates.css +84 -0
  375. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/templates/dialogs/templates.js +10 -0
  376. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/templates/templates/default.js +6 -0
  377. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/templates/templates/images/template1.gif +0 -0
  378. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/templates/templates/images/template2.gif +0 -0
  379. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/templates/templates/images/template3.gif +0 -0
  380. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/wsc/LICENSE.md +28 -0
  381. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/wsc/README.md +25 -0
  382. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/wsc/dialogs/ciframe.html +49 -0
  383. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/wsc/dialogs/tmpFrameset.html +52 -0
  384. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/wsc/dialogs/wsc.css +82 -0
  385. data/app/assets/javascripts/my_admin/plugins/ckeditor/plugins/wsc/dialogs/wsc.js +11 -0
  386. data/app/assets/javascripts/my_admin/plugins/ckeditor/skins/moono/dialog.css +5 -0
  387. data/app/assets/javascripts/my_admin/plugins/ckeditor/skins/moono/dialog_ie.css +5 -0
  388. data/app/assets/javascripts/my_admin/plugins/ckeditor/skins/moono/dialog_ie7.css +5 -0
  389. data/app/assets/javascripts/my_admin/plugins/ckeditor/skins/moono/dialog_ie8.css +5 -0
  390. data/app/assets/javascripts/my_admin/plugins/ckeditor/skins/moono/dialog_iequirks.css +5 -0
  391. data/app/assets/javascripts/my_admin/plugins/ckeditor/skins/moono/dialog_opera.css +5 -0
  392. data/app/assets/javascripts/my_admin/plugins/ckeditor/skins/moono/editor.css +5 -0
  393. data/app/assets/javascripts/my_admin/plugins/ckeditor/skins/moono/editor_gecko.css +5 -0
  394. data/app/assets/javascripts/my_admin/plugins/ckeditor/skins/moono/editor_ie.css +5 -0
  395. data/app/assets/javascripts/my_admin/plugins/ckeditor/skins/moono/editor_ie7.css +5 -0
  396. data/app/assets/javascripts/my_admin/plugins/ckeditor/skins/moono/editor_ie8.css +5 -0
  397. data/app/assets/javascripts/my_admin/plugins/ckeditor/skins/moono/editor_iequirks.css +5 -0
  398. data/app/assets/javascripts/my_admin/plugins/ckeditor/skins/moono/icons.png +0 -0
  399. data/app/assets/javascripts/my_admin/plugins/ckeditor/skins/moono/images/arrow.png +0 -0
  400. data/app/assets/javascripts/my_admin/plugins/ckeditor/skins/moono/images/close.png +0 -0
  401. data/app/assets/javascripts/my_admin/plugins/ckeditor/skins/moono/images/mini.png +0 -0
  402. data/app/assets/javascripts/my_admin/plugins/ckeditor/skins/moono/readme.md +51 -0
  403. data/app/assets/javascripts/my_admin/plugins/ckeditor/styles.js +112 -0
  404. data/app/assets/javascripts/my_admin/plugins/colorbox/jquery.colorbox-min.js +6 -0
  405. data/app/assets/javascripts/my_admin/plugins/colorpicker/bootstrap-colorpicker.js +540 -0
  406. data/app/assets/javascripts/my_admin/plugins/complexify/jquery.complexify-banlist.js +3 -0
  407. data/app/assets/javascripts/my_admin/plugins/complexify/jquery.complexify-banlist.min.js +3 -0
  408. data/app/assets/javascripts/my_admin/plugins/complexify/jquery.complexify.js +185 -0
  409. data/app/assets/javascripts/my_admin/plugins/complexify/jquery.complexify.min.js +5 -0
  410. data/app/assets/javascripts/my_admin/plugins/datatable/ColReorder.min.js +33 -0
  411. data/app/assets/javascripts/my_admin/plugins/datatable/ColVis.js +1133 -0
  412. data/app/assets/javascripts/my_admin/plugins/datatable/ColVis.min.js +20 -0
  413. data/app/assets/javascripts/my_admin/plugins/datatable/FixedColumns.min.js +18 -0
  414. data/app/assets/javascripts/my_admin/plugins/datatable/FixedColumns.min.min.js +18 -0
  415. data/app/assets/javascripts/my_admin/plugins/datatable/TableTools.min.js +76 -0
  416. data/app/assets/javascripts/my_admin/plugins/datatable/as3/ZeroClipboard.as +221 -0
  417. data/app/assets/javascripts/my_admin/plugins/datatable/as3/ZeroClipboardPdf.as +310 -0
  418. data/app/assets/javascripts/my_admin/plugins/datatable/as3/lib/AlivePDF.swc +0 -0
  419. data/app/assets/javascripts/my_admin/plugins/datatable/dataTables.scroller.min.js +40 -0
  420. data/app/assets/javascripts/my_admin/plugins/datatable/demo.txt +2503 -0
  421. data/app/assets/javascripts/my_admin/plugins/datatable/jquery.dataTables.columnFilter.js +764 -0
  422. data/app/assets/javascripts/my_admin/plugins/datatable/jquery.dataTables.columnFilter.min.js +22 -0
  423. data/app/assets/javascripts/my_admin/plugins/datatable/jquery.dataTables.min.js +155 -0
  424. data/app/assets/javascripts/my_admin/plugins/datatable/swf/copy_csv_xls.swf +0 -0
  425. data/app/assets/javascripts/my_admin/plugins/datatable/swf/copy_csv_xls_pdf.swf +0 -0
  426. data/app/assets/javascripts/my_admin/plugins/datepicker/bootstrap-datepicker.js +988 -0
  427. data/app/assets/javascripts/my_admin/plugins/datepicker/locales/bootstrap-datepicker.bg.js +14 -0
  428. data/app/assets/javascripts/my_admin/plugins/datepicker/locales/bootstrap-datepicker.ca.js +14 -0
  429. data/app/assets/javascripts/my_admin/plugins/datepicker/locales/bootstrap-datepicker.cs.js +15 -0
  430. data/app/assets/javascripts/my_admin/plugins/datepicker/locales/bootstrap-datepicker.da.js +14 -0
  431. data/app/assets/javascripts/my_admin/plugins/datepicker/locales/bootstrap-datepicker.de.js +16 -0
  432. data/app/assets/javascripts/my_admin/plugins/datepicker/locales/bootstrap-datepicker.el.js +13 -0
  433. data/app/assets/javascripts/my_admin/plugins/datepicker/locales/bootstrap-datepicker.es.js +14 -0
  434. data/app/assets/javascripts/my_admin/plugins/datepicker/locales/bootstrap-datepicker.fi.js +14 -0
  435. data/app/assets/javascripts/my_admin/plugins/datepicker/locales/bootstrap-datepicker.fr.js +16 -0
  436. data/app/assets/javascripts/my_admin/plugins/datepicker/locales/bootstrap-datepicker.he.js +15 -0
  437. data/app/assets/javascripts/my_admin/plugins/datepicker/locales/bootstrap-datepicker.hr.js +13 -0
  438. data/app/assets/javascripts/my_admin/plugins/datepicker/locales/bootstrap-datepicker.id.js +13 -0
  439. data/app/assets/javascripts/my_admin/plugins/datepicker/locales/bootstrap-datepicker.is.js +14 -0
  440. data/app/assets/javascripts/my_admin/plugins/datepicker/locales/bootstrap-datepicker.it.js +16 -0
  441. data/app/assets/javascripts/my_admin/plugins/datepicker/locales/bootstrap-datepicker.ja.js +13 -0
  442. data/app/assets/javascripts/my_admin/plugins/datepicker/locales/bootstrap-datepicker.kr.js +13 -0
  443. data/app/assets/javascripts/my_admin/plugins/datepicker/locales/bootstrap-datepicker.lt.js +16 -0
  444. data/app/assets/javascripts/my_admin/plugins/datepicker/locales/bootstrap-datepicker.lv.js +16 -0
  445. data/app/assets/javascripts/my_admin/plugins/datepicker/locales/bootstrap-datepicker.ms.js +14 -0
  446. data/app/assets/javascripts/my_admin/plugins/datepicker/locales/bootstrap-datepicker.nb.js +14 -0
  447. data/app/assets/javascripts/my_admin/plugins/datepicker/locales/bootstrap-datepicker.nl.js +14 -0
  448. data/app/assets/javascripts/my_admin/plugins/datepicker/locales/bootstrap-datepicker.pl.js +15 -0
  449. data/app/assets/javascripts/my_admin/plugins/datepicker/locales/bootstrap-datepicker.pt-BR.js +15 -0
  450. data/app/assets/javascripts/my_admin/plugins/datepicker/locales/bootstrap-datepicker.pt.js +14 -0
  451. data/app/assets/javascripts/my_admin/plugins/datepicker/locales/bootstrap-datepicker.ro.js +15 -0
  452. data/app/assets/javascripts/my_admin/plugins/datepicker/locales/bootstrap-datepicker.rs-latin.js +14 -0
  453. data/app/assets/javascripts/my_admin/plugins/datepicker/locales/bootstrap-datepicker.rs.js +14 -0
  454. data/app/assets/javascripts/my_admin/plugins/datepicker/locales/bootstrap-datepicker.ru.js +14 -0
  455. data/app/assets/javascripts/my_admin/plugins/datepicker/locales/bootstrap-datepicker.sk.js +15 -0
  456. data/app/assets/javascripts/my_admin/plugins/datepicker/locales/bootstrap-datepicker.sl.js +14 -0
  457. data/app/assets/javascripts/my_admin/plugins/datepicker/locales/bootstrap-datepicker.sv.js +14 -0
  458. data/app/assets/javascripts/my_admin/plugins/datepicker/locales/bootstrap-datepicker.sw.js +15 -0
  459. data/app/assets/javascripts/my_admin/plugins/datepicker/locales/bootstrap-datepicker.th.js +14 -0
  460. data/app/assets/javascripts/my_admin/plugins/datepicker/locales/bootstrap-datepicker.tr.js +15 -0
  461. data/app/assets/javascripts/my_admin/plugins/datepicker/locales/bootstrap-datepicker.uk.js +14 -0
  462. data/app/assets/javascripts/my_admin/plugins/datepicker/locales/bootstrap-datepicker.zh-CN.js +14 -0
  463. data/app/assets/javascripts/my_admin/plugins/datepicker/locales/bootstrap-datepicker.zh-TW.js +13 -0
  464. data/app/assets/javascripts/my_admin/plugins/dynatree/jquery.dynatree.js +3432 -0
  465. data/app/assets/javascripts/my_admin/plugins/easy-pie-chart/jquery.easy-pie-chart.min.js +16 -0
  466. data/app/assets/javascripts/my_admin/plugins/elfinder/elfinder.min.js +26 -0
  467. data/app/assets/javascripts/my_admin/plugins/elfinder/files/.tmb/l1_Rm9sZGVyICMxL3Njb3R0d2lsbHNfdW5kZXJ3YXRlcjIuanBn1221239104.png +0 -0
  468. data/app/assets/javascripts/my_admin/plugins/elfinder/files/.tmb/l1_Rm9sZGVyICMxL3Njb3R0d2lsbHNfdW5kZXJ3YXRlcjUuanBn1221239108.png +0 -0
  469. data/app/assets/javascripts/my_admin/plugins/elfinder/files/.tmb/l1_Rm9sZGVyICMyL3Njb3R0d2lsbHNfY2F0LmpwZw1221239094.png +0 -0
  470. data/app/assets/javascripts/my_admin/plugins/elfinder/files/.tmb/l1_Rm9sZGVyICMyL3Njb3R0d2lsbHNfZ2FyZGVucy5qcGc1221239206.png +0 -0
  471. data/app/assets/javascripts/my_admin/plugins/elfinder/files/.tmb/l1_Rm9sZGVyICMyL3Njb3R0d2lsbHNfZmlzaC5qcGc1221239096.png +0 -0
  472. data/app/assets/javascripts/my_admin/plugins/elfinder/files/.tmb/l1_Rm9sZGVyICMyL3Njb3R0d2lsbHNfaG9yc2UuanBn1221239096.png +0 -0
  473. data/app/assets/javascripts/my_admin/plugins/elfinder/files/.tmb/l1_bWFkbmVzc19iZWFjaC5qcGc1208954324.png +0 -0
  474. data/app/assets/javascripts/my_admin/plugins/elfinder/files/.tmb/l1_bWFkbmVzc19ib2F0LmpwZw1208954324.png +0 -0
  475. data/app/assets/javascripts/my_admin/plugins/elfinder/files/.tmb/l1_c2NvdHR3aWxsc19hdXR1bW4zLmpwZw1221239274.png +0 -0
  476. data/app/assets/javascripts/my_admin/plugins/elfinder/files/.tmb/l1_c2NvdHR3aWxsc19idWZmYWxvLmpwZw1221239094.png +0 -0
  477. data/app/assets/javascripts/my_admin/plugins/elfinder/files/.tmb/l1_c2NvdHR3aWxsc19idXR0ZXJmbHkuanBn1221239286.png +0 -0
  478. data/app/assets/javascripts/my_admin/plugins/elfinder/files/Folder #1/Another_file.txt +0 -0
  479. data/app/assets/javascripts/my_admin/plugins/elfinder/files/Folder #1/file.txt +0 -0
  480. data/app/assets/javascripts/my_admin/plugins/elfinder/files/Folder #1/scottwills_underwater2.jpg +0 -0
  481. data/app/assets/javascripts/my_admin/plugins/elfinder/files/Folder #1/scottwills_underwater5.jpg +0 -0
  482. data/app/assets/javascripts/my_admin/plugins/elfinder/files/Folder #2/scottwills_cat.jpg +0 -0
  483. data/app/assets/javascripts/my_admin/plugins/elfinder/files/Folder #2/scottwills_fish.jpg +0 -0
  484. data/app/assets/javascripts/my_admin/plugins/elfinder/files/Folder #2/scottwills_gardens.jpg +0 -0
  485. data/app/assets/javascripts/my_admin/plugins/elfinder/files/Folder #2/scottwills_horse.jpg +0 -0
  486. data/app/assets/javascripts/my_admin/plugins/elfinder/files/Main-file.txt +1 -0
  487. data/app/assets/javascripts/my_admin/plugins/elfinder/files/madness_beach.jpg +0 -0
  488. data/app/assets/javascripts/my_admin/plugins/elfinder/files/madness_boat.jpg +0 -0
  489. data/app/assets/javascripts/my_admin/plugins/elfinder/files/scottwills_autumn3.jpg +0 -0
  490. data/app/assets/javascripts/my_admin/plugins/elfinder/files/scottwills_buffalo.jpg +0 -0
  491. data/app/assets/javascripts/my_admin/plugins/elfinder/files/scottwills_butterfly.jpg +0 -0
  492. data/app/assets/javascripts/my_admin/plugins/elfinder/i18n/elfinder.LANG.js +355 -0
  493. data/app/assets/javascripts/my_admin/plugins/elfinder/i18n/elfinder.ar.js +290 -0
  494. data/app/assets/javascripts/my_admin/plugins/elfinder/i18n/elfinder.bg.js +310 -0
  495. data/app/assets/javascripts/my_admin/plugins/elfinder/i18n/elfinder.ca.js +310 -0
  496. data/app/assets/javascripts/my_admin/plugins/elfinder/i18n/elfinder.cs.js +340 -0
  497. data/app/assets/javascripts/my_admin/plugins/elfinder/i18n/elfinder.de.js +287 -0
  498. data/app/assets/javascripts/my_admin/plugins/elfinder/i18n/elfinder.el.js +355 -0
  499. data/app/assets/javascripts/my_admin/plugins/elfinder/i18n/elfinder.es.js +291 -0
  500. data/app/assets/javascripts/my_admin/plugins/elfinder/i18n/elfinder.fa.js +339 -0
  501. data/app/assets/javascripts/my_admin/plugins/elfinder/i18n/elfinder.fr.js +325 -0
  502. data/app/assets/javascripts/my_admin/plugins/elfinder/i18n/elfinder.hu.js +280 -0
  503. data/app/assets/javascripts/my_admin/plugins/elfinder/i18n/elfinder.it.js +340 -0
  504. data/app/assets/javascripts/my_admin/plugins/elfinder/i18n/elfinder.jp.js +335 -0
  505. data/app/assets/javascripts/my_admin/plugins/elfinder/i18n/elfinder.ko.js +340 -0
  506. data/app/assets/javascripts/my_admin/plugins/elfinder/i18n/elfinder.nl.js +352 -0
  507. data/app/assets/javascripts/my_admin/plugins/elfinder/i18n/elfinder.no.js +280 -0
  508. data/app/assets/javascripts/my_admin/plugins/elfinder/i18n/elfinder.pl.js +309 -0
  509. data/app/assets/javascripts/my_admin/plugins/elfinder/i18n/elfinder.pt_BR.js +320 -0
  510. data/app/assets/javascripts/my_admin/plugins/elfinder/i18n/elfinder.ru.js +355 -0
  511. data/app/assets/javascripts/my_admin/plugins/elfinder/i18n/elfinder.tr.js +340 -0
  512. data/app/assets/javascripts/my_admin/plugins/elfinder/i18n/elfinder.vi.js +340 -0
  513. data/app/assets/javascripts/my_admin/plugins/elfinder/i18n/elfinder.zh_CN.js +354 -0
  514. data/app/assets/javascripts/my_admin/plugins/elfinder/php/MySQLStorage.sql +23 -0
  515. data/app/assets/javascripts/my_admin/plugins/elfinder/php/connector.minimal.php +57 -0
  516. data/app/assets/javascripts/my_admin/plugins/elfinder/php/connector.php +65 -0
  517. data/app/assets/javascripts/my_admin/plugins/elfinder/php/elFinder.class.php +1500 -0
  518. data/app/assets/javascripts/my_admin/plugins/elfinder/php/elFinderConnector.class.php +133 -0
  519. data/app/assets/javascripts/my_admin/plugins/elfinder/php/elFinderVolumeDriver.class.php +3520 -0
  520. data/app/assets/javascripts/my_admin/plugins/elfinder/php/elFinderVolumeDropbox.class.php +1450 -0
  521. data/app/assets/javascripts/my_admin/plugins/elfinder/php/elFinderVolumeFTP.class.php +994 -0
  522. data/app/assets/javascripts/my_admin/plugins/elfinder/php/elFinderVolumeLocalFileSystem.class.php +837 -0
  523. data/app/assets/javascripts/my_admin/plugins/elfinder/php/elFinderVolumeMySQL.class.php +960 -0
  524. data/app/assets/javascripts/my_admin/plugins/elfinder/php/mime.types +512 -0
  525. data/app/assets/javascripts/my_admin/plugins/elfinder/proxy/elFinderSupportVer1.js +338 -0
  526. data/app/assets/javascripts/my_admin/plugins/fileupload/bootstrap-fileupload.min.js +18 -0
  527. data/app/assets/javascripts/my_admin/plugins/flot/jquery.flot.bar.order.min.js +21 -0
  528. data/app/assets/javascripts/my_admin/plugins/flot/jquery.flot.min.js +28 -0
  529. data/app/assets/javascripts/my_admin/plugins/flot/jquery.flot.pie.js +812 -0
  530. data/app/assets/javascripts/my_admin/plugins/flot/jquery.flot.pie.min.js +56 -0
  531. data/app/assets/javascripts/my_admin/plugins/flot/jquery.flot.resize.min.js +18 -0
  532. data/app/assets/javascripts/my_admin/plugins/flot/jquery.flot.stack.js +184 -0
  533. data/app/assets/javascripts/my_admin/plugins/form/jquery.form.min.js +11 -0
  534. data/app/assets/javascripts/my_admin/plugins/fullcalendar/fullcalendar.min.js +17 -0
  535. data/app/assets/javascripts/my_admin/plugins/gmap/gmap3-menu.js +99 -0
  536. data/app/assets/javascripts/my_admin/plugins/gmap/gmap3.min.js +10 -0
  537. data/app/assets/javascripts/my_admin/plugins/gritter/jquery.gritter.min.js +1 -0
  538. data/app/assets/javascripts/my_admin/plugins/icheck/jquery.icheck.min.js +9 -0
  539. data/app/assets/javascripts/my_admin/plugins/imagesLoaded/jquery.imagesloaded.min.js +3 -0
  540. data/app/assets/javascripts/my_admin/plugins/jquery-ui/jquery.ui.core.min.js +5 -0
  541. data/app/assets/javascripts/my_admin/plugins/jquery-ui/jquery.ui.datepicker.min.js +5 -0
  542. data/app/assets/javascripts/my_admin/plugins/jquery-ui/jquery.ui.draggable.min.js +15 -0
  543. data/app/assets/javascripts/my_admin/plugins/jquery-ui/jquery.ui.droppable.min.js +16 -0
  544. data/app/assets/javascripts/my_admin/plugins/jquery-ui/jquery.ui.mouse.min.js +13 -0
  545. data/app/assets/javascripts/my_admin/plugins/jquery-ui/jquery.ui.position.js +497 -0
  546. data/app/assets/javascripts/my_admin/plugins/jquery-ui/jquery.ui.resizable.min.js +5 -0
  547. data/app/assets/javascripts/my_admin/plugins/jquery-ui/jquery.ui.selectable.min.js +15 -0
  548. data/app/assets/javascripts/my_admin/plugins/jquery-ui/jquery.ui.slider.js +649 -0
  549. data/app/assets/javascripts/my_admin/plugins/jquery-ui/jquery.ui.sortable.min.js +5 -0
  550. data/app/assets/javascripts/my_admin/plugins/jquery-ui/jquery.ui.spinner.js +492 -0
  551. data/app/assets/javascripts/my_admin/plugins/jquery-ui/jquery.ui.widget.min.js +5 -0
  552. data/app/assets/javascripts/my_admin/plugins/maskedinput/jquery.maskedinput.min.js +7 -0
  553. data/app/assets/javascripts/my_admin/plugins/masonry/jquery.masonry.min.js +10 -0
  554. data/app/assets/javascripts/my_admin/plugins/mockjax/jquery.mockjax.js +25 -0
  555. data/app/assets/javascripts/my_admin/plugins/momentjs/jquery.moment.js +6 -0
  556. data/app/assets/javascripts/my_admin/plugins/multiselect/jquery.multi-select.js +464 -0
  557. data/app/assets/javascripts/my_admin/plugins/nicescroll/jquery.nicescroll.min.js +101 -0
  558. data/app/assets/javascripts/my_admin/plugins/pageguide/jquery.pageguide.js +980 -0
  559. data/app/assets/javascripts/my_admin/plugins/placeholder/jquery.placeholder.min.js +2 -0
  560. data/app/assets/javascripts/my_admin/plugins/plupload/jquery.plupload.queue.js +1 -0
  561. data/app/assets/javascripts/my_admin/plugins/plupload/plupload.flash.swf +0 -0
  562. data/app/assets/javascripts/my_admin/plugins/plupload/plupload.full.js +2 -0
  563. data/app/assets/javascripts/my_admin/plugins/plupload/plupload.silverlight.xap +0 -0
  564. data/app/assets/javascripts/my_admin/plugins/select2/select2.min.js +22 -0
  565. data/app/assets/javascripts/my_admin/plugins/slimscroll/jquery.slimscroll.js +440 -0
  566. data/app/assets/javascripts/my_admin/plugins/slimscroll/jquery.slimscroll.min.js +7 -0
  567. data/app/assets/javascripts/my_admin/plugins/sparklines/jquery.sparklines.min.js +5 -0
  568. data/app/assets/javascripts/my_admin/plugins/tagsinput/jquery.tagsinput.min.js +1 -0
  569. data/app/assets/javascripts/my_admin/plugins/timepicker/bootstrap-timepicker.min.js +6 -0
  570. data/app/assets/javascripts/my_admin/plugins/touch-punch/jquery.touch-punch.min.js +11 -0
  571. data/app/assets/javascripts/my_admin/plugins/touchwipe/touchwipe.js +82 -0
  572. data/app/assets/javascripts/my_admin/plugins/touchwipe/touchwipe.min.js +9 -0
  573. data/app/assets/javascripts/my_admin/plugins/validation/additional-methods.min.js +4 -0
  574. data/app/assets/javascripts/my_admin/plugins/validation/jquery.validate.min.js +4 -0
  575. data/app/assets/javascripts/my_admin/plugins/vmap/jquery.vmap.min.js +12 -0
  576. data/app/assets/javascripts/my_admin/plugins/vmap/jquery.vmap.sampledata.js +1 -0
  577. data/app/assets/javascripts/my_admin/plugins/vmap/jquery.vmap.world.js +2 -0
  578. data/app/assets/javascripts/my_admin/plugins/wizard/jquery.form.wizard.min.js +12 -0
  579. data/app/assets/javascripts/my_admin/plugins/xeditable/address.js +168 -0
  580. data/app/assets/javascripts/my_admin/plugins/xeditable/bootstrap-editable.min.js +5 -0
  581. data/app/assets/javascripts/my_admin/plugins/xeditable/demo.js +139 -0
  582. data/app/assets/javascripts/my_admin/plugins/xeditable/demo.min.js +1 -0
  583. data/app/assets/javascripts/my_admin/rails.js +352 -0
  584. data/app/assets/javascripts/my_admin.js +0 -0
  585. data/app/assets/stylesheets/my_admin/application.css +30 -0
  586. data/app/assets/stylesheets/my_admin/application_locked.css +17 -0
  587. data/app/assets/stylesheets/my_admin/application_off.css +18 -0
  588. data/app/assets/stylesheets/my_admin/bootstrap-responsive.css +1109 -0
  589. data/app/assets/stylesheets/my_admin/bootstrap.css.erb +6159 -0
  590. data/app/assets/stylesheets/my_admin/my_admin.css +11 -0
  591. data/app/assets/stylesheets/my_admin/plugins/chosen/chosen.css.erb +397 -0
  592. data/app/assets/stylesheets/my_admin/plugins/colorbox/colorbox.css.erb +49 -0
  593. data/app/assets/stylesheets/my_admin/plugins/colorpicker/colorpicker.css.erb +7 -0
  594. data/app/assets/stylesheets/my_admin/plugins/datatable/TableTools.css +321 -0
  595. data/app/assets/stylesheets/my_admin/plugins/datatable/jquery.dataTables.css +221 -0
  596. data/app/assets/stylesheets/my_admin/plugins/datepicker/datepicker.css +301 -0
  597. data/app/assets/stylesheets/my_admin/plugins/dynatree/icons.gif +0 -0
  598. data/app/assets/stylesheets/my_admin/plugins/dynatree/loading.gif +0 -0
  599. data/app/assets/stylesheets/my_admin/plugins/dynatree/ui.dynatree.css +452 -0
  600. data/app/assets/stylesheets/my_admin/plugins/easy-pie-chart/jquery.easy-pie-chart.css +1 -0
  601. data/app/assets/stylesheets/my_admin/plugins/elfinder/elfinder.min.css +9 -0
  602. data/app/assets/stylesheets/my_admin/plugins/elfinder/theme.css.erb +50 -0
  603. data/app/assets/stylesheets/my_admin/plugins/fullcalendar/fullcalendar.css +1 -0
  604. data/app/assets/stylesheets/my_admin/plugins/fullcalendar/fullcalendar.print.css +1 -0
  605. data/app/assets/stylesheets/my_admin/plugins/gmap/gmap3-menu.css.erb +44 -0
  606. data/app/assets/stylesheets/my_admin/plugins/gritter/jquery.gritter.css +1 -0
  607. data/app/assets/stylesheets/my_admin/plugins/icheck/all.css +61 -0
  608. data/app/assets/stylesheets/my_admin/plugins/icheck/flat/_all.css +540 -0
  609. data/app/assets/stylesheets/my_admin/plugins/icheck/flat/aero.css +54 -0
  610. data/app/assets/stylesheets/my_admin/plugins/icheck/flat/blue.css +54 -0
  611. data/app/assets/stylesheets/my_admin/plugins/icheck/flat/flat.css +54 -0
  612. data/app/assets/stylesheets/my_admin/plugins/icheck/flat/green.css +54 -0
  613. data/app/assets/stylesheets/my_admin/plugins/icheck/flat/grey.css +54 -0
  614. data/app/assets/stylesheets/my_admin/plugins/icheck/flat/orange.css +54 -0
  615. data/app/assets/stylesheets/my_admin/plugins/icheck/flat/pink.css +54 -0
  616. data/app/assets/stylesheets/my_admin/plugins/icheck/flat/purple.css +54 -0
  617. data/app/assets/stylesheets/my_admin/plugins/icheck/flat/red.css +54 -0
  618. data/app/assets/stylesheets/my_admin/plugins/icheck/flat/yellow.css +54 -0
  619. data/app/assets/stylesheets/my_admin/plugins/icheck/futurico/futurico.css +54 -0
  620. data/app/assets/stylesheets/my_admin/plugins/icheck/line/_all.css +650 -0
  621. data/app/assets/stylesheets/my_admin/plugins/icheck/line/aero.css +65 -0
  622. data/app/assets/stylesheets/my_admin/plugins/icheck/line/blue.css +65 -0
  623. data/app/assets/stylesheets/my_admin/plugins/icheck/line/green.css +65 -0
  624. data/app/assets/stylesheets/my_admin/plugins/icheck/line/grey.css +65 -0
  625. data/app/assets/stylesheets/my_admin/plugins/icheck/line/line.css +65 -0
  626. data/app/assets/stylesheets/my_admin/plugins/icheck/line/orange.css +65 -0
  627. data/app/assets/stylesheets/my_admin/plugins/icheck/line/pink.css +65 -0
  628. data/app/assets/stylesheets/my_admin/plugins/icheck/line/purple.css +65 -0
  629. data/app/assets/stylesheets/my_admin/plugins/icheck/line/red.css +65 -0
  630. data/app/assets/stylesheets/my_admin/plugins/icheck/line/yellow.css +65 -0
  631. data/app/assets/stylesheets/my_admin/plugins/icheck/minimal/_all.css +640 -0
  632. data/app/assets/stylesheets/my_admin/plugins/icheck/minimal/aero.css +64 -0
  633. data/app/assets/stylesheets/my_admin/plugins/icheck/minimal/blue.css +64 -0
  634. data/app/assets/stylesheets/my_admin/plugins/icheck/minimal/green.css +64 -0
  635. data/app/assets/stylesheets/my_admin/plugins/icheck/minimal/grey.css +64 -0
  636. data/app/assets/stylesheets/my_admin/plugins/icheck/minimal/minimal.css +64 -0
  637. data/app/assets/stylesheets/my_admin/plugins/icheck/minimal/orange.css +64 -0
  638. data/app/assets/stylesheets/my_admin/plugins/icheck/minimal/pink.css +64 -0
  639. data/app/assets/stylesheets/my_admin/plugins/icheck/minimal/purple.css +64 -0
  640. data/app/assets/stylesheets/my_admin/plugins/icheck/minimal/red.css +64 -0
  641. data/app/assets/stylesheets/my_admin/plugins/icheck/minimal/yellow.css +64 -0
  642. data/app/assets/stylesheets/my_admin/plugins/icheck/polaris/polaris.css +64 -0
  643. data/app/assets/stylesheets/my_admin/plugins/icheck/square/_all.css +640 -0
  644. data/app/assets/stylesheets/my_admin/plugins/icheck/square/aero.css +64 -0
  645. data/app/assets/stylesheets/my_admin/plugins/icheck/square/blue.css +64 -0
  646. data/app/assets/stylesheets/my_admin/plugins/icheck/square/green.css +64 -0
  647. data/app/assets/stylesheets/my_admin/plugins/icheck/square/grey.css +64 -0
  648. data/app/assets/stylesheets/my_admin/plugins/icheck/square/orange.css +64 -0
  649. data/app/assets/stylesheets/my_admin/plugins/icheck/square/pink.css +64 -0
  650. data/app/assets/stylesheets/my_admin/plugins/icheck/square/purple.css +64 -0
  651. data/app/assets/stylesheets/my_admin/plugins/icheck/square/red.css +64 -0
  652. data/app/assets/stylesheets/my_admin/plugins/icheck/square/square.css +64 -0
  653. data/app/assets/stylesheets/my_admin/plugins/icheck/square/yellow.css +64 -0
  654. data/app/assets/stylesheets/my_admin/plugins/jquery-ui/smoothness/images/animated-overlay.gif +0 -0
  655. data/app/assets/stylesheets/my_admin/plugins/jquery-ui/smoothness/images/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
  656. data/app/assets/stylesheets/my_admin/plugins/jquery-ui/smoothness/images/ui-bg_flat_75_ffffff_40x100.png +0 -0
  657. data/app/assets/stylesheets/my_admin/plugins/jquery-ui/smoothness/images/ui-bg_glass_55_fbf9ee_1x400.png +0 -0
  658. data/app/assets/stylesheets/my_admin/plugins/jquery-ui/smoothness/images/ui-bg_glass_65_ffffff_1x400.png +0 -0
  659. data/app/assets/stylesheets/my_admin/plugins/jquery-ui/smoothness/images/ui-bg_glass_75_dadada_1x400.png +0 -0
  660. data/app/assets/stylesheets/my_admin/plugins/jquery-ui/smoothness/images/ui-bg_glass_75_e6e6e6_1x400.png +0 -0
  661. data/app/assets/stylesheets/my_admin/plugins/jquery-ui/smoothness/images/ui-bg_glass_95_fef1ec_1x400.png +0 -0
  662. data/app/assets/stylesheets/my_admin/plugins/jquery-ui/smoothness/images/ui-bg_highlight-soft_75_cccccc_1x100.png +0 -0
  663. data/app/assets/stylesheets/my_admin/plugins/jquery-ui/smoothness/images/ui-icons_222222_256x240.png +0 -0
  664. data/app/assets/stylesheets/my_admin/plugins/jquery-ui/smoothness/images/ui-icons_2e83ff_256x240.png +0 -0
  665. data/app/assets/stylesheets/my_admin/plugins/jquery-ui/smoothness/images/ui-icons_454545_256x240.png +0 -0
  666. data/app/assets/stylesheets/my_admin/plugins/jquery-ui/smoothness/images/ui-icons_888888_256x240.png +0 -0
  667. data/app/assets/stylesheets/my_admin/plugins/jquery-ui/smoothness/images/ui-icons_cd0a0a_256x240.png +0 -0
  668. data/app/assets/stylesheets/my_admin/plugins/jquery-ui/smoothness/jquery-ui.css +1087 -0
  669. data/app/assets/stylesheets/my_admin/plugins/jquery-ui/smoothness/jquery.ui.theme.css +406 -0
  670. data/app/assets/stylesheets/my_admin/plugins/multiselect/multi-select.css.erb +93 -0
  671. data/app/assets/stylesheets/my_admin/plugins/pageguide/pageguide.css +647 -0
  672. data/app/assets/stylesheets/my_admin/plugins/plupload/jquery.plupload.queue.css.erb +176 -0
  673. data/app/assets/stylesheets/my_admin/plugins/select2/select2.css.erb +615 -0
  674. data/app/assets/stylesheets/my_admin/plugins/tagsinput/jquery.tagsinput.css +7 -0
  675. data/app/assets/stylesheets/my_admin/plugins/timepicker/bootstrap-timepicker.min.css +10 -0
  676. data/app/assets/stylesheets/my_admin/plugins/xeditable/bootstrap-editable.css +480 -0
  677. data/app/assets/stylesheets/my_admin/style.css.erb +7827 -0
  678. data/app/assets/stylesheets/my_admin/themes.css +3821 -0
  679. data/app/assets/stylesheets/my_admin.css +0 -0
  680. data/app/controllers/my_admin/configurations_controller.rb +22 -0
  681. data/app/controllers/my_admin/dashboards_controller.rb +15 -0
  682. data/app/controllers/my_admin/first_users_controller.rb +42 -0
  683. data/app/controllers/my_admin/models_controller.rb +205 -0
  684. data/app/controllers/my_admin/my_admin_controller.rb +53 -0
  685. data/app/controllers/my_admin/my_admin_groups_controller.rb +5 -0
  686. data/app/controllers/my_admin/my_admin_logs_controller.rb +3 -0
  687. data/app/controllers/my_admin/my_admin_users_controller.rb +3 -0
  688. data/app/controllers/my_admin/password_controller.rb +29 -0
  689. data/app/controllers/my_admin/recovers_controller.rb +61 -0
  690. data/app/controllers/my_admin/sessions_controller.rb +62 -0
  691. data/app/helpers/asset_package_helper.rb +37 -0
  692. data/app/helpers/my_admin_application_helper.rb +7 -0
  693. data/app/helpers/my_admin_field_helper.rb +179 -0
  694. data/app/helpers/my_admin_helper.rb +35 -0
  695. data/app/helpers/my_admin_log_helper.rb +7 -0
  696. data/app/helpers/my_admin_model_helper.rb +34 -0
  697. data/app/helpers/my_admin_session_helper.rb +50 -0
  698. data/app/mailers/my_admin/recover_mailer.rb +13 -0
  699. data/app/model/ckeditor/asset.rb +4 -0
  700. data/app/model/ckeditor/attachment_file.rb +13 -0
  701. data/app/model/ckeditor/picture.rb +14 -0
  702. data/app/model/my_admin/configuration.rb +10 -0
  703. data/app/model/my_admin/group.rb +26 -0
  704. data/app/model/my_admin/group_permission.rb +7 -0
  705. data/app/model/my_admin/locale.rb +8 -0
  706. data/app/model/my_admin/log.rb +33 -0
  707. data/app/model/my_admin/permission.rb +19 -0
  708. data/app/model/my_admin/user.rb +153 -0
  709. data/app/model/my_admin/user_group.rb +7 -0
  710. data/app/views/layouts/my_admin.html.erb +81 -0
  711. data/app/views/layouts/my_admin_locked.html.erb +44 -0
  712. data/app/views/layouts/my_admin_off.html.erb +72 -0
  713. data/app/views/my_admin/_dashboard.html.erb +0 -0
  714. data/app/views/my_admin/_header.html.erb +101 -0
  715. data/app/views/my_admin/_header.html.erb.old +42 -0
  716. data/app/views/my_admin/_left.html.erb +23 -0
  717. data/app/views/my_admin/configurations/_form.html.erb +31 -0
  718. data/app/views/my_admin/configurations/show.html.erb +17 -0
  719. data/app/views/my_admin/dashboards/index.html.erb +1 -0
  720. data/app/views/my_admin/fields/config/type/default.html.erb +18 -0
  721. data/app/views/my_admin/fields/config/type/text.html.erb +18 -0
  722. data/app/views/my_admin/fields/edit/type/belongs_to.html.erb +28 -0
  723. data/app/views/my_admin/fields/edit/type/boolean.html.erb +5 -0
  724. data/app/views/my_admin/fields/edit/type/clear_text.html.erb +8 -0
  725. data/app/views/my_admin/fields/edit/type/color.html.erb +1 -0
  726. data/app/views/my_admin/fields/edit/type/date.html.erb +3 -0
  727. data/app/views/my_admin/fields/edit/type/datetime.html.erb +11 -0
  728. data/app/views/my_admin/fields/edit/type/decimal.html.erb +3 -0
  729. data/app/views/my_admin/fields/edit/type/default.html.erb +4 -0
  730. data/app/views/my_admin/fields/edit/type/default_struct.html.erb +9 -0
  731. data/app/views/my_admin/fields/edit/type/email.html.erb +4 -0
  732. data/app/views/my_admin/fields/edit/type/file.html.erb +9 -0
  733. data/app/views/my_admin/fields/edit/type/float.html.erb +1 -0
  734. data/app/views/my_admin/fields/edit/type/has_and_belongs_to_many.html.erb +34 -0
  735. data/app/views/my_admin/fields/edit/type/has_many.html.erb +12 -0
  736. data/app/views/my_admin/fields/edit/type/has_many_edit.html.erb +79 -0
  737. data/app/views/my_admin/fields/edit/type/has_many_locale.html.erb +40 -0
  738. data/app/views/my_admin/fields/edit/type/has_many_locale_struct.html.erb +1 -0
  739. data/app/views/my_admin/fields/edit/type/integer.html.erb +3 -0
  740. data/app/views/my_admin/fields/edit/type/list.html.erb +23 -0
  741. data/app/views/my_admin/fields/edit/type/list_string.html.erb +19 -0
  742. data/app/views/my_admin/fields/edit/type/money.html.erb +7 -0
  743. data/app/views/my_admin/fields/edit/type/paperclip/attachment.html.erb +28 -0
  744. data/app/views/my_admin/fields/edit/type/password.html.erb +4 -0
  745. data/app/views/my_admin/fields/edit/type/read_only.html.erb +10 -0
  746. data/app/views/my_admin/fields/edit/type/text.html.erb +3 -0
  747. data/app/views/my_admin/fields/edit/type/time.html.erb +6 -0
  748. data/app/views/my_admin/fields/filter/type/belongs_to.html.erb +11 -0
  749. data/app/views/my_admin/fields/filter/type/boolean.html.erb +5 -0
  750. data/app/views/my_admin/fields/filter/type/date.html.erb +3 -0
  751. data/app/views/my_admin/fields/filter/type/datetime.html.erb +13 -0
  752. data/app/views/my_admin/fields/filter/type/default.html.erb +2 -0
  753. data/app/views/my_admin/fields/filter/type/default_struct.html.erb +7 -0
  754. data/app/views/my_admin/fields/filter/type/email.html.erb +5 -0
  755. data/app/views/my_admin/fields/filter/type/list.html.erb +11 -0
  756. data/app/views/my_admin/fields/filter/type/list_string.html.erb +11 -0
  757. data/app/views/my_admin/fields/type/big_decimal.html.erb +1 -0
  758. data/app/views/my_admin/fields/type/boolean.html.erb +5 -0
  759. data/app/views/my_admin/fields/type/color.html.erb +2 -0
  760. data/app/views/my_admin/fields/type/datetime.html.erb +1 -0
  761. data/app/views/my_admin/fields/type/decimal.html.erb +1 -0
  762. data/app/views/my_admin/fields/type/default.html.erb +1 -0
  763. data/app/views/my_admin/fields/type/file.html.erb +1 -0
  764. data/app/views/my_admin/fields/type/float.html.erb +1 -0
  765. data/app/views/my_admin/fields/type/has_many.html.erb +1 -0
  766. data/app/views/my_admin/fields/type/has_many_edit.html.erb +1 -0
  767. data/app/views/my_admin/fields/type/paperclip/attachment.html.erb +5 -0
  768. data/app/views/my_admin/first_users/new.html.erb +51 -0
  769. data/app/views/my_admin/models/_field.html.erb +9 -0
  770. data/app/views/my_admin/models/_filters.html.erb +43 -0
  771. data/app/views/my_admin/models/_form.html.erb +43 -0
  772. data/app/views/my_admin/models/_paginate.html.erb +9 -0
  773. data/app/views/my_admin/models/_popup_hint.html.erb +8 -0
  774. data/app/views/my_admin/models/edit.html.erb +9 -0
  775. data/app/views/my_admin/models/index.html.erb +116 -0
  776. data/app/views/my_admin/models/new.html.erb +9 -0
  777. data/app/views/my_admin/models/remote.js.erb +13 -0
  778. data/app/views/my_admin/password/edit.html.erb +58 -0
  779. data/app/views/my_admin/recover_mailer/send_recover_mail.html.erb +25 -0
  780. data/app/views/my_admin/recovers/new.html.erb +20 -0
  781. data/app/views/my_admin/recovers/show.html.erb +27 -0
  782. data/app/views/my_admin/sessions/new.html.erb +30 -0
  783. data/app/views/my_admin/sessions/unlock.html.erb +34 -0
  784. data/config/locales/en.yml +35 -0
  785. data/config/locales/es.yml +22 -0
  786. data/config/locales/pt.yml +210 -0
  787. data/config/routes.rb +52 -0
  788. data/lib/generators/my_admin/install/USAGE +8 -0
  789. data/lib/generators/my_admin/install/install_generator.rb +68 -0
  790. data/lib/generators/my_admin/install/templates/config/initializers/my_admin.rb +8 -0
  791. data/lib/generators/my_admin/install/templates/migrations/ckeditor_assets.rb +26 -0
  792. data/lib/generators/my_admin/install/templates/migrations/configurations.rb +22 -0
  793. data/lib/generators/my_admin/install/templates/migrations/group_permissions.rb +16 -0
  794. data/lib/generators/my_admin/install/templates/migrations/groups.rb +16 -0
  795. data/lib/generators/my_admin/install/templates/migrations/locales.rb +15 -0
  796. data/lib/generators/my_admin/install/templates/migrations/logs.rb +19 -0
  797. data/lib/generators/my_admin/install/templates/migrations/permissions.rb +15 -0
  798. data/lib/generators/my_admin/install/templates/migrations/user_groups.rb +16 -0
  799. data/lib/generators/my_admin/install/templates/migrations/users.rb +28 -0
  800. data/lib/generators/my_admin/install/templates/public/plugins/ckeditor/ckupload.php +35 -0
  801. data/lib/generators/my_admin/model/model_generator.rb +26 -0
  802. data/lib/generators/my_admin/model/templates/controllers/controller.rb +3 -0
  803. data/lib/generators/my_admin/permissions/permissions_generator.rb +26 -0
  804. data/lib/my_admin/active_record.rb +118 -0
  805. data/lib/my_admin/application.rb +62 -0
  806. data/lib/my_admin/breadcrumbs/my_admin.rb +44 -0
  807. data/lib/my_admin/ckeditor.rb +39 -0
  808. data/lib/my_admin/engine.rb +23 -0
  809. data/lib/my_admin/jsmin.rb +205 -0
  810. data/lib/my_admin/locales.rb +29 -0
  811. data/lib/my_admin/model_configuration.rb +53 -0
  812. data/lib/my_admin/paperclip.rb +4 -0
  813. data/lib/my_admin/paperclip_processors/cropper.rb +20 -0
  814. data/lib/my_admin/paperclip_processors/rotator.rb +25 -0
  815. data/lib/my_admin/string.rb +5 -0
  816. data/lib/my_admin/to_xls.rb +53 -0
  817. data/lib/my_admin/version.rb +3 -0
  818. data/lib/my_admin/will_paginate/bootstrap_link_renderer.rb +20 -0
  819. data/lib/my_admin/yml_manage.rb +41 -0
  820. data/lib/my_admin.rb +31 -0
  821. data/my_admin.gemspec +30 -0
  822. metadata +975 -0
@@ -0,0 +1,2268 @@
1
+ /* ===================================================
2
+ * bootstrap-transition.js v2.3.0
3
+ * http://twitter.github.com/bootstrap/javascript.html#transitions
4
+ * ===================================================
5
+ * Copyright 2012 Twitter, Inc.
6
+ *
7
+ * Licensed under the Apache License, Version 2.0 (the "License");
8
+ * you may not use this file except in compliance with the License.
9
+ * You may obtain a copy of the License at
10
+ *
11
+ * http://www.apache.org/licenses/LICENSE-2.0
12
+ *
13
+ * Unless required by applicable law or agreed to in writing, software
14
+ * distributed under the License is distributed on an "AS IS" BASIS,
15
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16
+ * See the License for the specific language governing permissions and
17
+ * limitations under the License.
18
+ * ========================================================== */
19
+
20
+
21
+ !function ($) {
22
+
23
+ "use strict"; // jshint ;_;
24
+
25
+
26
+ /* CSS TRANSITION SUPPORT (http://www.modernizr.com/)
27
+ * ======================================================= */
28
+
29
+ $(function () {
30
+
31
+ $.support.transition = (function () {
32
+
33
+ var transitionEnd = (function () {
34
+
35
+ var el = document.createElement('bootstrap')
36
+ , transEndEventNames = {
37
+ 'WebkitTransition' : 'webkitTransitionEnd'
38
+ , 'MozTransition' : 'transitionend'
39
+ , 'OTransition' : 'oTransitionEnd otransitionend'
40
+ , 'transition' : 'transitionend'
41
+ }
42
+ , name
43
+
44
+ for (name in transEndEventNames){
45
+ if (el.style[name] !== undefined) {
46
+ return transEndEventNames[name]
47
+ }
48
+ }
49
+
50
+ }())
51
+
52
+ return transitionEnd && {
53
+ end: transitionEnd
54
+ }
55
+
56
+ })()
57
+
58
+ })
59
+
60
+ }(window.jQuery);/* ==========================================================
61
+ * bootstrap-alert.js v2.3.0
62
+ * http://twitter.github.com/bootstrap/javascript.html#alerts
63
+ * ==========================================================
64
+ * Copyright 2012 Twitter, Inc.
65
+ *
66
+ * Licensed under the Apache License, Version 2.0 (the "License");
67
+ * you may not use this file except in compliance with the License.
68
+ * You may obtain a copy of the License at
69
+ *
70
+ * http://www.apache.org/licenses/LICENSE-2.0
71
+ *
72
+ * Unless required by applicable law or agreed to in writing, software
73
+ * distributed under the License is distributed on an "AS IS" BASIS,
74
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
75
+ * See the License for the specific language governing permissions and
76
+ * limitations under the License.
77
+ * ========================================================== */
78
+
79
+
80
+ !function ($) {
81
+
82
+ "use strict"; // jshint ;_;
83
+
84
+
85
+ /* ALERT CLASS DEFINITION
86
+ * ====================== */
87
+
88
+ var dismiss = '[data-dismiss="alert"]'
89
+ , Alert = function (el) {
90
+ $(el).on('click', dismiss, this.close)
91
+ }
92
+
93
+ Alert.prototype.close = function (e) {
94
+ var $this = $(this)
95
+ , selector = $this.attr('data-target')
96
+ , $parent
97
+
98
+ if (!selector) {
99
+ selector = $this.attr('href')
100
+ selector = selector && selector.replace(/.*(?=#[^\s]*$)/, '') //strip for ie7
101
+ }
102
+
103
+ $parent = $(selector)
104
+
105
+ e && e.preventDefault()
106
+
107
+ $parent.length || ($parent = $this.hasClass('alert') ? $this : $this.parent())
108
+
109
+ $parent.trigger(e = $.Event('close'))
110
+
111
+ if (e.isDefaultPrevented()) return
112
+
113
+ $parent.removeClass('in')
114
+
115
+ function removeElement() {
116
+ $parent
117
+ .trigger('closed')
118
+ .remove()
119
+ }
120
+
121
+ $.support.transition && $parent.hasClass('fade') ?
122
+ $parent.on($.support.transition.end, removeElement) :
123
+ removeElement()
124
+ }
125
+
126
+
127
+ /* ALERT PLUGIN DEFINITION
128
+ * ======================= */
129
+
130
+ var old = $.fn.alert
131
+
132
+ $.fn.alert = function (option) {
133
+ return this.each(function () {
134
+ var $this = $(this)
135
+ , data = $this.data('alert')
136
+ if (!data) $this.data('alert', (data = new Alert(this)))
137
+ if (typeof option == 'string') data[option].call($this)
138
+ })
139
+ }
140
+
141
+ $.fn.alert.Constructor = Alert
142
+
143
+
144
+ /* ALERT NO CONFLICT
145
+ * ================= */
146
+
147
+ $.fn.alert.noConflict = function () {
148
+ $.fn.alert = old
149
+ return this
150
+ }
151
+
152
+
153
+ /* ALERT DATA-API
154
+ * ============== */
155
+
156
+ $(document).on('click.alert.data-api', dismiss, Alert.prototype.close)
157
+
158
+ }(window.jQuery);/* ============================================================
159
+ * bootstrap-button.js v2.3.0
160
+ * http://twitter.github.com/bootstrap/javascript.html#buttons
161
+ * ============================================================
162
+ * Copyright 2012 Twitter, Inc.
163
+ *
164
+ * Licensed under the Apache License, Version 2.0 (the "License");
165
+ * you may not use this file except in compliance with the License.
166
+ * You may obtain a copy of the License at
167
+ *
168
+ * http://www.apache.org/licenses/LICENSE-2.0
169
+ *
170
+ * Unless required by applicable law or agreed to in writing, software
171
+ * distributed under the License is distributed on an "AS IS" BASIS,
172
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
173
+ * See the License for the specific language governing permissions and
174
+ * limitations under the License.
175
+ * ============================================================ */
176
+
177
+
178
+ !function ($) {
179
+
180
+ "use strict"; // jshint ;_;
181
+
182
+
183
+ /* BUTTON PUBLIC CLASS DEFINITION
184
+ * ============================== */
185
+
186
+ var Button = function (element, options) {
187
+ this.$element = $(element)
188
+ this.options = $.extend({}, $.fn.button.defaults, options)
189
+ }
190
+
191
+ Button.prototype.setState = function (state) {
192
+ var d = 'disabled'
193
+ , $el = this.$element
194
+ , data = $el.data()
195
+ , val = $el.is('input') ? 'val' : 'html'
196
+
197
+ state = state + 'Text'
198
+ data.resetText || $el.data('resetText', $el[val]())
199
+
200
+ $el[val](data[state] || this.options[state])
201
+
202
+ // push to event loop to allow forms to submit
203
+ setTimeout(function () {
204
+ state == 'loadingText' ?
205
+ $el.addClass(d).attr(d, d) :
206
+ $el.removeClass(d).removeAttr(d)
207
+ }, 0)
208
+ }
209
+
210
+ Button.prototype.toggle = function () {
211
+ var $parent = this.$element.closest('[data-toggle="buttons-radio"]')
212
+
213
+ $parent && $parent
214
+ .find('.active')
215
+ .removeClass('active')
216
+
217
+ this.$element.toggleClass('active')
218
+ }
219
+
220
+
221
+ /* BUTTON PLUGIN DEFINITION
222
+ * ======================== */
223
+
224
+ var old = $.fn.button
225
+
226
+ $.fn.button = function (option) {
227
+ return this.each(function () {
228
+ var $this = $(this)
229
+ , data = $this.data('button')
230
+ , options = typeof option == 'object' && option
231
+ if (!data) $this.data('button', (data = new Button(this, options)))
232
+ if (option == 'toggle') data.toggle()
233
+ else if (option) data.setState(option)
234
+ })
235
+ }
236
+
237
+ $.fn.button.defaults = {
238
+ loadingText: 'loading...'
239
+ }
240
+
241
+ $.fn.button.Constructor = Button
242
+
243
+
244
+ /* BUTTON NO CONFLICT
245
+ * ================== */
246
+
247
+ $.fn.button.noConflict = function () {
248
+ $.fn.button = old
249
+ return this
250
+ }
251
+
252
+
253
+ /* BUTTON DATA-API
254
+ * =============== */
255
+
256
+ $(document).on('click.button.data-api', '[data-toggle^=button]', function (e) {
257
+ var $btn = $(e.target)
258
+ if (!$btn.hasClass('btn')) $btn = $btn.closest('.btn')
259
+ $btn.button('toggle')
260
+ })
261
+
262
+ }(window.jQuery);/* ==========================================================
263
+ * bootstrap-carousel.js v2.3.0
264
+ * http://twitter.github.com/bootstrap/javascript.html#carousel
265
+ * ==========================================================
266
+ * Copyright 2012 Twitter, Inc.
267
+ *
268
+ * Licensed under the Apache License, Version 2.0 (the "License");
269
+ * you may not use this file except in compliance with the License.
270
+ * You may obtain a copy of the License at
271
+ *
272
+ * http://www.apache.org/licenses/LICENSE-2.0
273
+ *
274
+ * Unless required by applicable law or agreed to in writing, software
275
+ * distributed under the License is distributed on an "AS IS" BASIS,
276
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
277
+ * See the License for the specific language governing permissions and
278
+ * limitations under the License.
279
+ * ========================================================== */
280
+
281
+
282
+ !function ($) {
283
+
284
+ "use strict"; // jshint ;_;
285
+
286
+
287
+ /* CAROUSEL CLASS DEFINITION
288
+ * ========================= */
289
+
290
+ var Carousel = function (element, options) {
291
+ this.$element = $(element)
292
+ this.$indicators = this.$element.find('.carousel-indicators')
293
+ this.options = options
294
+ this.options.pause == 'hover' && this.$element
295
+ .on('mouseenter', $.proxy(this.pause, this))
296
+ .on('mouseleave', $.proxy(this.cycle, this))
297
+ }
298
+
299
+ Carousel.prototype = {
300
+
301
+ cycle: function (e) {
302
+ if (!e) this.paused = false
303
+ if (this.interval) clearInterval(this.interval);
304
+ this.options.interval
305
+ && !this.paused
306
+ && (this.interval = setInterval($.proxy(this.next, this), this.options.interval))
307
+ return this
308
+ }
309
+
310
+ , getActiveIndex: function () {
311
+ this.$active = this.$element.find('.item.active')
312
+ this.$items = this.$active.parent().children()
313
+ return this.$items.index(this.$active)
314
+ }
315
+
316
+ , to: function (pos) {
317
+ var activeIndex = this.getActiveIndex()
318
+ , that = this
319
+
320
+ if (pos > (this.$items.length - 1) || pos < 0) return
321
+
322
+ if (this.sliding) {
323
+ return this.$element.one('slid', function () {
324
+ that.to(pos)
325
+ })
326
+ }
327
+
328
+ if (activeIndex == pos) {
329
+ return this.pause().cycle()
330
+ }
331
+
332
+ return this.slide(pos > activeIndex ? 'next' : 'prev', $(this.$items[pos]))
333
+ }
334
+
335
+ , pause: function (e) {
336
+ if (!e) this.paused = true
337
+ if (this.$element.find('.next, .prev').length && $.support.transition.end) {
338
+ this.$element.trigger($.support.transition.end)
339
+ this.cycle()
340
+ }
341
+ clearInterval(this.interval)
342
+ this.interval = null
343
+ return this
344
+ }
345
+
346
+ , next: function () {
347
+ if (this.sliding) return
348
+ return this.slide('next')
349
+ }
350
+
351
+ , prev: function () {
352
+ if (this.sliding) return
353
+ return this.slide('prev')
354
+ }
355
+
356
+ , slide: function (type, next) {
357
+ var $active = this.$element.find('.item.active')
358
+ , $next = next || $active[type]()
359
+ , isCycling = this.interval
360
+ , direction = type == 'next' ? 'left' : 'right'
361
+ , fallback = type == 'next' ? 'first' : 'last'
362
+ , that = this
363
+ , e
364
+
365
+ this.sliding = true
366
+
367
+ isCycling && this.pause()
368
+
369
+ $next = $next.length ? $next : this.$element.find('.item')[fallback]()
370
+
371
+ e = $.Event('slide', {
372
+ relatedTarget: $next[0]
373
+ , direction: direction
374
+ })
375
+
376
+ if ($next.hasClass('active')) return
377
+
378
+ if (this.$indicators.length) {
379
+ this.$indicators.find('.active').removeClass('active')
380
+ this.$element.one('slid', function () {
381
+ var $nextIndicator = $(that.$indicators.children()[that.getActiveIndex()])
382
+ $nextIndicator && $nextIndicator.addClass('active')
383
+ })
384
+ }
385
+
386
+ if ($.support.transition && this.$element.hasClass('slide')) {
387
+ this.$element.trigger(e)
388
+ if (e.isDefaultPrevented()) return
389
+ $next.addClass(type)
390
+ $next[0].offsetWidth // force reflow
391
+ $active.addClass(direction)
392
+ $next.addClass(direction)
393
+ this.$element.one($.support.transition.end, function () {
394
+ $next.removeClass([type, direction].join(' ')).addClass('active')
395
+ $active.removeClass(['active', direction].join(' '))
396
+ that.sliding = false
397
+ setTimeout(function () { that.$element.trigger('slid') }, 0)
398
+ })
399
+ } else {
400
+ this.$element.trigger(e)
401
+ if (e.isDefaultPrevented()) return
402
+ $active.removeClass('active')
403
+ $next.addClass('active')
404
+ this.sliding = false
405
+ this.$element.trigger('slid')
406
+ }
407
+
408
+ isCycling && this.cycle()
409
+
410
+ return this
411
+ }
412
+
413
+ }
414
+
415
+
416
+ /* CAROUSEL PLUGIN DEFINITION
417
+ * ========================== */
418
+
419
+ var old = $.fn.carousel
420
+
421
+ $.fn.carousel = function (option) {
422
+ return this.each(function () {
423
+ var $this = $(this)
424
+ , data = $this.data('carousel')
425
+ , options = $.extend({}, $.fn.carousel.defaults, typeof option == 'object' && option)
426
+ , action = typeof option == 'string' ? option : options.slide
427
+ if (!data) $this.data('carousel', (data = new Carousel(this, options)))
428
+ if (typeof option == 'number') data.to(option)
429
+ else if (action) data[action]()
430
+ else if (options.interval) data.pause().cycle()
431
+ })
432
+ }
433
+
434
+ $.fn.carousel.defaults = {
435
+ interval: 5000
436
+ , pause: 'hover'
437
+ }
438
+
439
+ $.fn.carousel.Constructor = Carousel
440
+
441
+
442
+ /* CAROUSEL NO CONFLICT
443
+ * ==================== */
444
+
445
+ $.fn.carousel.noConflict = function () {
446
+ $.fn.carousel = old
447
+ return this
448
+ }
449
+
450
+ /* CAROUSEL DATA-API
451
+ * ================= */
452
+
453
+ $(document).on('click.carousel.data-api', '[data-slide], [data-slide-to]', function (e) {
454
+ var $this = $(this), href
455
+ , $target = $($this.attr('data-target') || (href = $this.attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '')) //strip for ie7
456
+ , options = $.extend({}, $target.data(), $this.data())
457
+ , slideIndex
458
+
459
+ $target.carousel(options)
460
+
461
+ if (slideIndex = $this.attr('data-slide-to')) {
462
+ $target.data('carousel').pause().to(slideIndex).cycle()
463
+ }
464
+
465
+ e.preventDefault()
466
+ })
467
+
468
+ }(window.jQuery);/* =============================================================
469
+ * bootstrap-collapse.js v2.3.0
470
+ * http://twitter.github.com/bootstrap/javascript.html#collapse
471
+ * =============================================================
472
+ * Copyright 2012 Twitter, Inc.
473
+ *
474
+ * Licensed under the Apache License, Version 2.0 (the "License");
475
+ * you may not use this file except in compliance with the License.
476
+ * You may obtain a copy of the License at
477
+ *
478
+ * http://www.apache.org/licenses/LICENSE-2.0
479
+ *
480
+ * Unless required by applicable law or agreed to in writing, software
481
+ * distributed under the License is distributed on an "AS IS" BASIS,
482
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
483
+ * See the License for the specific language governing permissions and
484
+ * limitations under the License.
485
+ * ============================================================ */
486
+
487
+
488
+ !function ($) {
489
+
490
+ "use strict"; // jshint ;_;
491
+
492
+
493
+ /* COLLAPSE PUBLIC CLASS DEFINITION
494
+ * ================================ */
495
+
496
+ var Collapse = function (element, options) {
497
+ this.$element = $(element)
498
+ this.options = $.extend({}, $.fn.collapse.defaults, options)
499
+
500
+ if (this.options.parent) {
501
+ this.$parent = $(this.options.parent)
502
+ }
503
+
504
+ this.options.toggle && this.toggle()
505
+ }
506
+
507
+ Collapse.prototype = {
508
+
509
+ constructor: Collapse
510
+
511
+ , dimension: function () {
512
+ var hasWidth = this.$element.hasClass('width')
513
+ return hasWidth ? 'width' : 'height'
514
+ }
515
+
516
+ , show: function () {
517
+ var dimension
518
+ , scroll
519
+ , actives
520
+ , hasData
521
+
522
+ if (this.transitioning || this.$element.hasClass('in')) return
523
+
524
+ dimension = this.dimension()
525
+ scroll = $.camelCase(['scroll', dimension].join('-'))
526
+ actives = this.$parent && this.$parent.find('> .accordion-group > .in')
527
+
528
+ if (actives && actives.length) {
529
+ hasData = actives.data('collapse')
530
+ if (hasData && hasData.transitioning) return
531
+ actives.collapse('hide')
532
+ hasData || actives.data('collapse', null)
533
+ }
534
+
535
+ this.$element[dimension](0)
536
+ this.transition('addClass', $.Event('show'), 'shown')
537
+ $.support.transition && this.$element[dimension](this.$element[0][scroll])
538
+ }
539
+
540
+ , hide: function () {
541
+ var dimension
542
+ if (this.transitioning || !this.$element.hasClass('in')) return
543
+ dimension = this.dimension()
544
+ this.reset(this.$element[dimension]())
545
+ this.transition('removeClass', $.Event('hide'), 'hidden')
546
+ this.$element[dimension](0)
547
+ }
548
+
549
+ , reset: function (size) {
550
+ var dimension = this.dimension()
551
+
552
+ this.$element
553
+ .removeClass('collapse')
554
+ [dimension](size || 'auto')
555
+ [0].offsetWidth
556
+
557
+ this.$element[size !== null ? 'addClass' : 'removeClass']('collapse')
558
+
559
+ return this
560
+ }
561
+
562
+ , transition: function (method, startEvent, completeEvent) {
563
+ var that = this
564
+ , complete = function () {
565
+ if (startEvent.type == 'show') that.reset()
566
+ that.transitioning = 0
567
+ that.$element.trigger(completeEvent)
568
+ }
569
+
570
+ this.$element.trigger(startEvent)
571
+
572
+ if (startEvent.isDefaultPrevented()) return
573
+
574
+ this.transitioning = 1
575
+
576
+ this.$element[method]('in')
577
+
578
+ $.support.transition && this.$element.hasClass('collapse') ?
579
+ this.$element.one($.support.transition.end, complete) :
580
+ complete()
581
+ }
582
+
583
+ , toggle: function () {
584
+ this[this.$element.hasClass('in') ? 'hide' : 'show']()
585
+ }
586
+
587
+ }
588
+
589
+
590
+ /* COLLAPSE PLUGIN DEFINITION
591
+ * ========================== */
592
+
593
+ var old = $.fn.collapse
594
+
595
+ $.fn.collapse = function (option) {
596
+ return this.each(function () {
597
+ var $this = $(this)
598
+ , data = $this.data('collapse')
599
+ , options = $.extend({}, $.fn.collapse.defaults, $this.data(), typeof option == 'object' && option)
600
+ if (!data) $this.data('collapse', (data = new Collapse(this, options)))
601
+ if (typeof option == 'string') data[option]()
602
+ })
603
+ }
604
+
605
+ $.fn.collapse.defaults = {
606
+ toggle: true
607
+ }
608
+
609
+ $.fn.collapse.Constructor = Collapse
610
+
611
+
612
+ /* COLLAPSE NO CONFLICT
613
+ * ==================== */
614
+
615
+ $.fn.collapse.noConflict = function () {
616
+ $.fn.collapse = old
617
+ return this
618
+ }
619
+
620
+
621
+ /* COLLAPSE DATA-API
622
+ * ================= */
623
+
624
+ $(document).on('click.collapse.data-api', '[data-toggle=collapse]', function (e) {
625
+ var $this = $(this), href
626
+ , target = $this.attr('data-target')
627
+ || e.preventDefault()
628
+ || (href = $this.attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '') //strip for ie7
629
+ , option = $(target).data('collapse') ? 'toggle' : $this.data()
630
+ $this[$(target).hasClass('in') ? 'addClass' : 'removeClass']('collapsed')
631
+ $(target).collapse(option)
632
+ })
633
+
634
+ }(window.jQuery);/* ============================================================
635
+ * bootstrap-dropdown.js v2.3.0
636
+ * http://twitter.github.com/bootstrap/javascript.html#dropdowns
637
+ * ============================================================
638
+ * Copyright 2012 Twitter, Inc.
639
+ *
640
+ * Licensed under the Apache License, Version 2.0 (the "License");
641
+ * you may not use this file except in compliance with the License.
642
+ * You may obtain a copy of the License at
643
+ *
644
+ * http://www.apache.org/licenses/LICENSE-2.0
645
+ *
646
+ * Unless required by applicable law or agreed to in writing, software
647
+ * distributed under the License is distributed on an "AS IS" BASIS,
648
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
649
+ * See the License for the specific language governing permissions and
650
+ * limitations under the License.
651
+ * ============================================================ */
652
+
653
+
654
+ !function ($) {
655
+
656
+ "use strict"; // jshint ;_;
657
+
658
+
659
+ /* DROPDOWN CLASS DEFINITION
660
+ * ========================= */
661
+
662
+ var toggle = '[data-toggle=dropdown]'
663
+ , Dropdown = function (element) {
664
+ var $el = $(element).on('click.dropdown.data-api', this.toggle)
665
+ $('html').on('click.dropdown.data-api', function () {
666
+ $el.parent().removeClass('open')
667
+ })
668
+ }
669
+
670
+ Dropdown.prototype = {
671
+
672
+ constructor: Dropdown
673
+
674
+ , toggle: function (e) {
675
+ var $this = $(this)
676
+ , $parent
677
+ , isActive
678
+
679
+ if ($this.is('.disabled, :disabled')) return
680
+
681
+ $parent = getParent($this)
682
+
683
+ isActive = $parent.hasClass('open')
684
+
685
+ clearMenus()
686
+
687
+ if (!isActive) {
688
+ $parent.toggleClass('open')
689
+ }
690
+
691
+ $this.focus()
692
+
693
+ return false
694
+ }
695
+
696
+ , keydown: function (e) {
697
+ var $this
698
+ , $items
699
+ , $active
700
+ , $parent
701
+ , isActive
702
+ , index
703
+
704
+ if (!/(38|40|27)/.test(e.keyCode)) return
705
+
706
+ $this = $(this)
707
+
708
+ e.preventDefault()
709
+ e.stopPropagation()
710
+
711
+ if ($this.is('.disabled, :disabled')) return
712
+
713
+ $parent = getParent($this)
714
+
715
+ isActive = $parent.hasClass('open')
716
+
717
+ if (!isActive || (isActive && e.keyCode == 27)) {
718
+ if (e.which == 27) $parent.find(toggle).focus()
719
+ return $this.click()
720
+ }
721
+
722
+ $items = $('[role=menu] li:not(.divider):visible a', $parent)
723
+
724
+ if (!$items.length) return
725
+
726
+ index = $items.index($items.filter(':focus'))
727
+
728
+ if (e.keyCode == 38 && index > 0) index-- // up
729
+ if (e.keyCode == 40 && index < $items.length - 1) index++ // down
730
+ if (!~index) index = 0
731
+
732
+ $items
733
+ .eq(index)
734
+ .focus()
735
+ }
736
+
737
+ }
738
+
739
+ function clearMenus() {
740
+ $(toggle).each(function () {
741
+ getParent($(this)).removeClass('open')
742
+ })
743
+ }
744
+
745
+ function getParent($this) {
746
+ var selector = $this.attr('data-target')
747
+ , $parent
748
+
749
+ if (!selector) {
750
+ selector = $this.attr('href')
751
+ selector = selector && /#/.test(selector) && selector.replace(/.*(?=#[^\s]*$)/, '') //strip for ie7
752
+ }
753
+
754
+ $parent = selector && $(selector)
755
+
756
+ if (!$parent || !$parent.length) $parent = $this.parent()
757
+
758
+ return $parent
759
+ }
760
+
761
+
762
+ /* DROPDOWN PLUGIN DEFINITION
763
+ * ========================== */
764
+
765
+ var old = $.fn.dropdown
766
+
767
+ $.fn.dropdown = function (option) {
768
+ return this.each(function () {
769
+ var $this = $(this)
770
+ , data = $this.data('dropdown')
771
+ if (!data) $this.data('dropdown', (data = new Dropdown(this)))
772
+ if (typeof option == 'string') data[option].call($this)
773
+ })
774
+ }
775
+
776
+ $.fn.dropdown.Constructor = Dropdown
777
+
778
+
779
+ /* DROPDOWN NO CONFLICT
780
+ * ==================== */
781
+
782
+ $.fn.dropdown.noConflict = function () {
783
+ $.fn.dropdown = old
784
+ return this
785
+ }
786
+
787
+
788
+ /* APPLY TO STANDARD DROPDOWN ELEMENTS
789
+ * =================================== */
790
+
791
+ $(document)
792
+ .on('click.dropdown.data-api', clearMenus)
793
+ .on('click.dropdown.data-api', '.dropdown form', function (e) { e.stopPropagation() })
794
+ .on('.dropdown-menu', function (e) { e.stopPropagation() })
795
+ .on('click.dropdown.data-api' , toggle, Dropdown.prototype.toggle)
796
+ .on('keydown.dropdown.data-api', toggle + ', [role=menu]' , Dropdown.prototype.keydown)
797
+
798
+ }(window.jQuery);
799
+ /* =========================================================
800
+ * bootstrap-modal.js v2.3.0
801
+ * http://twitter.github.com/bootstrap/javascript.html#modals
802
+ * =========================================================
803
+ * Copyright 2012 Twitter, Inc.
804
+ *
805
+ * Licensed under the Apache License, Version 2.0 (the "License");
806
+ * you may not use this file except in compliance with the License.
807
+ * You may obtain a copy of the License at
808
+ *
809
+ * http://www.apache.org/licenses/LICENSE-2.0
810
+ *
811
+ * Unless required by applicable law or agreed to in writing, software
812
+ * distributed under the License is distributed on an "AS IS" BASIS,
813
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
814
+ * See the License for the specific language governing permissions and
815
+ * limitations under the License.
816
+ * ========================================================= */
817
+
818
+
819
+ !function ($) {
820
+
821
+ "use strict"; // jshint ;_;
822
+
823
+
824
+ /* MODAL CLASS DEFINITION
825
+ * ====================== */
826
+
827
+ var Modal = function (element, options) {
828
+ this.options = options
829
+ this.$element = $(element)
830
+ .delegate('[data-dismiss="modal"]', 'click.dismiss.modal', $.proxy(this.hide, this))
831
+ this.options.remote && this.$element.find('.modal-body').load(this.options.remote)
832
+ }
833
+
834
+ Modal.prototype = {
835
+
836
+ constructor: Modal
837
+
838
+ , toggle: function () {
839
+ return this[!this.isShown ? 'show' : 'hide']()
840
+ }
841
+
842
+ , show: function () {
843
+ var that = this
844
+ , e = $.Event('show')
845
+
846
+ this.$element.trigger(e)
847
+
848
+ if (this.isShown || e.isDefaultPrevented()) return
849
+
850
+ this.isShown = true
851
+
852
+ this.escape()
853
+
854
+ this.backdrop(function () {
855
+ var transition = $.support.transition && that.$element.hasClass('fade')
856
+
857
+ if (!that.$element.parent().length) {
858
+ that.$element.appendTo(document.body) //don't move modals dom position
859
+ }
860
+
861
+ that.$element.show()
862
+
863
+ if (transition) {
864
+ that.$element[0].offsetWidth // force reflow
865
+ }
866
+
867
+ that.$element
868
+ .addClass('in')
869
+ .attr('aria-hidden', false)
870
+
871
+ that.enforceFocus()
872
+
873
+ transition ?
874
+ that.$element.one($.support.transition.end, function () { that.$element.focus().trigger('shown') }) :
875
+ that.$element.focus().trigger('shown')
876
+
877
+ })
878
+ }
879
+
880
+ , hide: function (e) {
881
+ e && e.preventDefault()
882
+
883
+ var that = this
884
+
885
+ e = $.Event('hide')
886
+
887
+ this.$element.trigger(e)
888
+
889
+ if (!this.isShown || e.isDefaultPrevented()) return
890
+
891
+ this.isShown = false
892
+
893
+ this.escape()
894
+
895
+ $(document).off('focusin.modal')
896
+
897
+ this.$element
898
+ .removeClass('in')
899
+ .attr('aria-hidden', true)
900
+
901
+ $.support.transition && this.$element.hasClass('fade') ?
902
+ this.hideWithTransition() :
903
+ this.hideModal()
904
+ }
905
+
906
+ , enforceFocus: function () {
907
+ var that = this
908
+ $(document).on('focusin.modal', function (e) {
909
+ if (that.$element[0] !== e.target && !that.$element.has(e.target).length && !$(e.target.parentNode).hasClass('select2-search')) {
910
+ that.$element.focus()
911
+ }
912
+ })
913
+ }
914
+
915
+ , escape: function () {
916
+ var that = this
917
+ if (this.isShown && this.options.keyboard) {
918
+ this.$element.on('keyup.dismiss.modal', function ( e ) {
919
+ e.which == 27 && that.hide()
920
+ })
921
+ } else if (!this.isShown) {
922
+ this.$element.off('keyup.dismiss.modal')
923
+ }
924
+ }
925
+
926
+ , hideWithTransition: function () {
927
+ var that = this
928
+ , timeout = setTimeout(function () {
929
+ that.$element.off($.support.transition.end)
930
+ that.hideModal()
931
+ }, 500)
932
+
933
+ this.$element.one($.support.transition.end, function () {
934
+ clearTimeout(timeout)
935
+ that.hideModal()
936
+ })
937
+ }
938
+
939
+ , hideModal: function () {
940
+ var that = this
941
+ this.$element.hide()
942
+ this.backdrop(function () {
943
+ that.removeBackdrop()
944
+ that.$element.trigger('hidden')
945
+ })
946
+ }
947
+
948
+ , removeBackdrop: function () {
949
+ this.$backdrop.remove()
950
+ this.$backdrop = null
951
+ }
952
+
953
+ , backdrop: function (callback) {
954
+ var that = this
955
+ , animate = this.$element.hasClass('fade') ? 'fade' : ''
956
+
957
+ if (this.isShown && this.options.backdrop) {
958
+ var doAnimate = $.support.transition && animate
959
+
960
+ this.$backdrop = $('<div class="modal-backdrop ' + animate + '" />')
961
+ .appendTo(document.body)
962
+
963
+ this.$backdrop.click(
964
+ this.options.backdrop == 'static' ?
965
+ $.proxy(this.$element[0].focus, this.$element[0])
966
+ : $.proxy(this.hide, this)
967
+ )
968
+
969
+ if (doAnimate) this.$backdrop[0].offsetWidth // force reflow
970
+
971
+ this.$backdrop.addClass('in')
972
+
973
+ if (!callback) return
974
+
975
+ doAnimate ?
976
+ this.$backdrop.one($.support.transition.end, callback) :
977
+ callback()
978
+
979
+ } else if (!this.isShown && this.$backdrop) {
980
+ this.$backdrop.removeClass('in')
981
+
982
+ $.support.transition && this.$element.hasClass('fade')?
983
+ this.$backdrop.one($.support.transition.end, callback) :
984
+ callback()
985
+
986
+ } else if (callback) {
987
+ callback()
988
+ }
989
+ }
990
+ }
991
+
992
+
993
+ /* MODAL PLUGIN DEFINITION
994
+ * ======================= */
995
+
996
+ var old = $.fn.modal
997
+
998
+ $.fn.modal = function (option) {
999
+ return this.each(function () {
1000
+ var $this = $(this)
1001
+ , data = $this.data('modal')
1002
+ , options = $.extend({}, $.fn.modal.defaults, $this.data(), typeof option == 'object' && option)
1003
+ if (!data) $this.data('modal', (data = new Modal(this, options)))
1004
+ if (typeof option == 'string') data[option]()
1005
+ else if (options.show) data.show()
1006
+ })
1007
+ }
1008
+
1009
+ $.fn.modal.defaults = {
1010
+ backdrop: true
1011
+ , keyboard: true
1012
+ , show: true
1013
+ }
1014
+
1015
+ $.fn.modal.Constructor = Modal
1016
+
1017
+
1018
+ /* MODAL NO CONFLICT
1019
+ * ================= */
1020
+
1021
+ $.fn.modal.noConflict = function () {
1022
+ $.fn.modal = old
1023
+ return this
1024
+ }
1025
+
1026
+
1027
+ /* MODAL DATA-API
1028
+ * ============== */
1029
+
1030
+ $(document).on('click.modal.data-api', '[data-toggle="modal"]', function (e) {
1031
+ var $this = $(this)
1032
+ , href = $this.attr('href')
1033
+ , $target = $($this.attr('data-target') || (href && href.replace(/.*(?=#[^\s]+$)/, ''))) //strip for ie7
1034
+ , option = $target.data('modal') ? 'toggle' : $.extend({ remote:!/#/.test(href) && href }, $target.data(), $this.data())
1035
+
1036
+ e.preventDefault()
1037
+
1038
+ $target
1039
+ .modal(option)
1040
+ .one('hide', function () {
1041
+ $this.focus()
1042
+ })
1043
+ })
1044
+
1045
+ }(window.jQuery);
1046
+ /* ===========================================================
1047
+ * bootstrap-tooltip.js v2.3.0
1048
+ * http://twitter.github.com/bootstrap/javascript.html#tooltips
1049
+ * Inspired by the original jQuery.tipsy by Jason Frame
1050
+ * ===========================================================
1051
+ * Copyright 2012 Twitter, Inc.
1052
+ *
1053
+ * Licensed under the Apache License, Version 2.0 (the "License");
1054
+ * you may not use this file except in compliance with the License.
1055
+ * You may obtain a copy of the License at
1056
+ *
1057
+ * http://www.apache.org/licenses/LICENSE-2.0
1058
+ *
1059
+ * Unless required by applicable law or agreed to in writing, software
1060
+ * distributed under the License is distributed on an "AS IS" BASIS,
1061
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1062
+ * See the License for the specific language governing permissions and
1063
+ * limitations under the License.
1064
+ * ========================================================== */
1065
+
1066
+
1067
+ !function ($) {
1068
+
1069
+ "use strict"; // jshint ;_;
1070
+
1071
+
1072
+ /* TOOLTIP PUBLIC CLASS DEFINITION
1073
+ * =============================== */
1074
+
1075
+ var Tooltip = function (element, options) {
1076
+ this.init('tooltip', element, options)
1077
+ }
1078
+
1079
+ Tooltip.prototype = {
1080
+
1081
+ constructor: Tooltip
1082
+
1083
+ , init: function (type, element, options) {
1084
+ var eventIn
1085
+ , eventOut
1086
+ , triggers
1087
+ , trigger
1088
+ , i
1089
+
1090
+ this.type = type
1091
+ this.$element = $(element)
1092
+ this.options = this.getOptions(options)
1093
+ this.enabled = true
1094
+
1095
+ triggers = this.options.trigger.split(' ')
1096
+
1097
+ for (i = triggers.length; i--;) {
1098
+ trigger = triggers[i]
1099
+ if (trigger == 'click') {
1100
+ this.$element.on('click.' + this.type, this.options.selector, $.proxy(this.toggle, this))
1101
+ } else if (trigger != 'manual') {
1102
+ eventIn = trigger == 'hover' ? 'mouseenter' : 'focus'
1103
+ eventOut = trigger == 'hover' ? 'mouseleave' : 'blur'
1104
+ this.$element.on(eventIn + '.' + this.type, this.options.selector, $.proxy(this.enter, this))
1105
+ this.$element.on(eventOut + '.' + this.type, this.options.selector, $.proxy(this.leave, this))
1106
+ }
1107
+ }
1108
+
1109
+ this.options.selector ?
1110
+ (this._options = $.extend({}, this.options, { trigger: 'manual', selector: '' })) :
1111
+ this.fixTitle()
1112
+ }
1113
+
1114
+ , getOptions: function (options) {
1115
+ options = $.extend({}, $.fn[this.type].defaults, this.$element.data(), options)
1116
+
1117
+ if (options.delay && typeof options.delay == 'number') {
1118
+ options.delay = {
1119
+ show: options.delay
1120
+ , hide: options.delay
1121
+ }
1122
+ }
1123
+
1124
+ return options
1125
+ }
1126
+
1127
+ , enter: function (e) {
1128
+ var self = $(e.currentTarget)[this.type](this._options).data(this.type)
1129
+
1130
+ if (!self.options.delay || !self.options.delay.show) return self.show()
1131
+
1132
+ clearTimeout(this.timeout)
1133
+ self.hoverState = 'in'
1134
+ this.timeout = setTimeout(function() {
1135
+ if (self.hoverState == 'in') self.show()
1136
+ }, self.options.delay.show)
1137
+ }
1138
+
1139
+ , leave: function (e) {
1140
+ var self = $(e.currentTarget)[this.type](this._options).data(this.type)
1141
+
1142
+ if (this.timeout) clearTimeout(this.timeout)
1143
+ if (!self.options.delay || !self.options.delay.hide) return self.hide()
1144
+
1145
+ self.hoverState = 'out'
1146
+ this.timeout = setTimeout(function() {
1147
+ if (self.hoverState == 'out') self.hide()
1148
+ }, self.options.delay.hide)
1149
+ }
1150
+
1151
+ , show: function () {
1152
+ var $tip
1153
+ , pos
1154
+ , actualWidth
1155
+ , actualHeight
1156
+ , placement
1157
+ , tp
1158
+ , e = $.Event('show')
1159
+
1160
+ if (this.hasContent() && this.enabled) {
1161
+ this.$element.trigger(e)
1162
+ if (e.isDefaultPrevented()) return
1163
+ $tip = this.tip()
1164
+ this.setContent()
1165
+
1166
+ if (this.options.animation) {
1167
+ $tip.addClass('fade')
1168
+ }
1169
+
1170
+ placement = typeof this.options.placement == 'function' ?
1171
+ this.options.placement.call(this, $tip[0], this.$element[0]) :
1172
+ this.options.placement
1173
+
1174
+ $tip
1175
+ .detach()
1176
+ .css({ top: 0, left: 0, display: 'block' })
1177
+
1178
+ this.options.container ? $tip.appendTo(this.options.container) : $tip.insertAfter(this.$element)
1179
+
1180
+ pos = this.getPosition()
1181
+
1182
+ actualWidth = $tip[0].offsetWidth
1183
+ actualHeight = $tip[0].offsetHeight
1184
+
1185
+ switch (placement) {
1186
+ case 'bottom':
1187
+ tp = {top: pos.top + pos.height, left: pos.left + pos.width / 2 - actualWidth / 2}
1188
+ break
1189
+ case 'top':
1190
+ tp = {top: pos.top - actualHeight, left: pos.left + pos.width / 2 - actualWidth / 2}
1191
+ break
1192
+ case 'left':
1193
+ tp = {top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left - actualWidth}
1194
+ break
1195
+ case 'right':
1196
+ tp = {top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left + pos.width}
1197
+ break
1198
+ }
1199
+
1200
+ this.applyPlacement(tp, placement)
1201
+ this.$element.trigger('shown')
1202
+ }
1203
+ }
1204
+
1205
+ , applyPlacement: function(offset, placement){
1206
+ var $tip = this.tip()
1207
+ , width = $tip[0].offsetWidth
1208
+ , height = $tip[0].offsetHeight
1209
+ , actualWidth
1210
+ , actualHeight
1211
+ , delta
1212
+ , replace
1213
+
1214
+ $tip
1215
+ .offset(offset)
1216
+ .addClass(placement)
1217
+ .addClass('in')
1218
+
1219
+ actualWidth = $tip[0].offsetWidth
1220
+ actualHeight = $tip[0].offsetHeight
1221
+
1222
+ if (placement == 'top' && actualHeight != height) {
1223
+ offset.top = offset.top + height - actualHeight
1224
+ replace = true
1225
+ }
1226
+
1227
+ if (placement == 'bottom' || placement == 'top') {
1228
+ delta = 0
1229
+
1230
+ if (offset.left < 0){
1231
+ delta = offset.left * -2
1232
+ offset.left = 0
1233
+ $tip.offset(offset)
1234
+ actualWidth = $tip[0].offsetWidth
1235
+ actualHeight = $tip[0].offsetHeight
1236
+ }
1237
+
1238
+ this.replaceArrow(delta - width + actualWidth, actualWidth, 'left')
1239
+ } else {
1240
+ this.replaceArrow(actualHeight - height, actualHeight, 'top')
1241
+ }
1242
+
1243
+ if (replace) $tip.offset(offset)
1244
+ }
1245
+
1246
+ , replaceArrow: function(delta, dimension, position){
1247
+ this
1248
+ .arrow()
1249
+ .css(position, delta ? (50 * (1 - delta / dimension) + "%") : '')
1250
+ }
1251
+
1252
+ , setContent: function () {
1253
+ var $tip = this.tip()
1254
+ , title = this.getTitle()
1255
+
1256
+ $tip.find('.tooltip-inner')[this.options.html ? 'html' : 'text'](title)
1257
+ $tip.removeClass('fade in top bottom left right')
1258
+ }
1259
+
1260
+ , hide: function () {
1261
+ var that = this
1262
+ , $tip = this.tip()
1263
+ , e = $.Event('hide')
1264
+
1265
+ this.$element.trigger(e)
1266
+ if (e.isDefaultPrevented()) return
1267
+
1268
+ $tip.removeClass('in')
1269
+
1270
+ function removeWithAnimation() {
1271
+ var timeout = setTimeout(function () {
1272
+ $tip.off($.support.transition.end).detach()
1273
+ }, 500)
1274
+
1275
+ $tip.one($.support.transition.end, function () {
1276
+ clearTimeout(timeout)
1277
+ $tip.detach()
1278
+ })
1279
+ }
1280
+
1281
+ $.support.transition && this.$tip.hasClass('fade') ?
1282
+ removeWithAnimation() :
1283
+ $tip.detach()
1284
+
1285
+ this.$element.trigger('hidden')
1286
+
1287
+ return this
1288
+ }
1289
+
1290
+ , fixTitle: function () {
1291
+ var $e = this.$element
1292
+ if ($e.attr('title') || typeof($e.attr('data-original-title')) != 'string') {
1293
+ $e.attr('data-original-title', $e.attr('title') || '').attr('title', '')
1294
+ }
1295
+ }
1296
+
1297
+ , hasContent: function () {
1298
+ return this.getTitle()
1299
+ }
1300
+
1301
+ , getPosition: function () {
1302
+ var el = this.$element[0]
1303
+ return $.extend({}, (typeof el.getBoundingClientRect == 'function') ? el.getBoundingClientRect() : {
1304
+ width: el.offsetWidth
1305
+ , height: el.offsetHeight
1306
+ }, this.$element.offset())
1307
+ }
1308
+
1309
+ , getTitle: function () {
1310
+ var title
1311
+ , $e = this.$element
1312
+ , o = this.options
1313
+
1314
+ title = $e.attr('data-original-title')
1315
+ || (typeof o.title == 'function' ? o.title.call($e[0]) : o.title)
1316
+
1317
+ return title
1318
+ }
1319
+
1320
+ , tip: function () {
1321
+ return this.$tip = this.$tip || $(this.options.template)
1322
+ }
1323
+
1324
+ , arrow: function(){
1325
+ return this.$arrow = this.$arrow || this.tip().find(".tooltip-arrow")
1326
+ }
1327
+
1328
+ , validate: function () {
1329
+ if (!this.$element[0].parentNode) {
1330
+ this.hide()
1331
+ this.$element = null
1332
+ this.options = null
1333
+ }
1334
+ }
1335
+
1336
+ , enable: function () {
1337
+ this.enabled = true
1338
+ }
1339
+
1340
+ , disable: function () {
1341
+ this.enabled = false
1342
+ }
1343
+
1344
+ , toggleEnabled: function () {
1345
+ this.enabled = !this.enabled
1346
+ }
1347
+
1348
+ , toggle: function (e) {
1349
+ var self = e ? $(e.currentTarget)[this.type](this._options).data(this.type) : this
1350
+ self.tip().hasClass('in') ? self.hide() : self.show()
1351
+ }
1352
+
1353
+ , destroy: function () {
1354
+ this.hide().$element.off('.' + this.type).removeData(this.type)
1355
+ }
1356
+
1357
+ }
1358
+
1359
+
1360
+ /* TOOLTIP PLUGIN DEFINITION
1361
+ * ========================= */
1362
+
1363
+ var old = $.fn.tooltip
1364
+
1365
+ $.fn.tooltip = function ( option ) {
1366
+ return this.each(function () {
1367
+ var $this = $(this)
1368
+ , data = $this.data('tooltip')
1369
+ , options = typeof option == 'object' && option
1370
+ if (!data) $this.data('tooltip', (data = new Tooltip(this, options)))
1371
+ if (typeof option == 'string') data[option]()
1372
+ })
1373
+ }
1374
+
1375
+ $.fn.tooltip.Constructor = Tooltip
1376
+
1377
+ $.fn.tooltip.defaults = {
1378
+ animation: true
1379
+ , placement: 'top'
1380
+ , selector: false
1381
+ , template: '<div class="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>'
1382
+ , trigger: 'hover focus'
1383
+ , title: ''
1384
+ , delay: 0
1385
+ , html: false
1386
+ , container: false
1387
+ }
1388
+
1389
+
1390
+ /* TOOLTIP NO CONFLICT
1391
+ * =================== */
1392
+
1393
+ $.fn.tooltip.noConflict = function () {
1394
+ $.fn.tooltip = old
1395
+ return this
1396
+ }
1397
+
1398
+ }(window.jQuery);
1399
+ /* ===========================================================
1400
+ * bootstrap-popover.js v2.3.0
1401
+ * http://twitter.github.com/bootstrap/javascript.html#popovers
1402
+ * ===========================================================
1403
+ * Copyright 2012 Twitter, Inc.
1404
+ *
1405
+ * Licensed under the Apache License, Version 2.0 (the "License");
1406
+ * you may not use this file except in compliance with the License.
1407
+ * You may obtain a copy of the License at
1408
+ *
1409
+ * http://www.apache.org/licenses/LICENSE-2.0
1410
+ *
1411
+ * Unless required by applicable law or agreed to in writing, software
1412
+ * distributed under the License is distributed on an "AS IS" BASIS,
1413
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1414
+ * See the License for the specific language governing permissions and
1415
+ * limitations under the License.
1416
+ * =========================================================== */
1417
+
1418
+
1419
+ !function ($) {
1420
+
1421
+ "use strict"; // jshint ;_;
1422
+
1423
+
1424
+ /* POPOVER PUBLIC CLASS DEFINITION
1425
+ * =============================== */
1426
+
1427
+ var Popover = function (element, options) {
1428
+ this.init('popover', element, options)
1429
+ }
1430
+
1431
+
1432
+ /* NOTE: POPOVER EXTENDS BOOTSTRAP-TOOLTIP.js
1433
+ ========================================== */
1434
+
1435
+ Popover.prototype = $.extend({}, $.fn.tooltip.Constructor.prototype, {
1436
+
1437
+ constructor: Popover
1438
+
1439
+ , setContent: function () {
1440
+ var $tip = this.tip()
1441
+ , title = this.getTitle()
1442
+ , content = this.getContent()
1443
+
1444
+ $tip.find('.popover-title')[this.options.html ? 'html' : 'text'](title)
1445
+ $tip.find('.popover-content')[this.options.html ? 'html' : 'text'](content)
1446
+
1447
+ $tip.removeClass('fade top bottom left right in')
1448
+ }
1449
+
1450
+ , hasContent: function () {
1451
+ return this.getTitle() || this.getContent()
1452
+ }
1453
+
1454
+ , getContent: function () {
1455
+ var content
1456
+ , $e = this.$element
1457
+ , o = this.options
1458
+
1459
+ content = (typeof o.content == 'function' ? o.content.call($e[0]) : o.content)
1460
+ || $e.attr('data-content')
1461
+
1462
+ return content
1463
+ }
1464
+
1465
+ , tip: function () {
1466
+ if (!this.$tip) {
1467
+ this.$tip = $(this.options.template)
1468
+ }
1469
+ return this.$tip
1470
+ }
1471
+
1472
+ , destroy: function () {
1473
+ this.hide().$element.off('.' + this.type).removeData(this.type)
1474
+ }
1475
+
1476
+ })
1477
+
1478
+
1479
+ /* POPOVER PLUGIN DEFINITION
1480
+ * ======================= */
1481
+
1482
+ var old = $.fn.popover
1483
+
1484
+ $.fn.popover = function (option) {
1485
+ return this.each(function () {
1486
+ var $this = $(this)
1487
+ , data = $this.data('popover')
1488
+ , options = typeof option == 'object' && option
1489
+ if (!data) $this.data('popover', (data = new Popover(this, options)))
1490
+ if (typeof option == 'string') data[option]()
1491
+ })
1492
+ }
1493
+
1494
+ $.fn.popover.Constructor = Popover
1495
+
1496
+ $.fn.popover.defaults = $.extend({} , $.fn.tooltip.defaults, {
1497
+ placement: 'right'
1498
+ , trigger: 'click'
1499
+ , content: ''
1500
+ , template: '<div class="popover"><div class="arrow"></div><h3 class="popover-title"></h3><div class="popover-content"></div></div>'
1501
+ })
1502
+
1503
+
1504
+ /* POPOVER NO CONFLICT
1505
+ * =================== */
1506
+
1507
+ $.fn.popover.noConflict = function () {
1508
+ $.fn.popover = old
1509
+ return this
1510
+ }
1511
+
1512
+ }(window.jQuery);
1513
+ /* =============================================================
1514
+ * bootstrap-scrollspy.js v2.3.0
1515
+ * http://twitter.github.com/bootstrap/javascript.html#scrollspy
1516
+ * =============================================================
1517
+ * Copyright 2012 Twitter, Inc.
1518
+ *
1519
+ * Licensed under the Apache License, Version 2.0 (the "License");
1520
+ * you may not use this file except in compliance with the License.
1521
+ * You may obtain a copy of the License at
1522
+ *
1523
+ * http://www.apache.org/licenses/LICENSE-2.0
1524
+ *
1525
+ * Unless required by applicable law or agreed to in writing, software
1526
+ * distributed under the License is distributed on an "AS IS" BASIS,
1527
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1528
+ * See the License for the specific language governing permissions and
1529
+ * limitations under the License.
1530
+ * ============================================================== */
1531
+
1532
+
1533
+ !function ($) {
1534
+
1535
+ "use strict"; // jshint ;_;
1536
+
1537
+
1538
+ /* SCROLLSPY CLASS DEFINITION
1539
+ * ========================== */
1540
+
1541
+ function ScrollSpy(element, options) {
1542
+ var process = $.proxy(this.process, this)
1543
+ , $element = $(element).is('body') ? $(window) : $(element)
1544
+ , href
1545
+ this.options = $.extend({}, $.fn.scrollspy.defaults, options)
1546
+ this.$scrollElement = $element.on('scroll.scroll-spy.data-api', process)
1547
+ this.selector = (this.options.target
1548
+ || ((href = $(element).attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '')) //strip for ie7
1549
+ || '') + ' .nav li > a'
1550
+ this.$body = $('body')
1551
+ this.refresh()
1552
+ this.process()
1553
+ }
1554
+
1555
+ ScrollSpy.prototype = {
1556
+
1557
+ constructor: ScrollSpy
1558
+
1559
+ , refresh: function () {
1560
+ var self = this
1561
+ , $targets
1562
+
1563
+ this.offsets = $([])
1564
+ this.targets = $([])
1565
+
1566
+ $targets = this.$body
1567
+ .find(this.selector)
1568
+ .map(function () {
1569
+ var $el = $(this)
1570
+ , href = $el.data('target') || $el.attr('href')
1571
+ , $href = /^#\w/.test(href) && $(href)
1572
+ return ( $href
1573
+ && $href.length
1574
+ && [[ $href.position().top + (!$.isWindow(self.$scrollElement.get(0)) && self.$scrollElement.scrollTop()), href ]] ) || null
1575
+ })
1576
+ .sort(function (a, b) { return a[0] - b[0] })
1577
+ .each(function () {
1578
+ self.offsets.push(this[0])
1579
+ self.targets.push(this[1])
1580
+ })
1581
+ }
1582
+
1583
+ , process: function () {
1584
+ var scrollTop = this.$scrollElement.scrollTop() + this.options.offset
1585
+ , scrollHeight = this.$scrollElement[0].scrollHeight || this.$body[0].scrollHeight
1586
+ , maxScroll = scrollHeight - this.$scrollElement.height()
1587
+ , offsets = this.offsets
1588
+ , targets = this.targets
1589
+ , activeTarget = this.activeTarget
1590
+ , i
1591
+
1592
+ if (scrollTop >= maxScroll) {
1593
+ return activeTarget != (i = targets.last()[0])
1594
+ && this.activate ( i )
1595
+ }
1596
+
1597
+ for (i = offsets.length; i--;) {
1598
+ activeTarget != targets[i]
1599
+ && scrollTop >= offsets[i]
1600
+ && (!offsets[i + 1] || scrollTop <= offsets[i + 1])
1601
+ && this.activate( targets[i] )
1602
+ }
1603
+ }
1604
+
1605
+ , activate: function (target) {
1606
+ var active
1607
+ , selector
1608
+
1609
+ this.activeTarget = target
1610
+
1611
+ $(this.selector)
1612
+ .parent('.active')
1613
+ .removeClass('active')
1614
+
1615
+ selector = this.selector
1616
+ + '[data-target="' + target + '"],'
1617
+ + this.selector + '[href="' + target + '"]'
1618
+
1619
+ active = $(selector)
1620
+ .parent('li')
1621
+ .addClass('active')
1622
+
1623
+ if (active.parent('.dropdown-menu').length) {
1624
+ active = active.closest('li.dropdown').addClass('active')
1625
+ }
1626
+
1627
+ active.trigger('activate')
1628
+ }
1629
+
1630
+ }
1631
+
1632
+
1633
+ /* SCROLLSPY PLUGIN DEFINITION
1634
+ * =========================== */
1635
+
1636
+ var old = $.fn.scrollspy
1637
+
1638
+ $.fn.scrollspy = function (option) {
1639
+ return this.each(function () {
1640
+ var $this = $(this)
1641
+ , data = $this.data('scrollspy')
1642
+ , options = typeof option == 'object' && option
1643
+ if (!data) $this.data('scrollspy', (data = new ScrollSpy(this, options)))
1644
+ if (typeof option == 'string') data[option]()
1645
+ })
1646
+ }
1647
+
1648
+ $.fn.scrollspy.Constructor = ScrollSpy
1649
+
1650
+ $.fn.scrollspy.defaults = {
1651
+ offset: 10
1652
+ }
1653
+
1654
+
1655
+ /* SCROLLSPY NO CONFLICT
1656
+ * ===================== */
1657
+
1658
+ $.fn.scrollspy.noConflict = function () {
1659
+ $.fn.scrollspy = old
1660
+ return this
1661
+ }
1662
+
1663
+
1664
+ /* SCROLLSPY DATA-API
1665
+ * ================== */
1666
+
1667
+ $(window).on('load', function () {
1668
+ $('[data-spy="scroll"]').each(function () {
1669
+ var $spy = $(this)
1670
+ $spy.scrollspy($spy.data())
1671
+ })
1672
+ })
1673
+
1674
+ }(window.jQuery);/* ========================================================
1675
+ * bootstrap-tab.js v2.3.0
1676
+ * http://twitter.github.com/bootstrap/javascript.html#tabs
1677
+ * ========================================================
1678
+ * Copyright 2012 Twitter, Inc.
1679
+ *
1680
+ * Licensed under the Apache License, Version 2.0 (the "License");
1681
+ * you may not use this file except in compliance with the License.
1682
+ * You may obtain a copy of the License at
1683
+ *
1684
+ * http://www.apache.org/licenses/LICENSE-2.0
1685
+ *
1686
+ * Unless required by applicable law or agreed to in writing, software
1687
+ * distributed under the License is distributed on an "AS IS" BASIS,
1688
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1689
+ * See the License for the specific language governing permissions and
1690
+ * limitations under the License.
1691
+ * ======================================================== */
1692
+
1693
+
1694
+ !function ($) {
1695
+
1696
+ "use strict"; // jshint ;_;
1697
+
1698
+
1699
+ /* TAB CLASS DEFINITION
1700
+ * ==================== */
1701
+
1702
+ var Tab = function (element) {
1703
+ this.element = $(element)
1704
+ }
1705
+
1706
+ Tab.prototype = {
1707
+
1708
+ constructor: Tab
1709
+
1710
+ , show: function () {
1711
+ var $this = this.element
1712
+ , $ul = $this.closest('ul:not(.dropdown-menu)')
1713
+ , selector = $this.attr('data-target')
1714
+ , previous
1715
+ , $target
1716
+ , e
1717
+
1718
+ if (!selector) {
1719
+ selector = $this.attr('href')
1720
+ selector = selector && selector.replace(/.*(?=#[^\s]*$)/, '') //strip for ie7
1721
+ }
1722
+
1723
+ if ( $this.parent('li').hasClass('active') ) return
1724
+
1725
+ previous = $ul.find('.active:last a')[0]
1726
+
1727
+ e = $.Event('show', {
1728
+ relatedTarget: previous
1729
+ })
1730
+
1731
+ $this.trigger(e)
1732
+
1733
+ if (e.isDefaultPrevented()) return
1734
+
1735
+ $target = $(selector)
1736
+
1737
+ this.activate($this.parent('li'), $ul)
1738
+ this.activate($target, $target.parent(), function () {
1739
+ $this.trigger({
1740
+ type: 'shown'
1741
+ , relatedTarget: previous
1742
+ })
1743
+ })
1744
+ }
1745
+
1746
+ , activate: function ( element, container, callback) {
1747
+ var $active = container.find('> .active')
1748
+ , transition = callback
1749
+ && $.support.transition
1750
+ && $active.hasClass('fade')
1751
+
1752
+ function next() {
1753
+ $active
1754
+ .removeClass('active')
1755
+ .find('> .dropdown-menu > .active')
1756
+ .removeClass('active')
1757
+
1758
+ element.addClass('active')
1759
+
1760
+ if (transition) {
1761
+ element[0].offsetWidth // reflow for transition
1762
+ element.addClass('in')
1763
+ } else {
1764
+ element.removeClass('fade')
1765
+ }
1766
+
1767
+ if ( element.parent('.dropdown-menu') ) {
1768
+ element.closest('li.dropdown').addClass('active')
1769
+ }
1770
+
1771
+ callback && callback()
1772
+ }
1773
+
1774
+ transition ?
1775
+ $active.one($.support.transition.end, next) :
1776
+ next()
1777
+
1778
+ $active.removeClass('in')
1779
+ }
1780
+ }
1781
+
1782
+
1783
+ /* TAB PLUGIN DEFINITION
1784
+ * ===================== */
1785
+
1786
+ var old = $.fn.tab
1787
+
1788
+ $.fn.tab = function ( option ) {
1789
+ return this.each(function () {
1790
+ var $this = $(this)
1791
+ , data = $this.data('tab')
1792
+ if (!data) $this.data('tab', (data = new Tab(this)))
1793
+ if (typeof option == 'string') data[option]()
1794
+ })
1795
+ }
1796
+
1797
+ $.fn.tab.Constructor = Tab
1798
+
1799
+
1800
+ /* TAB NO CONFLICT
1801
+ * =============== */
1802
+
1803
+ $.fn.tab.noConflict = function () {
1804
+ $.fn.tab = old
1805
+ return this
1806
+ }
1807
+
1808
+
1809
+ /* TAB DATA-API
1810
+ * ============ */
1811
+
1812
+ $(document).on('click.tab.data-api', '[data-toggle="tab"], [data-toggle="pill"]', function (e) {
1813
+ e.preventDefault()
1814
+ $(this).tab('show')
1815
+ })
1816
+
1817
+ }(window.jQuery);/* =============================================================
1818
+ * bootstrap-typeahead.js v2.3.0
1819
+ * http://twitter.github.com/bootstrap/javascript.html#typeahead
1820
+ * =============================================================
1821
+ * Copyright 2012 Twitter, Inc.
1822
+ *
1823
+ * Licensed under the Apache License, Version 2.0 (the "License");
1824
+ * you may not use this file except in compliance with the License.
1825
+ * You may obtain a copy of the License at
1826
+ *
1827
+ * http://www.apache.org/licenses/LICENSE-2.0
1828
+ *
1829
+ * Unless required by applicable law or agreed to in writing, software
1830
+ * distributed under the License is distributed on an "AS IS" BASIS,
1831
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1832
+ * See the License for the specific language governing permissions and
1833
+ * limitations under the License.
1834
+ * ============================================================ */
1835
+
1836
+
1837
+ !function($){
1838
+
1839
+ "use strict"; // jshint ;_;
1840
+
1841
+
1842
+ /* TYPEAHEAD PUBLIC CLASS DEFINITION
1843
+ * ================================= */
1844
+
1845
+ var Typeahead = function (element, options) {
1846
+ this.$element = $(element)
1847
+ this.options = $.extend({}, $.fn.typeahead.defaults, options)
1848
+ this.matcher = this.options.matcher || this.matcher
1849
+ this.sorter = this.options.sorter || this.sorter
1850
+ this.highlighter = this.options.highlighter || this.highlighter
1851
+ this.updater = this.options.updater || this.updater
1852
+ this.source = this.options.source
1853
+ this.$menu = $(this.options.menu)
1854
+ this.shown = false
1855
+ this.listen()
1856
+ }
1857
+
1858
+ Typeahead.prototype = {
1859
+
1860
+ constructor: Typeahead
1861
+
1862
+ , select: function () {
1863
+ var val = this.$menu.find('.active').attr('data-value')
1864
+ this.$element
1865
+ .val(this.updater(val))
1866
+ .change()
1867
+ return this.hide()
1868
+ }
1869
+
1870
+ , updater: function (item) {
1871
+ return item
1872
+ }
1873
+
1874
+ , show: function () {
1875
+ var pos = $.extend({}, this.$element.position(), {
1876
+ height: this.$element[0].offsetHeight
1877
+ })
1878
+
1879
+ this.$menu
1880
+ .insertAfter(this.$element)
1881
+ .css({
1882
+ top: pos.top + pos.height
1883
+ , left: pos.left
1884
+ })
1885
+ .show()
1886
+
1887
+ this.shown = true
1888
+ return this
1889
+ }
1890
+
1891
+ , hide: function () {
1892
+ this.$menu.hide()
1893
+ this.shown = false
1894
+ return this
1895
+ }
1896
+
1897
+ , lookup: function (event) {
1898
+ var items
1899
+
1900
+ this.query = this.$element.val()
1901
+
1902
+ if (!this.query || this.query.length < this.options.minLength) {
1903
+ return this.shown ? this.hide() : this
1904
+ }
1905
+
1906
+ items = $.isFunction(this.source) ? this.source(this.query, $.proxy(this.process, this)) : this.source
1907
+
1908
+ return items ? this.process(items) : this
1909
+ }
1910
+
1911
+ , process: function (items) {
1912
+ var that = this
1913
+
1914
+ items = $.grep(items, function (item) {
1915
+ return that.matcher(item)
1916
+ })
1917
+
1918
+ items = this.sorter(items)
1919
+
1920
+ if (!items.length) {
1921
+ return this.shown ? this.hide() : this
1922
+ }
1923
+
1924
+ return this.render(items.slice(0, this.options.items)).show()
1925
+ }
1926
+
1927
+ , matcher: function (item) {
1928
+ return ~item.toLowerCase().indexOf(this.query.toLowerCase())
1929
+ }
1930
+
1931
+ , sorter: function (items) {
1932
+ var beginswith = []
1933
+ , caseSensitive = []
1934
+ , caseInsensitive = []
1935
+ , item
1936
+
1937
+ while (item = items.shift()) {
1938
+ if (!item.toLowerCase().indexOf(this.query.toLowerCase())) beginswith.push(item)
1939
+ else if (~item.indexOf(this.query)) caseSensitive.push(item)
1940
+ else caseInsensitive.push(item)
1941
+ }
1942
+
1943
+ return beginswith.concat(caseSensitive, caseInsensitive)
1944
+ }
1945
+
1946
+ , highlighter: function (item) {
1947
+ var query = this.query.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g, '\\$&')
1948
+ return item.replace(new RegExp('(' + query + ')', 'ig'), function ($1, match) {
1949
+ return '<strong>' + match + '</strong>'
1950
+ })
1951
+ }
1952
+
1953
+ , render: function (items) {
1954
+ var that = this
1955
+
1956
+ items = $(items).map(function (i, item) {
1957
+ i = $(that.options.item).attr('data-value', item)
1958
+ i.find('a').html(that.highlighter(item))
1959
+ return i[0]
1960
+ })
1961
+
1962
+ items.first().addClass('active')
1963
+ this.$menu.html(items)
1964
+ return this
1965
+ }
1966
+
1967
+ , next: function (event) {
1968
+ var active = this.$menu.find('.active').removeClass('active')
1969
+ , next = active.next()
1970
+
1971
+ if (!next.length) {
1972
+ next = $(this.$menu.find('li')[0])
1973
+ }
1974
+
1975
+ next.addClass('active')
1976
+ }
1977
+
1978
+ , prev: function (event) {
1979
+ var active = this.$menu.find('.active').removeClass('active')
1980
+ , prev = active.prev()
1981
+
1982
+ if (!prev.length) {
1983
+ prev = this.$menu.find('li').last()
1984
+ }
1985
+
1986
+ prev.addClass('active')
1987
+ }
1988
+
1989
+ , listen: function () {
1990
+ this.$element
1991
+ .on('focus', $.proxy(this.focus, this))
1992
+ .on('blur', $.proxy(this.blur, this))
1993
+ .on('keypress', $.proxy(this.keypress, this))
1994
+ .on('keyup', $.proxy(this.keyup, this))
1995
+
1996
+ if (this.eventSupported('keydown')) {
1997
+ this.$element.on('keydown', $.proxy(this.keydown, this))
1998
+ }
1999
+
2000
+ this.$menu
2001
+ .on('click', $.proxy(this.click, this))
2002
+ .on('mouseenter', 'li', $.proxy(this.mouseenter, this))
2003
+ .on('mouseleave', 'li', $.proxy(this.mouseleave, this))
2004
+ }
2005
+
2006
+ , eventSupported: function(eventName) {
2007
+ var isSupported = eventName in this.$element
2008
+ if (!isSupported) {
2009
+ this.$element.setAttribute(eventName, 'return;')
2010
+ isSupported = typeof this.$element[eventName] === 'function'
2011
+ }
2012
+ return isSupported
2013
+ }
2014
+
2015
+ , move: function (e) {
2016
+ if (!this.shown) return
2017
+
2018
+ switch(e.keyCode) {
2019
+ case 9: // tab
2020
+ case 13: // enter
2021
+ case 27: // escape
2022
+ e.preventDefault()
2023
+ break
2024
+
2025
+ case 38: // up arrow
2026
+ e.preventDefault()
2027
+ this.prev()
2028
+ break
2029
+
2030
+ case 40: // down arrow
2031
+ e.preventDefault()
2032
+ this.next()
2033
+ break
2034
+ }
2035
+
2036
+ e.stopPropagation()
2037
+ }
2038
+
2039
+ , keydown: function (e) {
2040
+ this.suppressKeyPressRepeat = ~$.inArray(e.keyCode, [40,38,9,13,27])
2041
+ this.move(e)
2042
+ }
2043
+
2044
+ , keypress: function (e) {
2045
+ if (this.suppressKeyPressRepeat) return
2046
+ this.move(e)
2047
+ }
2048
+
2049
+ , keyup: function (e) {
2050
+ switch(e.keyCode) {
2051
+ case 40: // down arrow
2052
+ case 38: // up arrow
2053
+ case 16: // shift
2054
+ case 17: // ctrl
2055
+ case 18: // alt
2056
+ break
2057
+
2058
+ case 9: // tab
2059
+ case 13: // enter
2060
+ if (!this.shown) return
2061
+ this.select()
2062
+ break
2063
+
2064
+ case 27: // escape
2065
+ if (!this.shown) return
2066
+ this.hide()
2067
+ break
2068
+
2069
+ default:
2070
+ this.lookup()
2071
+ }
2072
+
2073
+ e.stopPropagation()
2074
+ e.preventDefault()
2075
+ }
2076
+
2077
+ , focus: function (e) {
2078
+ this.focused = true
2079
+ }
2080
+
2081
+ , blur: function (e) {
2082
+ this.focused = false
2083
+ if (!this.mousedover && this.shown) this.hide()
2084
+ }
2085
+
2086
+ , click: function (e) {
2087
+ e.stopPropagation()
2088
+ e.preventDefault()
2089
+ this.select()
2090
+ this.$element.focus()
2091
+ }
2092
+
2093
+ , mouseenter: function (e) {
2094
+ this.mousedover = true
2095
+ this.$menu.find('.active').removeClass('active')
2096
+ $(e.currentTarget).addClass('active')
2097
+ }
2098
+
2099
+ , mouseleave: function (e) {
2100
+ this.mousedover = false
2101
+ if (!this.focused && this.shown) this.hide()
2102
+ }
2103
+
2104
+ }
2105
+
2106
+
2107
+ /* TYPEAHEAD PLUGIN DEFINITION
2108
+ * =========================== */
2109
+
2110
+ var old = $.fn.typeahead
2111
+
2112
+ $.fn.typeahead = function (option) {
2113
+ return this.each(function () {
2114
+ var $this = $(this)
2115
+ , data = $this.data('typeahead')
2116
+ , options = typeof option == 'object' && option
2117
+ if (!data) $this.data('typeahead', (data = new Typeahead(this, options)))
2118
+ if (typeof option == 'string') data[option]()
2119
+ })
2120
+ }
2121
+
2122
+ $.fn.typeahead.defaults = {
2123
+ source: []
2124
+ , items: 8
2125
+ , menu: '<ul class="typeahead dropdown-menu"></ul>'
2126
+ , item: '<li><a href="#"></a></li>'
2127
+ , minLength: 1
2128
+ }
2129
+
2130
+ $.fn.typeahead.Constructor = Typeahead
2131
+
2132
+
2133
+ /* TYPEAHEAD NO CONFLICT
2134
+ * =================== */
2135
+
2136
+ $.fn.typeahead.noConflict = function () {
2137
+ $.fn.typeahead = old
2138
+ return this
2139
+ }
2140
+
2141
+
2142
+ /* TYPEAHEAD DATA-API
2143
+ * ================== */
2144
+
2145
+ $(document).on('focus.typeahead.data-api', '[data-provide="typeahead"]', function (e) {
2146
+ var $this = $(this)
2147
+ if ($this.data('typeahead')) return
2148
+ $this.typeahead($this.data())
2149
+ })
2150
+
2151
+ }(window.jQuery);
2152
+ /* ==========================================================
2153
+ * bootstrap-affix.js v2.3.0
2154
+ * http://twitter.github.com/bootstrap/javascript.html#affix
2155
+ * ==========================================================
2156
+ * Copyright 2012 Twitter, Inc.
2157
+ *
2158
+ * Licensed under the Apache License, Version 2.0 (the "License");
2159
+ * you may not use this file except in compliance with the License.
2160
+ * You may obtain a copy of the License at
2161
+ *
2162
+ * http://www.apache.org/licenses/LICENSE-2.0
2163
+ *
2164
+ * Unless required by applicable law or agreed to in writing, software
2165
+ * distributed under the License is distributed on an "AS IS" BASIS,
2166
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
2167
+ * See the License for the specific language governing permissions and
2168
+ * limitations under the License.
2169
+ * ========================================================== */
2170
+
2171
+
2172
+ !function ($) {
2173
+
2174
+ "use strict"; // jshint ;_;
2175
+
2176
+
2177
+ /* AFFIX CLASS DEFINITION
2178
+ * ====================== */
2179
+
2180
+ var Affix = function (element, options) {
2181
+ this.options = $.extend({}, $.fn.affix.defaults, options)
2182
+ this.$window = $(window)
2183
+ .on('scroll.affix.data-api', $.proxy(this.checkPosition, this))
2184
+ .on('click.affix.data-api', $.proxy(function () { setTimeout($.proxy(this.checkPosition, this), 1) }, this))
2185
+ this.$element = $(element)
2186
+ this.checkPosition()
2187
+ }
2188
+
2189
+ Affix.prototype.checkPosition = function () {
2190
+ if (!this.$element.is(':visible')) return
2191
+
2192
+ var scrollHeight = $(document).height()
2193
+ , scrollTop = this.$window.scrollTop()
2194
+ , position = this.$element.offset()
2195
+ , offset = this.options.offset
2196
+ , offsetBottom = offset.bottom
2197
+ , offsetTop = offset.top
2198
+ , reset = 'affix affix-top affix-bottom'
2199
+ , affix
2200
+
2201
+ if (typeof offset != 'object') offsetBottom = offsetTop = offset
2202
+ if (typeof offsetTop == 'function') offsetTop = offset.top()
2203
+ if (typeof offsetBottom == 'function') offsetBottom = offset.bottom()
2204
+
2205
+ affix = this.unpin != null && (scrollTop + this.unpin <= position.top) ?
2206
+ false : offsetBottom != null && (position.top + this.$element.height() >= scrollHeight - offsetBottom) ?
2207
+ 'bottom' : offsetTop != null && scrollTop <= offsetTop ?
2208
+ 'top' : false
2209
+
2210
+ if (this.affixed === affix) return
2211
+
2212
+ this.affixed = affix
2213
+ this.unpin = affix == 'bottom' ? position.top - scrollTop : null
2214
+
2215
+ this.$element.removeClass(reset).addClass('affix' + (affix ? '-' + affix : ''))
2216
+ }
2217
+
2218
+
2219
+ /* AFFIX PLUGIN DEFINITION
2220
+ * ======================= */
2221
+
2222
+ var old = $.fn.affix
2223
+
2224
+ $.fn.affix = function (option) {
2225
+ return this.each(function () {
2226
+ var $this = $(this)
2227
+ , data = $this.data('affix')
2228
+ , options = typeof option == 'object' && option
2229
+ if (!data) $this.data('affix', (data = new Affix(this, options)))
2230
+ if (typeof option == 'string') data[option]()
2231
+ })
2232
+ }
2233
+
2234
+ $.fn.affix.Constructor = Affix
2235
+
2236
+ $.fn.affix.defaults = {
2237
+ offset: 0
2238
+ }
2239
+
2240
+
2241
+ /* AFFIX NO CONFLICT
2242
+ * ================= */
2243
+
2244
+ $.fn.affix.noConflict = function () {
2245
+ $.fn.affix = old
2246
+ return this
2247
+ }
2248
+
2249
+
2250
+ /* AFFIX DATA-API
2251
+ * ============== */
2252
+
2253
+ $(window).on('load', function () {
2254
+ $('[data-spy="affix"]').each(function () {
2255
+ var $spy = $(this)
2256
+ , data = $spy.data()
2257
+
2258
+ data.offset = data.offset || {}
2259
+
2260
+ data.offsetBottom && (data.offset.bottom = data.offsetBottom)
2261
+ data.offsetTop && (data.offset.top = data.offsetTop)
2262
+
2263
+ $spy.affix(data)
2264
+ })
2265
+ })
2266
+
2267
+
2268
+ }(window.jQuery);