bonethug 0.0.1 → 0.0.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (1192) hide show
  1. data/Gemfile +5 -0
  2. data/Rakefile +2 -0
  3. data/bin/bonethug +13 -0
  4. data/bonethug.gemspec +8 -2
  5. data/lib/bonethug/setup.rake +19 -0
  6. data/lib/bonethug/utils.rb +15 -0
  7. data/lib/bonethug/version.rb +1 -1
  8. data/lib/bonethug.rb +13 -1
  9. data/lib/tasks/setup.rake +19 -0
  10. data/skel/base/.gitignore +22 -0
  11. data/skel/base/Gemfile +3 -0
  12. data/skel/base/README.md +105 -0
  13. data/skel/base/composer.json +31 -0
  14. data/skel/base/config/backup.rb +105 -0
  15. data/skel/base/config/cnf.yml +59 -0
  16. data/skel/base/config/deploy.rb +213 -0
  17. data/skel/base/config/schedule.rb +34 -0
  18. data/skel/base/lib/conf.rb +275 -0
  19. data/skel/base/public/apple-touch-icon-114x114-precomposed.png +0 -0
  20. data/skel/base/public/apple-touch-icon-72x72-precomposed.png +0 -0
  21. data/skel/base/public/apple-touch-icon.png +0 -0
  22. data/skel/base/public/favicon.ico +0 -0
  23. data/skel/base/public/favicon.png +0 -0
  24. data/skel/base/public/robots.txt +5 -0
  25. data/skel/project_types/drupal/.gitignore +22 -0
  26. data/skel/project_types/drupal/composer.json +31 -0
  27. data/skel/project_types/php/.gitignore +13 -0
  28. data/skel/project_types/php/composer.json +31 -0
  29. data/skel/project_types/silverstripe3/.gitignore +22 -0
  30. data/skel/project_types/silverstripe3/composer.json +31 -0
  31. data/skel/project_types/silverstripe3/public/.htaccess +43 -0
  32. data/skel/project_types/silverstripe3/public/abc/_config.php +62 -0
  33. data/skel/project_types/silverstripe3/public/abc/code/Admin/AbcModelAdmin.php +55 -0
  34. data/skel/project_types/silverstripe3/public/abc/code/Classes/AbcDB.php +34 -0
  35. data/skel/project_types/silverstripe3/public/abc/code/Classes/AbcPaginator.php +212 -0
  36. data/skel/project_types/silverstripe3/public/abc/code/Classes/AbcStr.php +43 -0
  37. data/skel/project_types/silverstripe3/public/abc/code/Classes/AbcURL.php +39 -0
  38. data/skel/project_types/silverstripe3/public/abc/code/Classes/DataObjectHelper.php +312 -0
  39. data/skel/project_types/silverstripe3/public/abc/code/Classes/LeftAndMainHelper.php +21 -0
  40. data/skel/project_types/silverstripe3/public/abc/code/Classes/MySQLDump.php +110 -0
  41. data/skel/project_types/silverstripe3/public/abc/code/Classes/RequestHelper.php +22 -0
  42. data/skel/project_types/silverstripe3/public/abc/code/DO/AbcFile.php +26 -0
  43. data/skel/project_types/silverstripe3/public/abc/code/DO/AbcImage.php +84 -0
  44. data/skel/project_types/silverstripe3/public/abc/code/DO/VersionedDataObject.php +621 -0
  45. data/skel/project_types/silverstripe3/public/abc/code/Extensions/AbcLeftAndMainExtension.php +23 -0
  46. data/skel/project_types/silverstripe3/public/abc/code/Extensions/AbcSecurityExtension.php +30 -0
  47. data/skel/project_types/silverstripe3/public/abc/code/Extensions/GridFieldDetailForm_VersionedDataObject_Actions.php +11 -0
  48. data/skel/project_types/silverstripe3/public/abc/code/FormFields/ChildListField.php +40 -0
  49. data/skel/project_types/silverstripe3/public/abc/code/FormFields/ColourPickerField.php +27 -0
  50. data/skel/project_types/silverstripe3/public/abc/code/FormFields/SyntaxHighlightedField.php +40 -0
  51. data/skel/project_types/silverstripe3/public/abc/code/FormFields/jQueryUIDateField_View.php +61 -0
  52. data/skel/project_types/silverstripe3/public/abc/code/Forms/AddForm.php +38 -0
  53. data/skel/project_types/silverstripe3/public/abc/code/Forms/AddModelAdminForm.php +15 -0
  54. data/skel/project_types/silverstripe3/public/abc/code/Forms/GridField/AbcGridFieldAddExistingAutocompleter.php +38 -0
  55. data/skel/project_types/silverstripe3/public/abc/code/Forms/GridField/AbcGridFieldConfig.php +261 -0
  56. data/skel/project_types/silverstripe3/public/abc/code/Forms/GridField/AbcGridFieldDetailForm.php +15 -0
  57. data/skel/project_types/silverstripe3/public/abc/code/Tasks/DBBackup.php +78 -0
  58. data/skel/project_types/silverstripe3/public/abc/code/Tasks/PublishAllPages.php +32 -0
  59. data/skel/project_types/silverstripe3/public/abc/css/child-list.css +15 -0
  60. data/skel/project_types/silverstripe3/public/abc/css/cms.css +36 -0
  61. data/skel/project_types/silverstripe3/public/abc/images/no-image.jpg +0 -0
  62. data/skel/project_types/silverstripe3/public/abc/javascript/ColourPickerField.js +26 -0
  63. data/skel/project_types/silverstripe3/public/abc/javascript/SyntaxHighlightedField.js +20 -0
  64. data/skel/project_types/silverstripe3/public/abc/javascript/child-list.js +13 -0
  65. data/skel/project_types/silverstripe3/public/abc/javascript/isotope-centered-masonry.js +58 -0
  66. data/skel/project_types/silverstripe3/public/abc/javascript/jquery.cms.js +62 -0
  67. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/colorpicker/css/colorpicker.css +161 -0
  68. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/colorpicker/css/layout.css +218 -0
  69. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/colorpicker/images/Thumbs.db +0 -0
  70. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/colorpicker/images/blank.gif +0 -0
  71. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/colorpicker/images/colorpicker_background.png +0 -0
  72. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/colorpicker/images/colorpicker_hex.png +0 -0
  73. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/colorpicker/images/colorpicker_hsb_b.png +0 -0
  74. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/colorpicker/images/colorpicker_hsb_h.png +0 -0
  75. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/colorpicker/images/colorpicker_hsb_s.png +0 -0
  76. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/colorpicker/images/colorpicker_indic.gif +0 -0
  77. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/colorpicker/images/colorpicker_overlay.png +0 -0
  78. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/colorpicker/images/colorpicker_rgb_b.png +0 -0
  79. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/colorpicker/images/colorpicker_rgb_g.png +0 -0
  80. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/colorpicker/images/colorpicker_rgb_r.png +0 -0
  81. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/colorpicker/images/colorpicker_select.gif +0 -0
  82. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/colorpicker/images/colorpicker_submit.png +0 -0
  83. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/colorpicker/images/custom_background.png +0 -0
  84. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/colorpicker/images/custom_hex.png +0 -0
  85. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/colorpicker/images/custom_hsb_b.png +0 -0
  86. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/colorpicker/images/custom_hsb_h.png +0 -0
  87. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/colorpicker/images/custom_hsb_s.png +0 -0
  88. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/colorpicker/images/custom_indic.gif +0 -0
  89. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/colorpicker/images/custom_rgb_b.png +0 -0
  90. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/colorpicker/images/custom_rgb_g.png +0 -0
  91. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/colorpicker/images/custom_rgb_r.png +0 -0
  92. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/colorpicker/images/custom_submit.png +0 -0
  93. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/colorpicker/images/select.png +0 -0
  94. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/colorpicker/images/select2.png +0 -0
  95. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/colorpicker/images/slider.png +0 -0
  96. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/colorpicker/index.html +184 -0
  97. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/colorpicker/js/colorpicker.js +484 -0
  98. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/colorpicker/js/eye.js +34 -0
  99. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/colorpicker/js/jquery.js +4376 -0
  100. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/colorpicker/js/layout.js +67 -0
  101. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/colorpicker/js/utils.js +252 -0
  102. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/custom-scrollbar/README +40 -0
  103. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/custom-scrollbar/complete_examples.html +373 -0
  104. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/custom-scrollbar/demo_files/jquery.mCustomScrollbar.css +296 -0
  105. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/custom-scrollbar/demo_files/mcsImg1.jpg +0 -0
  106. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/custom-scrollbar/demo_files/mcsImg2.jpg +0 -0
  107. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/custom-scrollbar/demo_files/mcsThumb1.jpg +0 -0
  108. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/custom-scrollbar/demo_files/mcsThumb2.jpg +0 -0
  109. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/custom-scrollbar/demo_files/mcsThumb3.jpg +0 -0
  110. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/custom-scrollbar/demo_files/mcsThumb4.jpg +0 -0
  111. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/custom-scrollbar/demo_files/mcsThumb5.jpg +0 -0
  112. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/custom-scrollbar/demo_files/mcsThumb6.jpg +0 -0
  113. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/custom-scrollbar/demo_files/mcsThumb7.jpg +0 -0
  114. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/custom-scrollbar/demo_files/mcsThumb8.jpg +0 -0
  115. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/custom-scrollbar/demo_files/mcs_demo_bg.jpg +0 -0
  116. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/custom-scrollbar/fluid_scrollbar_example.html +78 -0
  117. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/custom-scrollbar/full_page_demo/css/jquery.mCustomScrollbar.css +186 -0
  118. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/custom-scrollbar/full_page_demo/css/style.css +45 -0
  119. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/custom-scrollbar/full_page_demo/images/mCSB_buttons.png +0 -0
  120. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/custom-scrollbar/full_page_demo/images/stripes_bg.png +0 -0
  121. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/custom-scrollbar/full_page_demo/index.html +52 -0
  122. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/custom-scrollbar/full_page_demo/js/jquery-1.7.2.min.js +4 -0
  123. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/custom-scrollbar/full_page_demo/js/jquery-ui-1.8.21.custom.min.js +25 -0
  124. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/custom-scrollbar/full_page_demo/js/jquery.mCustomScrollbar.min.js +1 -0
  125. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/custom-scrollbar/full_page_demo/js/jquery.mousewheel.min.js +12 -0
  126. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/custom-scrollbar/issue_2_fix_test/infinite_scroll_examples-issue_2.html +122 -0
  127. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/custom-scrollbar/issue_2_fix_test/jquery.mCustomScrollbar.js +722 -0
  128. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/custom-scrollbar/jquery/jquery-1.7.2.min.js +4 -0
  129. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/custom-scrollbar/jquery/jquery-ui-1.8.21.custom.min.js +25 -0
  130. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/custom-scrollbar/jquery.mCustomScrollbar.css +187 -0
  131. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/custom-scrollbar/jquery.mCustomScrollbar.js +722 -0
  132. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/custom-scrollbar/jquery.mousewheel.min.js +12 -0
  133. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/custom-scrollbar/license.txt +1 -0
  134. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/custom-scrollbar/mCSB_buttons.png +0 -0
  135. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/custom-scrollbar/minified/jquery.mCustomScrollbar.min.js +1 -0
  136. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/custom-scrollbar/multiple_scrollbars_example.html +80 -0
  137. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/custom-scrollbar/readme.txt +41 -0
  138. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/custom-scrollbar/scroll_buttons_and_snap_scrolling_examples.html +158 -0
  139. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/custom-scrollbar/simple_example.html +68 -0
  140. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/custom-scrollbar/simple_example_all_params.html +88 -0
  141. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/custom-scrollbar/sources/mCSB_buttons.psd +0 -0
  142. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/event.drag/jquery.event.drag.js +402 -0
  143. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/event.drag/jquery.event.drag.live.js +87 -0
  144. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/event.drag/test/binding.js +64 -0
  145. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/event.drag/test/handlers.js +160 -0
  146. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/event.drag/test/index.html +28 -0
  147. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/event.drag/test/interaction.js +198 -0
  148. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/event.drag/test/live.js +41 -0
  149. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/event.drag/test/method.js +64 -0
  150. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/event.drag/test/properties.js +71 -0
  151. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/event.drag/test/requirements.js +24 -0
  152. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/event.drag/test/touch.js +206 -0
  153. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/event.drop/jquery.event.drop.js +302 -0
  154. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/event.drop/jquery.event.drop.live.js +93 -0
  155. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/event.drop/test/binding.js +32 -0
  156. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/event.drop/test/handlers.js +130 -0
  157. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/event.drop/test/index.html +32 -0
  158. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/event.drop/test/interaction.js +134 -0
  159. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/event.drop/test/live.js +60 -0
  160. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/event.drop/test/method.js +63 -0
  161. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/event.drop/test/properties.js +62 -0
  162. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/event.drop/test/requirements.js +37 -0
  163. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/event.drop/test/tolerance.js +189 -0
  164. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/event.drop/test/touch.js +140 -0
  165. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/event.keyend/jquery.event.keyend.js +20 -0
  166. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/event.linger/jquery.event.linger.js +190 -0
  167. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/event.linger/test/binding.js +45 -0
  168. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/event.linger/test/handlers.js +111 -0
  169. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/event.linger/test/index.html +24 -0
  170. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/event.linger/test/interaction.js +231 -0
  171. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/event.linger/test/method.js +43 -0
  172. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/event.linger/test/requirements.js +23 -0
  173. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/event.wheel/jquery.event.wheel.js +50 -0
  174. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/fire/jquery.fire.js +171 -0
  175. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/fire/test/custom.js +61 -0
  176. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/fire/test/form.js +50 -0
  177. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/fire/test/index.html +26 -0
  178. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/fire/test/key.js +52 -0
  179. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/fire/test/mouse.js +54 -0
  180. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/fire/test/mutation.js +52 -0
  181. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/fire/test/object.js +50 -0
  182. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/fire/test/requirements.js +26 -0
  183. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/fire/test/touch.js +61 -0
  184. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/include.js +387 -0
  185. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/.gitignore +2 -0
  186. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/.tm_properties +3 -0
  187. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/README.mdown +78 -0
  188. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/_config.yml +605 -0
  189. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/_includes/add-buttons.js +14 -0
  190. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/_includes/change-sizes.js +14 -0
  191. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/_includes/element-partial.html +7 -0
  192. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/_includes/elements-demo-foot.html +64 -0
  193. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/_includes/elements-demo-head.html +22 -0
  194. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/_includes/filter-buttons.html +14 -0
  195. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/_includes/inf-scroll-page.html +21 -0
  196. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/_includes/layout-change.js +24 -0
  197. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/_includes/layout-options.html +13 -0
  198. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/_includes/option-set-buttons.js +31 -0
  199. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/_includes/random-sizes.js +12 -0
  200. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/_includes/sort-buttons.html +19 -0
  201. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/_layouts/default.html +81 -0
  202. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/_posts/custom-layout-modes/2011-05-18-centered-masonry.html +151 -0
  203. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/_posts/custom-layout-modes/2011-05-22-category-rows.html +126 -0
  204. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/_posts/custom-layout-modes/2011-07-07-masonry-corner-stamp.html +145 -0
  205. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/_posts/custom-layout-modes/2011-07-14-masonry-gutters.html +148 -0
  206. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/_posts/custom-layout-modes/2011-10-18-spine-align.html +139 -0
  207. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/_posts/custom-layout-modes/2011-12-05-big-graph.html +196 -0
  208. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/_posts/custom-layout-modes/2012-01-03-masonry-column-shift.html +220 -0
  209. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/_posts/demos/2010-12-12-basic.html +30 -0
  210. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/_posts/demos/2010-12-13-elements-complete.html +16 -0
  211. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/_posts/demos/2010-12-16-elements-partial.html +16 -0
  212. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/_posts/demos/2010-12-29-layout-modes.html +59 -0
  213. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/_posts/demos/2010-12-30-filtering.html +41 -0
  214. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/_posts/demos/2010-12-30-sorting.html +56 -0
  215. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/_posts/demos/2010-12-31-relayout.html +44 -0
  216. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/_posts/demos/2011-01-02-adding-items.html +61 -0
  217. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/_posts/demos/2011-01-02-infinite-scroll.html +51 -0
  218. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/_posts/demos/2011-01-11-images.html +44 -0
  219. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/_posts/demos/2011-03-29-combination-filters.html +100 -0
  220. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/_posts/demos/2011-06-13-hash-history.html +190 -0
  221. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/_posts/demos/2011-09-30-fluid-responsive.html +141 -0
  222. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/_posts/demos/2011-12-22-removing.html +79 -0
  223. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/_posts/docs/2010-12-01-introduction.mdown +161 -0
  224. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/_posts/docs/2010-12-03-options.mdown +356 -0
  225. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/_posts/docs/2010-12-04-methods.mdown +159 -0
  226. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/_posts/docs/2010-12-05-layout-modes.mdown +191 -0
  227. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/_posts/docs/2010-12-06-filtering.mdown +109 -0
  228. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/_posts/docs/2010-12-07-sorting.mdown +169 -0
  229. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/_posts/docs/2010-12-09-animating.mdown +100 -0
  230. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/_posts/docs/2010-12-10-adding-items.mdown +79 -0
  231. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/_posts/docs/2011-05-25-extending-isotope.mdown +174 -0
  232. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/_posts/docs/2011-06-16-hash-history-jquery-bbq.mdown +86 -0
  233. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/_posts/docs/2011-12-11-help.mdown +230 -0
  234. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/_posts/docs/2011-12-20-license.mdown +45 -0
  235. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/_posts/pages/2011-01-01-2.html +9 -0
  236. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/_posts/pages/2011-01-01-3.html +9 -0
  237. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/_posts/pages/2011-01-01-4.html +9 -0
  238. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/_posts/pages/2011-01-01-5.html +9 -0
  239. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/_posts/pages/2011-01-01-6.html +9 -0
  240. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/_posts/tests/2010-01-01-index.html +14 -0
  241. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/_posts/tests/2011-03-27-destroy.html +48 -0
  242. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/_posts/tests/2011-03-27-flash.html +118 -0
  243. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/_posts/tests/2011-03-27-no-items.html +29 -0
  244. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/_posts/tests/2011-04-26-item-position-data.html +69 -0
  245. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/_posts/tests/2011-05-13-jquery-animation.html +92 -0
  246. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/_posts/tests/2011-05-24-elements-complete-test.html +140 -0
  247. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/_posts/tests/2011-05-31-tiny-text.html +70 -0
  248. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/_posts/tests/2011-08-19-right-to-left.html +151 -0
  249. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/_posts/tests/2011-08-23-unclickable-filtered.html +118 -0
  250. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/_posts/tests/2011-10-19-callbacks.html +165 -0
  251. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/_posts/tests/2012-02-07-onlayout.html +171 -0
  252. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/_posts/tests/2012-08-11-combo-sort-history.html +177 -0
  253. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/css/style.css +842 -0
  254. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/index.html +185 -0
  255. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/jquery.isotope.js +1401 -0
  256. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/jquery.isotope.min.js +11 -0
  257. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/js/fake-element.js +38 -0
  258. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/js/jquery-1.7.1.min.js +4 -0
  259. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/js/jquery.ba-bbq.min.js +18 -0
  260. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/js/jquery.infinitescroll.min.js +47 -0
  261. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/js/make-big-graph-projects.js +43 -0
  262. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/isotope/minify.sh +15 -0
  263. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jgestures.min.js +18 -0
  264. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demo-01-bm.htm +79 -0
  265. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demo-01-pf.htm +77 -0
  266. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demo-01-solution-flash-html-bm.htm +80 -0
  267. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demo-01-solution-flash-html-pf.htm +78 -0
  268. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demo-01-supplied-mp3-bm.htm +78 -0
  269. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demo-01-supplied-mp3-pf.htm +76 -0
  270. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demo-01-video-bm.htm +90 -0
  271. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demo-01-video-pf.htm +91 -0
  272. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demo-01-video-solution-flash-html-bm.htm +90 -0
  273. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demo-01-video-solution-flash-html-pf.htm +91 -0
  274. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demo-01-video-supplied-m4v-bm.htm +87 -0
  275. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demo-01-video-supplied-m4v-pf.htm +88 -0
  276. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demo-01-video-supplied-rtmpv-bm.htm +87 -0
  277. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demo-01-video-supplied-rtmpv-pf.htm +88 -0
  278. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demo-02-bm.htm +149 -0
  279. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demo-02-jPlayerPlaylist-bm.htm +607 -0
  280. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demo-02-jPlayerPlaylist-pf.htm +607 -0
  281. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demo-02-media-bm.htm +158 -0
  282. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demo-02-media-pf.htm +158 -0
  283. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demo-02-media-solution-flash-html-bm.htm +159 -0
  284. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demo-02-media-solution-flash-html-pf.htm +159 -0
  285. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demo-02-multi-bm.htm +242 -0
  286. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demo-02-multi-pf.htm +241 -0
  287. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demo-02-pf.htm +148 -0
  288. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demo-02-video-bm.htm +117 -0
  289. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demo-02-video-pf.htm +117 -0
  290. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demo-03-bm.htm +205 -0
  291. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demo-03-pf.htm +199 -0
  292. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demo-03-together-bm.htm +196 -0
  293. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demo-03-together-pf.htm +190 -0
  294. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demo-03-video-bm.htm +219 -0
  295. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demo-03-video-pf.htm +222 -0
  296. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demo-04.htm +159 -0
  297. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demo-05.htm +76 -0
  298. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demo-07.htm +249 -0
  299. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demo-08-bm.htm +78 -0
  300. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demo-08-pf.htm +78 -0
  301. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demo-09-popcorn-video-bm.htm +122 -0
  302. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demo-09-popcorn-video-pf.htm +123 -0
  303. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demo-09-popcorn-video-solution-flash-html-bm.htm +123 -0
  304. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demo-09-popcorn-video-solution-flash-html-pf.htm +124 -0
  305. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demos/demo-01-bm.htm +79 -0
  306. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demos/demo-01-pf.htm +77 -0
  307. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demos/demo-01-solution-flash-html-bm.htm +80 -0
  308. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demos/demo-01-solution-flash-html-pf.htm +78 -0
  309. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demos/demo-01-supplied-mp3-bm.htm +78 -0
  310. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demos/demo-01-supplied-mp3-pf.htm +76 -0
  311. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demos/demo-01-video-bm.htm +90 -0
  312. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demos/demo-01-video-pf.htm +91 -0
  313. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demos/demo-01-video-solution-flash-html-bm.htm +90 -0
  314. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demos/demo-01-video-solution-flash-html-pf.htm +91 -0
  315. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demos/demo-01-video-supplied-m4v-bm.htm +87 -0
  316. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demos/demo-01-video-supplied-m4v-pf.htm +88 -0
  317. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demos/demo-01-video-supplied-rtmpv-bm.htm +87 -0
  318. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demos/demo-01-video-supplied-rtmpv-pf.htm +88 -0
  319. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demos/demo-02-bm.htm +149 -0
  320. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demos/demo-02-jPlayerPlaylist-bm.htm +607 -0
  321. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demos/demo-02-jPlayerPlaylist-pf.htm +607 -0
  322. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demos/demo-02-media-bm.htm +158 -0
  323. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demos/demo-02-media-pf.htm +158 -0
  324. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demos/demo-02-media-solution-flash-html-bm.htm +159 -0
  325. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demos/demo-02-media-solution-flash-html-pf.htm +159 -0
  326. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demos/demo-02-multi-bm.htm +242 -0
  327. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demos/demo-02-multi-pf.htm +241 -0
  328. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demos/demo-02-pf.htm +148 -0
  329. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demos/demo-02-video-bm.htm +117 -0
  330. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demos/demo-02-video-pf.htm +117 -0
  331. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demos/demo-03-bm.htm +205 -0
  332. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demos/demo-03-pf.htm +199 -0
  333. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demos/demo-03-together-bm.htm +196 -0
  334. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demos/demo-03-together-pf.htm +190 -0
  335. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demos/demo-03-video-bm.htm +219 -0
  336. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demos/demo-03-video-pf.htm +222 -0
  337. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demos/demo-04.htm +159 -0
  338. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demos/demo-05.htm +76 -0
  339. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demos/demo-07.htm +249 -0
  340. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demos/demo-08-bm.htm +78 -0
  341. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demos/demo-08-pf.htm +78 -0
  342. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demos/demo-09-popcorn-video-bm.htm +122 -0
  343. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demos/demo-09-popcorn-video-pf.htm +123 -0
  344. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demos/demo-09-popcorn-video-solution-flash-html-bm.htm +123 -0
  345. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demos/demo-09-popcorn-video-solution-flash-html-pf.htm +124 -0
  346. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demos/jPlayer-tester-bm.htm +1030 -0
  347. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demos/jPlayer-tester-pf.htm +1029 -0
  348. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demos/js/Jplayer.swf +0 -0
  349. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demos/js/circle.player.js +243 -0
  350. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demos/js/jplayer.playlist.min.js +34 -0
  351. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demos/js/jquery.grab.js +201 -0
  352. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demos/js/jquery.jplayer.inspector.js +338 -0
  353. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demos/js/jquery.jplayer.min.js +107 -0
  354. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demos/js/jquery.transform2d.js +551 -0
  355. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demos/js/mod.csstransforms.min.js +2 -0
  356. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demos/js/popcorn.jplayer.js +559 -0
  357. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demos/js/popcorn.js +2212 -0
  358. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demos/js/popcorn.player.js +460 -0
  359. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demos/js/popcorn.subtitle.js +143 -0
  360. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demos/skin/blue.monday/jplayer.blue.monday.css +640 -0
  361. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demos/skin/blue.monday/jplayer.blue.monday.jpg +0 -0
  362. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demos/skin/blue.monday/jplayer.blue.monday.seeking.gif +0 -0
  363. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demos/skin/blue.monday/jplayer.blue.monday.video.play.png +0 -0
  364. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demos/skin/circle.skin/bgr.jpg +0 -0
  365. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demos/skin/circle.skin/buffer.png +0 -0
  366. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demos/skin/circle.skin/circle.player.css +133 -0
  367. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demos/skin/circle.skin/controls.jpg +0 -0
  368. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demos/skin/circle.skin/progress.png +0 -0
  369. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demos/skin/circle.skin/progress_sprite.jpg +0 -0
  370. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demos/skin/pink.flag/jplayer.pink.flag.css +670 -0
  371. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demos/skin/pink.flag/jplayer.pink.flag.jpg +0 -0
  372. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demos/skin/pink.flag/jplayer.pink.flag.seeking.gif +0 -0
  373. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/demos/skin/pink.flag/jplayer.pink.flag.video.play.png +0 -0
  374. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/jPlayer-tester-bm.htm +1030 -0
  375. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/jPlayer-tester-pf.htm +1029 -0
  376. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/js/Jplayer.swf +0 -0
  377. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/js/circle.player.js +243 -0
  378. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/js/jplayer.playlist.min.js +34 -0
  379. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/js/jquery.grab.js +201 -0
  380. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/js/jquery.jplayer.inspector.js +338 -0
  381. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/js/jquery.jplayer.min.js +107 -0
  382. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/js/jquery.transform2d.js +551 -0
  383. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/js/mod.csstransforms.min.js +2 -0
  384. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/js/popcorn.jplayer.js +559 -0
  385. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/js/popcorn.js +2212 -0
  386. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/js/popcorn.player.js +460 -0
  387. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/js/popcorn.subtitle.js +143 -0
  388. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/skin/blackish/jplayer.blackish.css +669 -0
  389. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/skin/blackish/jplayer.blue.monday.jpg +0 -0
  390. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/skin/blackish/jplayer.blue.monday.seeking.gif +0 -0
  391. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/skin/blackish/jplayer.blue.monday.video.play.png +0 -0
  392. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/skin/blackish/jplayer.blue.png +0 -0
  393. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/skin/blackish/src/jplayer.blue.monday.psd +0 -0
  394. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/skin/blackish/src/jplayer.blue.monday.video.play.psd +0 -0
  395. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/skin/blue.monday/jplayer.blue.monday.css +640 -0
  396. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/skin/blue.monday/jplayer.blue.monday.jpg +0 -0
  397. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/skin/blue.monday/jplayer.blue.monday.seeking.gif +0 -0
  398. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/skin/blue.monday/jplayer.blue.monday.video.play.png +0 -0
  399. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/skin/circle.skin/bgr.jpg +0 -0
  400. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/skin/circle.skin/buffer.png +0 -0
  401. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/skin/circle.skin/circle.player.css +133 -0
  402. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/skin/circle.skin/controls.jpg +0 -0
  403. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/skin/circle.skin/progress.png +0 -0
  404. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/skin/circle.skin/progress_sprite.jpg +0 -0
  405. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/skin/pink.flag/jplayer.pink.flag.css +670 -0
  406. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/skin/pink.flag/jplayer.pink.flag.jpg +0 -0
  407. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/skin/pink.flag/jplayer.pink.flag.seeking.gif +0 -0
  408. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/skin/pink.flag/jplayer.pink.flag.video.play.png +0 -0
  409. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/src/Jplayer.as +609 -0
  410. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/src/Jplayer.fla +0 -0
  411. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/src/add-on/jplayer.playlist.js +471 -0
  412. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/src/add-on/jquery.jplayer.inspector.js +338 -0
  413. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/src/happyworm/jPlayer/ConnectManager.as +296 -0
  414. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/src/happyworm/jPlayer/JplayerEvent.as +69 -0
  415. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/src/happyworm/jPlayer/JplayerMp3.as +328 -0
  416. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/src/happyworm/jPlayer/JplayerMp4.as +413 -0
  417. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/src/happyworm/jPlayer/JplayerRtmp.as +984 -0
  418. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/src/happyworm/jPlayer/JplayerStatus.as +107 -0
  419. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/src/happyworm/jPlayer/TraceOut.as +63 -0
  420. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/src/jquery.jplayer.js +2817 -0
  421. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jplayer/src/popcorn/popcorn.jplayer.js +559 -0
  422. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jquery-1.10.2.min.js +6 -0
  423. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jquery-1.7.2.min.js +4 -0
  424. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jquery-1.8.0.min.js +2 -0
  425. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jquery-1.8.2.min.js +2 -0
  426. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jquery.animate.color.js +663 -0
  427. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jquery.drag.touch.js +99 -0
  428. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jquery.parseParams.js +54 -0
  429. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/jquery.ui.touch-punch.min.js +11 -0
  430. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/mobile/jquery.mobile.custom.css +10 -0
  431. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/mobile/jquery.mobile.custom.js +1768 -0
  432. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/mobile/jquery.mobile.custom.min.css +1 -0
  433. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/mobile/jquery.mobile.custom.min.js +2 -0
  434. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/mobile/jquery.mobile.custom.structure.css +82 -0
  435. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/mobile/jquery.mobile.custom.structure.min.css +2 -0
  436. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/mobile/jquery.mobile.custom.theme.css +1204 -0
  437. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/mobile/jquery.mobile.custom.theme.min.css +2 -0
  438. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/slidatron/jquery.slidatron.js +299 -0
  439. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/slidatron/slidatron.css +13 -0
  440. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/snippet/jquery.snippet.min.css +40 -0
  441. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/snippet/jquery.snippet.min.js +12 -0
  442. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/css/Aristo/Aristo.css +738 -0
  443. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/css/Aristo/images/bg_fallback.png +0 -0
  444. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/css/Aristo/images/icon_sprite.png +0 -0
  445. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/css/Aristo/images/progress_bar.gif +0 -0
  446. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/css/Aristo/images/slider_handles.png +0 -0
  447. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/css/Aristo/images/ui-icons_222222_256x240.png +0 -0
  448. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/css/Aristo/images/ui-icons_454545_256x240.png +0 -0
  449. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/css/smoothness/images/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
  450. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/css/smoothness/images/ui-bg_flat_75_ffffff_40x100.png +0 -0
  451. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/css/smoothness/images/ui-bg_glass_55_fbf9ee_1x400.png +0 -0
  452. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/css/smoothness/images/ui-bg_glass_65_ffffff_1x400.png +0 -0
  453. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/css/smoothness/images/ui-bg_glass_75_dadada_1x400.png +0 -0
  454. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/css/smoothness/images/ui-bg_glass_75_e6e6e6_1x400.png +0 -0
  455. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/css/smoothness/images/ui-bg_glass_95_fef1ec_1x400.png +0 -0
  456. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/css/smoothness/images/ui-bg_highlight-soft_75_cccccc_1x100.png +0 -0
  457. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/css/smoothness/images/ui-icons_222222_256x240.png +0 -0
  458. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/css/smoothness/images/ui-icons_2e83ff_256x240.png +0 -0
  459. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/css/smoothness/images/ui-icons_454545_256x240.png +0 -0
  460. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/css/smoothness/images/ui-icons_888888_256x240.png +0 -0
  461. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/css/smoothness/images/ui-icons_cd0a0a_256x240.png +0 -0
  462. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/css/smoothness/jquery-ui-1.8.23.custom.css +563 -0
  463. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/AUTHORS.txt +30 -0
  464. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/GPL-LICENSE.txt +278 -0
  465. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/MIT-LICENSE.txt +25 -0
  466. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/accordion/collapsible.html +57 -0
  467. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/accordion/custom-icons.html +69 -0
  468. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/accordion/default.html +85 -0
  469. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/accordion/fillspace.html +76 -0
  470. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/accordion/hoverintent.html +138 -0
  471. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/accordion/index.html +25 -0
  472. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/accordion/mouseover.html +57 -0
  473. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/accordion/no-auto-height.html +60 -0
  474. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/accordion/sortable.html +81 -0
  475. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/addClass/default.html +52 -0
  476. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/addClass/index.html +18 -0
  477. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/animate/default.html +61 -0
  478. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/animate/index.html +18 -0
  479. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/autocomplete/categories.html +71 -0
  480. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/autocomplete/combobox.html +194 -0
  481. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/autocomplete/custom-data.html +95 -0
  482. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/autocomplete/default.html +64 -0
  483. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/autocomplete/folding.html +62 -0
  484. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/autocomplete/images/jquery_32x32.png +0 -0
  485. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/autocomplete/images/jqueryui_32x32.png +0 -0
  486. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/autocomplete/images/sizzlejs_32x32.png +0 -0
  487. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/autocomplete/images/transparent_1x1.png +0 -0
  488. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/autocomplete/images/ui-anim_basic_16x16.gif +0 -0
  489. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/autocomplete/index.html +27 -0
  490. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/autocomplete/london.xml +114 -0
  491. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/autocomplete/maxheight.html +79 -0
  492. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/autocomplete/multiple-remote.html +84 -0
  493. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/autocomplete/multiple.html +99 -0
  494. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/autocomplete/remote-jsonp.html +86 -0
  495. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/autocomplete/remote-with-cache.html +59 -0
  496. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/autocomplete/remote.html +59 -0
  497. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/autocomplete/search.php +640 -0
  498. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/autocomplete/xml.html +72 -0
  499. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/button/checkbox.html +44 -0
  500. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/button/default.html +38 -0
  501. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/button/icons.html +56 -0
  502. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/button/index.html +23 -0
  503. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/button/radio.html +39 -0
  504. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/button/splitbutton.html +55 -0
  505. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/button/toolbar.html +120 -0
  506. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/datepicker/alt-field.html +36 -0
  507. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/datepicker/animation.html +58 -0
  508. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/datepicker/buttonbar.html +35 -0
  509. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/datepicker/date-formats.html +47 -0
  510. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/datepicker/date-range.html +51 -0
  511. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/datepicker/default.html +33 -0
  512. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/datepicker/dropdown-month-year.html +36 -0
  513. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/datepicker/icon-trigger.html +37 -0
  514. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/datepicker/images/calendar.gif +0 -0
  515. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/datepicker/index.html +31 -0
  516. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/datepicker/inline.html +33 -0
  517. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/datepicker/localization.html +176 -0
  518. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/datepicker/min-max.html +33 -0
  519. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/datepicker/multiple-calendars.html +36 -0
  520. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/datepicker/other-months.html +37 -0
  521. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/datepicker/show-week.html +39 -0
  522. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/demos.css +334 -0
  523. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/dialog/animated.html +56 -0
  524. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/dialog/default.html +54 -0
  525. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/dialog/index.html +23 -0
  526. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/dialog/modal-confirmation.html +69 -0
  527. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/dialog/modal-form.html +167 -0
  528. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/dialog/modal-message.html +71 -0
  529. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/dialog/modal.html +60 -0
  530. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/draggable/constrain-movement.html +69 -0
  531. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/draggable/cursor-style.html +49 -0
  532. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/draggable/default.html +39 -0
  533. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/draggable/delay-start.html +45 -0
  534. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/draggable/events.html +77 -0
  535. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/draggable/handle.html +50 -0
  536. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/draggable/index.html +28 -0
  537. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/draggable/revert.html +44 -0
  538. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/draggable/scroll.html +51 -0
  539. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/draggable/snap-to.html +68 -0
  540. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/draggable/sortable.html +57 -0
  541. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/draggable/visual-feedback.html +77 -0
  542. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/droppable/accepted-elements.html +60 -0
  543. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/droppable/default.html +53 -0
  544. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/droppable/images/high_tatras.jpg +0 -0
  545. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/droppable/images/high_tatras2.jpg +0 -0
  546. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/droppable/images/high_tatras2_min.jpg +0 -0
  547. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/droppable/images/high_tatras3.jpg +0 -0
  548. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/droppable/images/high_tatras3_min.jpg +0 -0
  549. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/droppable/images/high_tatras4.jpg +0 -0
  550. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/droppable/images/high_tatras4_min.jpg +0 -0
  551. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/droppable/images/high_tatras_min.jpg +0 -0
  552. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/droppable/index.html +24 -0
  553. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/droppable/photo-manager.html +184 -0
  554. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/droppable/propagation.html +80 -0
  555. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/droppable/revert.html +61 -0
  556. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/droppable/shopping-cart.html +101 -0
  557. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/droppable/visual-feedback.html +78 -0
  558. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/effect/default.html +109 -0
  559. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/effect/easing.html +109 -0
  560. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/effect/index.html +19 -0
  561. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/hide/default.html +102 -0
  562. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/hide/index.html +18 -0
  563. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/images/calendar.gif +0 -0
  564. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/images/demo-config-on-tile.gif +0 -0
  565. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/images/demo-config-on.gif +0 -0
  566. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/images/demo-spindown-closed.gif +0 -0
  567. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/images/demo-spindown-open.gif +0 -0
  568. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/images/icon-docs-info.gif +0 -0
  569. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/images/pbar-ani.gif +0 -0
  570. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/index.html +329 -0
  571. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/position/cycler.html +125 -0
  572. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/position/default.html +140 -0
  573. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/position/images/earth.jpg +0 -0
  574. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/position/images/flight.jpg +0 -0
  575. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/position/images/rocket.jpg +0 -0
  576. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/position/index.html +19 -0
  577. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/progressbar/animated.html +44 -0
  578. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/progressbar/default.html +35 -0
  579. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/progressbar/images/pbar-ani.gif +0 -0
  580. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/progressbar/index.html +20 -0
  581. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/progressbar/resize.html +40 -0
  582. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/removeClass/default.html +52 -0
  583. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/removeClass/index.html +18 -0
  584. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/resizable/animate.html +43 -0
  585. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/resizable/aspect-ratio.html +42 -0
  586. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/resizable/constrain-area.html +47 -0
  587. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/resizable/default.html +40 -0
  588. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/resizable/delay-start.html +52 -0
  589. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/resizable/helper.html +43 -0
  590. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/resizable/index.html +28 -0
  591. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/resizable/max-min.html +45 -0
  592. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/resizable/snap-to-grid.html +42 -0
  593. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/resizable/synchronous-resize.html +49 -0
  594. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/resizable/textarea.html +41 -0
  595. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/resizable/visual-feedback.html +43 -0
  596. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/selectable/default.html +50 -0
  597. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/selectable/display-grid.html +55 -0
  598. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/selectable/index.html +20 -0
  599. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/selectable/serialize.html +61 -0
  600. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/show/default.html +104 -0
  601. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/show/index.html +18 -0
  602. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/slider/colorpicker.html +95 -0
  603. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/slider/default.html +37 -0
  604. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/slider/hotelrooms.html +59 -0
  605. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/slider/index.html +29 -0
  606. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/slider/multiple-vertical.html +77 -0
  607. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/slider/range-vertical.html +51 -0
  608. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/slider/range.html +52 -0
  609. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/slider/rangemax.html +50 -0
  610. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/slider/rangemin.html +51 -0
  611. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/slider/side-scroll.html +140 -0
  612. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/slider/slider-vertical.html +52 -0
  613. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/slider/steps.html +51 -0
  614. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/slider/tabs.html +67 -0
  615. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/sortable/connect-lists-through-tabs.html +78 -0
  616. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/sortable/connect-lists.html +58 -0
  617. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/sortable/default.html +51 -0
  618. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/sortable/delay-start.html +67 -0
  619. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/sortable/display-grid.html +54 -0
  620. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/sortable/empty-lists.html +69 -0
  621. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/sortable/index.html +26 -0
  622. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/sortable/items.html +70 -0
  623. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/sortable/placeholder.html +56 -0
  624. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/sortable/portlets.html +96 -0
  625. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/switchClass/default.html +47 -0
  626. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/switchClass/index.html +18 -0
  627. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/tabs/ajax/content1.html +4 -0
  628. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/tabs/ajax/content2.html +4 -0
  629. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/tabs/ajax/content3-slow.php +7 -0
  630. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/tabs/ajax/content4-broken.php +3 -0
  631. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/tabs/ajax.html +53 -0
  632. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/tabs/bottom.html +60 -0
  633. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/tabs/collapsible.html +55 -0
  634. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/tabs/cookie.html +57 -0
  635. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/tabs/default.html +49 -0
  636. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/tabs/index.html +25 -0
  637. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/tabs/manipulation.html +124 -0
  638. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/tabs/mouseover.html +53 -0
  639. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/tabs/sortable.html +58 -0
  640. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/tabs/vertical.html +61 -0
  641. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/toggle/default.html +94 -0
  642. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/toggle/index.html +18 -0
  643. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/toggleClass/default.html +46 -0
  644. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/demos/toggleClass/index.html +18 -0
  645. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/docs/accordion.html +1017 -0
  646. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/docs/addClass.html +109 -0
  647. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/docs/animate.html +78 -0
  648. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/docs/autocomplete.html +880 -0
  649. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/docs/button.html +500 -0
  650. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/docs/datepicker.html +2532 -0
  651. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/docs/dialog.html +1782 -0
  652. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/docs/draggable.html +1577 -0
  653. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/docs/droppable.html +829 -0
  654. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/docs/effect.html +143 -0
  655. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/docs/hide.html +144 -0
  656. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/docs/position.html +245 -0
  657. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/docs/progressbar.html +460 -0
  658. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/docs/removeClass.html +113 -0
  659. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/docs/resizable.html +1201 -0
  660. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/docs/selectable.html +848 -0
  661. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/docs/show.html +144 -0
  662. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/docs/slider.html +860 -0
  663. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/docs/sortable.html +1953 -0
  664. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/docs/switchClass.html +129 -0
  665. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/docs/tabs.html +1532 -0
  666. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/docs/toggle.html +144 -0
  667. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/docs/toggleClass.html +111 -0
  668. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/external/jquery.bgiframe-2.1.2.js +39 -0
  669. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/external/jquery.cookie.js +89 -0
  670. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/external/jquery.metadata.js +122 -0
  671. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/external/qunit.css +225 -0
  672. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/external/qunit.js +1448 -0
  673. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/jquery-1.8.0.js +9227 -0
  674. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/package.json +36 -0
  675. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/themes/base/images/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
  676. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/themes/base/images/ui-bg_flat_75_ffffff_40x100.png +0 -0
  677. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/themes/base/images/ui-bg_glass_55_fbf9ee_1x400.png +0 -0
  678. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/themes/base/images/ui-bg_glass_65_ffffff_1x400.png +0 -0
  679. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/themes/base/images/ui-bg_glass_75_dadada_1x400.png +0 -0
  680. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/themes/base/images/ui-bg_glass_75_e6e6e6_1x400.png +0 -0
  681. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/themes/base/images/ui-bg_glass_95_fef1ec_1x400.png +0 -0
  682. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/themes/base/images/ui-bg_highlight-soft_75_cccccc_1x100.png +0 -0
  683. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/themes/base/images/ui-icons_222222_256x240.png +0 -0
  684. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/themes/base/images/ui-icons_2e83ff_256x240.png +0 -0
  685. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/themes/base/images/ui-icons_454545_256x240.png +0 -0
  686. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/themes/base/images/ui-icons_888888_256x240.png +0 -0
  687. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/themes/base/images/ui-icons_cd0a0a_256x240.png +0 -0
  688. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/themes/base/jquery.ui.accordion.css +19 -0
  689. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/themes/base/jquery.ui.all.css +11 -0
  690. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/themes/base/jquery.ui.autocomplete.css +53 -0
  691. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/themes/base/jquery.ui.base.css +11 -0
  692. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/themes/base/jquery.ui.button.css +38 -0
  693. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/themes/base/jquery.ui.core.css +38 -0
  694. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/themes/base/jquery.ui.datepicker.css +66 -0
  695. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/themes/base/jquery.ui.dialog.css +21 -0
  696. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/themes/base/jquery.ui.progressbar.css +11 -0
  697. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/themes/base/jquery.ui.resizable.css +20 -0
  698. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/themes/base/jquery.ui.selectable.css +10 -0
  699. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/themes/base/jquery.ui.slider.css +24 -0
  700. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/themes/base/jquery.ui.tabs.css +18 -0
  701. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/themes/base/jquery.ui.theme.css +247 -0
  702. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/themes/smoothness/images/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
  703. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/themes/smoothness/images/ui-bg_flat_75_ffffff_40x100.png +0 -0
  704. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/themes/smoothness/images/ui-bg_glass_55_fbf9ee_1x400.png +0 -0
  705. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/themes/smoothness/images/ui-bg_glass_65_ffffff_1x400.png +0 -0
  706. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/themes/smoothness/images/ui-bg_glass_75_dadada_1x400.png +0 -0
  707. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/themes/smoothness/images/ui-bg_glass_75_e6e6e6_1x400.png +0 -0
  708. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/themes/smoothness/images/ui-bg_glass_95_fef1ec_1x400.png +0 -0
  709. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/themes/smoothness/images/ui-bg_highlight-soft_75_cccccc_1x100.png +0 -0
  710. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/themes/smoothness/images/ui-icons_222222_256x240.png +0 -0
  711. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/themes/smoothness/images/ui-icons_2e83ff_256x240.png +0 -0
  712. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/themes/smoothness/images/ui-icons_454545_256x240.png +0 -0
  713. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/themes/smoothness/images/ui-icons_888888_256x240.png +0 -0
  714. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/themes/smoothness/images/ui-icons_cd0a0a_256x240.png +0 -0
  715. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/themes/smoothness/jquery-ui-1.8.23.custom.css +563 -0
  716. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/themes/smoothness/jquery.ui.accordion.css +19 -0
  717. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/themes/smoothness/jquery.ui.all.css +11 -0
  718. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/themes/smoothness/jquery.ui.autocomplete.css +53 -0
  719. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/themes/smoothness/jquery.ui.base.css +11 -0
  720. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/themes/smoothness/jquery.ui.button.css +38 -0
  721. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/themes/smoothness/jquery.ui.core.css +38 -0
  722. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/themes/smoothness/jquery.ui.datepicker.css +66 -0
  723. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/themes/smoothness/jquery.ui.dialog.css +21 -0
  724. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/themes/smoothness/jquery.ui.progressbar.css +11 -0
  725. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/themes/smoothness/jquery.ui.resizable.css +20 -0
  726. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/themes/smoothness/jquery.ui.selectable.css +10 -0
  727. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/themes/smoothness/jquery.ui.slider.css +24 -0
  728. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/themes/smoothness/jquery.ui.tabs.css +18 -0
  729. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/themes/smoothness/jquery.ui.theme.css +249 -0
  730. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/i18n/jquery-ui-i18n.js +1646 -0
  731. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/i18n/jquery.ui.datepicker-af.js +23 -0
  732. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/i18n/jquery.ui.datepicker-ar-DZ.js +23 -0
  733. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/i18n/jquery.ui.datepicker-ar.js +23 -0
  734. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/i18n/jquery.ui.datepicker-az.js +23 -0
  735. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/i18n/jquery.ui.datepicker-bg.js +24 -0
  736. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/i18n/jquery.ui.datepicker-bs.js +23 -0
  737. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/i18n/jquery.ui.datepicker-ca.js +23 -0
  738. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/i18n/jquery.ui.datepicker-cs.js +23 -0
  739. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/i18n/jquery.ui.datepicker-cy-GB.js +23 -0
  740. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/i18n/jquery.ui.datepicker-da.js +23 -0
  741. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/i18n/jquery.ui.datepicker-de.js +23 -0
  742. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/i18n/jquery.ui.datepicker-el.js +23 -0
  743. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/i18n/jquery.ui.datepicker-en-AU.js +23 -0
  744. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/i18n/jquery.ui.datepicker-en-GB.js +23 -0
  745. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/i18n/jquery.ui.datepicker-en-NZ.js +23 -0
  746. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/i18n/jquery.ui.datepicker-eo.js +23 -0
  747. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/i18n/jquery.ui.datepicker-es.js +23 -0
  748. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/i18n/jquery.ui.datepicker-et.js +23 -0
  749. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/i18n/jquery.ui.datepicker-eu.js +23 -0
  750. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/i18n/jquery.ui.datepicker-fa.js +59 -0
  751. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/i18n/jquery.ui.datepicker-fi.js +23 -0
  752. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/i18n/jquery.ui.datepicker-fo.js +23 -0
  753. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/i18n/jquery.ui.datepicker-fr-CH.js +23 -0
  754. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/i18n/jquery.ui.datepicker-fr.js +25 -0
  755. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/i18n/jquery.ui.datepicker-gl.js +23 -0
  756. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/i18n/jquery.ui.datepicker-he.js +23 -0
  757. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/i18n/jquery.ui.datepicker-hi.js +23 -0
  758. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/i18n/jquery.ui.datepicker-hr.js +23 -0
  759. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/i18n/jquery.ui.datepicker-hu.js +23 -0
  760. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/i18n/jquery.ui.datepicker-hy.js +23 -0
  761. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/i18n/jquery.ui.datepicker-id.js +23 -0
  762. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/i18n/jquery.ui.datepicker-is.js +23 -0
  763. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/i18n/jquery.ui.datepicker-it.js +23 -0
  764. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/i18n/jquery.ui.datepicker-ja.js +23 -0
  765. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/i18n/jquery.ui.datepicker-ka.js +21 -0
  766. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/i18n/jquery.ui.datepicker-kk.js +23 -0
  767. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/i18n/jquery.ui.datepicker-km.js +23 -0
  768. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/i18n/jquery.ui.datepicker-ko.js +23 -0
  769. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/i18n/jquery.ui.datepicker-lb.js +23 -0
  770. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/i18n/jquery.ui.datepicker-lt.js +23 -0
  771. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/i18n/jquery.ui.datepicker-lv.js +23 -0
  772. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/i18n/jquery.ui.datepicker-mk.js +23 -0
  773. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/i18n/jquery.ui.datepicker-ml.js +23 -0
  774. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/i18n/jquery.ui.datepicker-ms.js +23 -0
  775. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/i18n/jquery.ui.datepicker-nl-BE.js +23 -0
  776. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/i18n/jquery.ui.datepicker-nl.js +23 -0
  777. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/i18n/jquery.ui.datepicker-no.js +23 -0
  778. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/i18n/jquery.ui.datepicker-pl.js +23 -0
  779. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/i18n/jquery.ui.datepicker-pt-BR.js +23 -0
  780. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/i18n/jquery.ui.datepicker-pt.js +22 -0
  781. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/i18n/jquery.ui.datepicker-rm.js +21 -0
  782. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/i18n/jquery.ui.datepicker-ro.js +26 -0
  783. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/i18n/jquery.ui.datepicker-ru.js +23 -0
  784. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/i18n/jquery.ui.datepicker-sk.js +23 -0
  785. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/i18n/jquery.ui.datepicker-sl.js +24 -0
  786. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/i18n/jquery.ui.datepicker-sq.js +23 -0
  787. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/i18n/jquery.ui.datepicker-sr-SR.js +23 -0
  788. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/i18n/jquery.ui.datepicker-sr.js +23 -0
  789. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/i18n/jquery.ui.datepicker-sv.js +23 -0
  790. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/i18n/jquery.ui.datepicker-ta.js +23 -0
  791. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/i18n/jquery.ui.datepicker-th.js +23 -0
  792. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/i18n/jquery.ui.datepicker-tj.js +23 -0
  793. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/i18n/jquery.ui.datepicker-tr.js +23 -0
  794. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/i18n/jquery.ui.datepicker-uk.js +24 -0
  795. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/i18n/jquery.ui.datepicker-vi.js +23 -0
  796. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/i18n/jquery.ui.datepicker-zh-CN.js +23 -0
  797. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/i18n/jquery.ui.datepicker-zh-HK.js +23 -0
  798. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/i18n/jquery.ui.datepicker-zh-TW.js +23 -0
  799. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/jquery-ui-1.8.23.custom.js +11713 -0
  800. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/jquery.effects.blind.js +49 -0
  801. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/jquery.effects.bounce.js +78 -0
  802. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/jquery.effects.clip.js +54 -0
  803. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/jquery.effects.core.js +612 -0
  804. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/jquery.effects.drop.js +50 -0
  805. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/jquery.effects.explode.js +79 -0
  806. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/jquery.effects.fade.js +32 -0
  807. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/jquery.effects.fold.js +56 -0
  808. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/jquery.effects.highlight.js +50 -0
  809. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/jquery.effects.pulsate.js +51 -0
  810. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/jquery.effects.scale.js +178 -0
  811. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/jquery.effects.shake.js +57 -0
  812. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/jquery.effects.slide.js +50 -0
  813. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/jquery.effects.transfer.js +45 -0
  814. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/jquery.ui.accordion.js +611 -0
  815. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/jquery.ui.autocomplete.js +631 -0
  816. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/jquery.ui.button.js +414 -0
  817. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/jquery.ui.core.js +334 -0
  818. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/jquery.ui.datepicker.js +1854 -0
  819. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/jquery.ui.dialog.js +866 -0
  820. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/jquery.ui.draggable.js +833 -0
  821. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/jquery.ui.droppable.js +296 -0
  822. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/jquery.ui.mouse.js +167 -0
  823. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/jquery.ui.position.js +308 -0
  824. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/jquery.ui.progressbar.js +109 -0
  825. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/jquery.ui.resizable.js +807 -0
  826. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/jquery.ui.selectable.js +267 -0
  827. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/jquery.ui.slider.js +662 -0
  828. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/jquery.ui.sortable.js +1084 -0
  829. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/jquery.ui.tabs.js +757 -0
  830. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/jquery.ui.widget.js +272 -0
  831. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/minified/jquery.effects.blind.min.js +5 -0
  832. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/minified/jquery.effects.bounce.min.js +5 -0
  833. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/minified/jquery.effects.clip.min.js +5 -0
  834. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/minified/jquery.effects.core.min.js +5 -0
  835. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/minified/jquery.effects.drop.min.js +5 -0
  836. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/minified/jquery.effects.explode.min.js +5 -0
  837. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/minified/jquery.effects.fade.min.js +5 -0
  838. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/minified/jquery.effects.fold.min.js +5 -0
  839. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/minified/jquery.effects.highlight.min.js +5 -0
  840. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/minified/jquery.effects.pulsate.min.js +5 -0
  841. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/minified/jquery.effects.scale.min.js +5 -0
  842. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/minified/jquery.effects.shake.min.js +5 -0
  843. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/minified/jquery.effects.slide.min.js +5 -0
  844. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/minified/jquery.effects.transfer.min.js +5 -0
  845. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/minified/jquery.ui.accordion.min.js +5 -0
  846. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/minified/jquery.ui.autocomplete.min.js +5 -0
  847. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/minified/jquery.ui.button.min.js +5 -0
  848. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/minified/jquery.ui.core.min.js +5 -0
  849. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/minified/jquery.ui.datepicker.min.js +5 -0
  850. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/minified/jquery.ui.dialog.min.js +5 -0
  851. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/minified/jquery.ui.draggable.min.js +5 -0
  852. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/minified/jquery.ui.droppable.min.js +5 -0
  853. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/minified/jquery.ui.mouse.min.js +5 -0
  854. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/minified/jquery.ui.position.min.js +5 -0
  855. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/minified/jquery.ui.progressbar.min.js +5 -0
  856. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/minified/jquery.ui.resizable.min.js +5 -0
  857. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/minified/jquery.ui.selectable.min.js +5 -0
  858. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/minified/jquery.ui.slider.min.js +5 -0
  859. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/minified/jquery.ui.sortable.min.js +5 -0
  860. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/minified/jquery.ui.tabs.min.js +5 -0
  861. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/development-bundle/ui/minified/jquery.ui.widget.min.js +5 -0
  862. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/index.html +383 -0
  863. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/js/jquery-1.8.0.min.js +2 -0
  864. data/skel/project_types/silverstripe3/public/abc/javascript/library/jQuery/ui/js/jquery-ui-1.8.23.custom.min.js +125 -0
  865. data/skel/project_types/silverstripe3/public/abc/javascript/library/spin.min.js +23 -0
  866. data/skel/project_types/silverstripe3/public/abc/javascript/pagination.js +10 -0
  867. data/skel/project_types/silverstripe3/public/abc/lib/bootstrap/css/bootstrap.css +4845 -0
  868. data/skel/project_types/silverstripe3/public/abc/lib/bootstrap/css/bootstrap.min.css +9 -0
  869. data/skel/project_types/silverstripe3/public/abc/lib/bootstrap/js/bootstrap.js +1988 -0
  870. data/skel/project_types/silverstripe3/public/abc/lib/bootstrap/js/bootstrap.min.js +6 -0
  871. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/.gitattributes +8 -0
  872. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/.gitignore +6 -0
  873. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/.travis.yml +3 -0
  874. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/CONTRIBUTING.md +72 -0
  875. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/LICENSE +23 -0
  876. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/README.md +11 -0
  877. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/addon/comment/comment.js +145 -0
  878. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/addon/dialog/dialog.css +32 -0
  879. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/addon/dialog/dialog.js +80 -0
  880. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/addon/display/placeholder.js +54 -0
  881. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/addon/edit/closebrackets.js +82 -0
  882. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/addon/edit/closetag.js +86 -0
  883. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/addon/edit/continuecomment.js +44 -0
  884. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/addon/edit/continuelist.js +25 -0
  885. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/addon/edit/matchbrackets.js +86 -0
  886. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/addon/edit/matchtags.js +51 -0
  887. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/addon/edit/trailingspace.js +15 -0
  888. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/addon/fold/brace-fold.js +93 -0
  889. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/addon/fold/foldcode.js +73 -0
  890. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/addon/fold/foldgutter.js +122 -0
  891. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/addon/fold/indent-fold.js +12 -0
  892. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/addon/fold/xml-fold.js +167 -0
  893. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/addon/hint/anyword-hint.js +34 -0
  894. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/addon/hint/html-hint.js +337 -0
  895. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/addon/hint/javascript-hint.js +146 -0
  896. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/addon/hint/pig-hint.js +119 -0
  897. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/addon/hint/python-hint.js +95 -0
  898. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/addon/hint/show-hint.css +38 -0
  899. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/addon/hint/show-hint.js +274 -0
  900. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/addon/hint/xml-hint.js +68 -0
  901. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/addon/lint/coffeescript-lint.js +25 -0
  902. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/addon/lint/javascript-lint.js +124 -0
  903. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/addon/lint/json-lint.js +15 -0
  904. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/addon/lint/lint.css +96 -0
  905. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/addon/lint/lint.js +203 -0
  906. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/addon/merge/dep/diff_match_patch.js +50 -0
  907. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/addon/merge/merge.css +92 -0
  908. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/addon/merge/merge.js +447 -0
  909. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/addon/mode/loadmode.js +51 -0
  910. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/addon/mode/multiplex.js +101 -0
  911. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/addon/mode/multiplex_test.js +30 -0
  912. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/addon/mode/overlay.js +59 -0
  913. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/addon/runmode/colorize.js +29 -0
  914. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/addon/runmode/runmode-standalone.js +132 -0
  915. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/addon/runmode/runmode.js +56 -0
  916. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/addon/runmode/runmode.node.js +103 -0
  917. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/addon/search/match-highlighter.js +88 -0
  918. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/addon/search/search.js +131 -0
  919. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/addon/search/searchcursor.js +143 -0
  920. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/addon/selection/active-line.js +39 -0
  921. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/addon/selection/mark-selection.js +108 -0
  922. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/addon/tern/tern.css +85 -0
  923. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/addon/tern/tern.js +608 -0
  924. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/addon/tern/worker.js +39 -0
  925. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/bin/compress +92 -0
  926. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/bin/lint +15 -0
  927. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/bin/source-highlight +61 -0
  928. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/bower.json +16 -0
  929. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/demo/activeline.html +70 -0
  930. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/demo/anywordhint.html +69 -0
  931. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/demo/bidi.html +61 -0
  932. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/demo/btree.html +87 -0
  933. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/demo/buffers.html +98 -0
  934. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/demo/changemode.html +50 -0
  935. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/demo/closebrackets.html +63 -0
  936. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/demo/closetag.html +37 -0
  937. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/demo/complete.html +70 -0
  938. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/demo/emacs.html +66 -0
  939. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/demo/folding.html +85 -0
  940. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/demo/fullscreen.html +147 -0
  941. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/demo/html5complete.html +44 -0
  942. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/demo/indentwrap.html +49 -0
  943. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/demo/lint.html +90 -0
  944. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/demo/loadmode.html +40 -0
  945. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/demo/marker.html +59 -0
  946. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/demo/markselection.html +36 -0
  947. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/demo/matchhighlighter.html +38 -0
  948. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/demo/matchtags.html +38 -0
  949. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/demo/merge.html +63 -0
  950. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/demo/multiplex.html +66 -0
  951. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/demo/mustache.html +59 -0
  952. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/demo/placeholder.html +36 -0
  953. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/demo/preview.html +76 -0
  954. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/demo/resize.html +49 -0
  955. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/demo/runmode.html +50 -0
  956. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/demo/search.html +85 -0
  957. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/demo/spanaffectswrapping_shim.html +73 -0
  958. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/demo/tern.html +122 -0
  959. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/demo/theme.html +100 -0
  960. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/demo/trailingspace.html +39 -0
  961. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/demo/variableheight.html +52 -0
  962. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/demo/vim.html +65 -0
  963. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/demo/visibletabs.html +53 -0
  964. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/demo/widget.html +74 -0
  965. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/demo/xmlcomplete.html +106 -0
  966. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/index.html +480 -0
  967. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/keymap/emacs.js +387 -0
  968. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/keymap/extra.js +43 -0
  969. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/keymap/vim.js +3648 -0
  970. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/lib/codemirror.css +258 -0
  971. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/lib/codemirror.js +5799 -0
  972. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/apl/apl.js +160 -0
  973. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/apl/index.html +61 -0
  974. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/asterisk/asterisk.js +183 -0
  975. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/asterisk/index.html +142 -0
  976. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/clike/clike.js +362 -0
  977. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/clike/index.html +103 -0
  978. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/clike/scala.html +767 -0
  979. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/clojure/clojure.js +224 -0
  980. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/clojure/index.html +76 -0
  981. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/cobol/cobol.js +240 -0
  982. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/cobol/index.html +195 -0
  983. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/coffeescript/LICENSE +22 -0
  984. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/coffeescript/coffeescript.js +348 -0
  985. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/coffeescript/index.html +728 -0
  986. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/commonlisp/commonlisp.js +105 -0
  987. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/commonlisp/index.html +165 -0
  988. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/css/css.js +623 -0
  989. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/css/index.html +58 -0
  990. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/css/scss.html +145 -0
  991. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/css/scss_test.js +80 -0
  992. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/css/test.js +126 -0
  993. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/d/d.js +205 -0
  994. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/d/index.html +262 -0
  995. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/diff/diff.js +32 -0
  996. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/diff/index.html +105 -0
  997. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/ecl/ecl.js +192 -0
  998. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/ecl/index.html +39 -0
  999. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/erlang/erlang.js +464 -0
  1000. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/erlang/index.html +64 -0
  1001. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/gas/gas.js +330 -0
  1002. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/gas/index.html +57 -0
  1003. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/gfm/gfm.js +96 -0
  1004. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/gfm/index.html +74 -0
  1005. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/gfm/test.js +112 -0
  1006. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/go/go.js +168 -0
  1007. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/go/index.html +74 -0
  1008. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/groovy/groovy.js +211 -0
  1009. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/groovy/index.html +73 -0
  1010. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/haml/haml.js +153 -0
  1011. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/haml/index.html +67 -0
  1012. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/haml/test.js +94 -0
  1013. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/haskell/haskell.js +246 -0
  1014. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/haskell/index.html +62 -0
  1015. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/haxe/haxe.js +429 -0
  1016. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/haxe/index.html +90 -0
  1017. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/htmlembedded/htmlembedded.js +73 -0
  1018. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/htmlembedded/index.html +49 -0
  1019. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/htmlmixed/htmlmixed.js +104 -0
  1020. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/htmlmixed/index.html +73 -0
  1021. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/http/http.js +98 -0
  1022. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/http/index.html +32 -0
  1023. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/jade/index.html +54 -0
  1024. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/jade/jade.js +90 -0
  1025. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/javascript/index.html +94 -0
  1026. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/javascript/javascript.js +479 -0
  1027. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/javascript/test.js +10 -0
  1028. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/javascript/typescript.html +48 -0
  1029. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/jinja2/index.html +38 -0
  1030. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/jinja2/jinja2.js +42 -0
  1031. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/less/index.html +741 -0
  1032. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/less/less.js +258 -0
  1033. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/livescript/LICENSE +23 -0
  1034. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/livescript/index.html +446 -0
  1035. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/livescript/livescript.js +267 -0
  1036. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/livescript/livescript.ls +266 -0
  1037. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/lua/index.html +74 -0
  1038. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/lua/lua.js +144 -0
  1039. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/markdown/index.html +349 -0
  1040. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/markdown/markdown.js +551 -0
  1041. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/markdown/test.js +656 -0
  1042. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/meta.js +81 -0
  1043. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/mirc/index.html +149 -0
  1044. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/mirc/mirc.js +177 -0
  1045. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/nginx/index.html +167 -0
  1046. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/nginx/nginx.js +163 -0
  1047. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/ntriples/index.html +33 -0
  1048. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/ntriples/ntriples.js +170 -0
  1049. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/ocaml/index.html +131 -0
  1050. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/ocaml/ocaml.js +116 -0
  1051. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/pascal/LICENSE +7 -0
  1052. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/pascal/index.html +48 -0
  1053. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/pascal/pascal.js +94 -0
  1054. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/perl/LICENSE +19 -0
  1055. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/perl/index.html +62 -0
  1056. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/perl/perl.js +816 -0
  1057. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/php/index.html +51 -0
  1058. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/php/php.js +132 -0
  1059. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/pig/index.html +42 -0
  1060. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/pig/pig.js +171 -0
  1061. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/properties/index.html +41 -0
  1062. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/properties/properties.js +63 -0
  1063. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/python/LICENSE.txt +21 -0
  1064. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/python/index.html +175 -0
  1065. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/python/python.js +358 -0
  1066. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/q/index.html +131 -0
  1067. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/q/q.js +124 -0
  1068. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/r/LICENSE +24 -0
  1069. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/r/index.html +74 -0
  1070. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/r/r.js +141 -0
  1071. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/rpm/changes/changes.js +19 -0
  1072. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/rpm/changes/index.html +53 -0
  1073. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/rpm/spec/index.html +99 -0
  1074. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/rpm/spec/spec.css +5 -0
  1075. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/rpm/spec/spec.js +66 -0
  1076. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/rst/LICENSE.txt +21 -0
  1077. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/rst/index.html +524 -0
  1078. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/rst/rst.js +561 -0
  1079. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/ruby/LICENSE +24 -0
  1080. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/ruby/index.html +173 -0
  1081. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/ruby/ruby.js +247 -0
  1082. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/rust/index.html +48 -0
  1083. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/rust/rust.js +436 -0
  1084. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/sass/index.html +54 -0
  1085. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/sass/sass.js +330 -0
  1086. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/scheme/index.html +65 -0
  1087. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/scheme/scheme.js +232 -0
  1088. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/shell/index.html +51 -0
  1089. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/shell/shell.js +118 -0
  1090. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/sieve/LICENSE +19 -0
  1091. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/sieve/index.html +81 -0
  1092. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/sieve/sieve.js +183 -0
  1093. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/smalltalk/index.html +57 -0
  1094. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/smalltalk/smalltalk.js +151 -0
  1095. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/smarty/index.html +126 -0
  1096. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/smarty/smarty.js +205 -0
  1097. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/smartymixed/index.html +107 -0
  1098. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/smartymixed/smartymixed.js +170 -0
  1099. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/sparql/index.html +42 -0
  1100. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/sparql/sparql.js +145 -0
  1101. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/sql/index.html +68 -0
  1102. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/sql/sql.js +349 -0
  1103. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/stex/index.html +98 -0
  1104. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/stex/stex.js +246 -0
  1105. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/stex/test.js +120 -0
  1106. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/tcl/index.html +129 -0
  1107. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/tcl/tcl.js +131 -0
  1108. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/tiddlywiki/index.html +142 -0
  1109. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/tiddlywiki/tiddlywiki.css +14 -0
  1110. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/tiddlywiki/tiddlywiki.js +353 -0
  1111. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/tiki/index.html +81 -0
  1112. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/tiki/tiki.css +26 -0
  1113. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/tiki/tiki.js +308 -0
  1114. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/turtle/index.html +39 -0
  1115. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/turtle/turtle.js +145 -0
  1116. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/vb/LICENSE.txt +21 -0
  1117. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/vb/index.html +88 -0
  1118. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/vb/vb.js +259 -0
  1119. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/vbscript/index.html +43 -0
  1120. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/vbscript/vbscript.js +334 -0
  1121. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/velocity/index.html +103 -0
  1122. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/velocity/velocity.js +144 -0
  1123. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/verilog/index.html +121 -0
  1124. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/verilog/verilog.js +182 -0
  1125. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/xml/index.html +45 -0
  1126. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/xml/xml.js +341 -0
  1127. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/xquery/LICENSE +20 -0
  1128. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/xquery/index.html +221 -0
  1129. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/xquery/test.js +64 -0
  1130. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/xquery/xquery.js +450 -0
  1131. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/yaml/index.html +68 -0
  1132. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/yaml/yaml.js +97 -0
  1133. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/z80/index.html +39 -0
  1134. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/mode/z80/z80.js +85 -0
  1135. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/package.json +19 -0
  1136. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/test/comment_test.js +51 -0
  1137. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/test/doc_test.js +329 -0
  1138. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/test/driver.js +139 -0
  1139. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/test/emacs_test.js +135 -0
  1140. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/test/index.html +196 -0
  1141. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/test/lint/acorn.js +1593 -0
  1142. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/test/lint/lint.js +112 -0
  1143. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/test/lint/parse-js.js +1372 -0
  1144. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/test/lint/walk.js +216 -0
  1145. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/test/mode_test.css +10 -0
  1146. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/test/mode_test.js +192 -0
  1147. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/test/phantom_driver.js +31 -0
  1148. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/test/run.js +34 -0
  1149. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/test/test.js +1511 -0
  1150. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/test/vim_test.js +2356 -0
  1151. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/theme/3024-day.css +33 -0
  1152. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/theme/3024-night.css +33 -0
  1153. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/theme/ambiance-mobile.css +5 -0
  1154. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/theme/ambiance.css +75 -0
  1155. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/theme/base16-dark.css +33 -0
  1156. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/theme/base16-light.css +33 -0
  1157. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/theme/blackboard.css +25 -0
  1158. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/theme/cobalt.css +18 -0
  1159. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/theme/eclipse.css +25 -0
  1160. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/theme/elegant.css +10 -0
  1161. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/theme/erlang-dark.css +21 -0
  1162. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/theme/lesser-dark.css +44 -0
  1163. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/theme/midnight.css +43 -0
  1164. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/theme/monokai.css +28 -0
  1165. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/theme/neat.css +9 -0
  1166. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/theme/night.css +21 -0
  1167. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/theme/rubyblue.css +21 -0
  1168. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/theme/solarized.css +207 -0
  1169. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/theme/tomorrow-night-eighties.css +33 -0
  1170. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/theme/twilight.css +26 -0
  1171. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/theme/vibrant-ink.css +27 -0
  1172. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/theme/xq-dark.css +46 -0
  1173. data/skel/project_types/silverstripe3/public/abc/lib/codemirror/theme/xq-light.css +43 -0
  1174. data/skel/project_types/silverstripe3/public/abc/templates/ChildList.ss +34 -0
  1175. data/skel/project_types/silverstripe3/public/abc/templates/ColourPickerField.ss +1 -0
  1176. data/skel/project_types/silverstripe3/public/abc/templates/OrderList.ss +27 -0
  1177. data/skel/project_types/silverstripe3/public/abc/templates/Pagination.ss +32 -0
  1178. data/skel/project_types/silverstripe3/public/abc/templates/SyntaxHighlightedField.ss +1 -0
  1179. data/skel/project_types/silverstripe3/public/index.php.bak +66 -0
  1180. data/skel/project_types/silverstripe3/public/project/.htaccess +3 -0
  1181. data/skel/project_types/silverstripe3/public/project/_config/config.yml +9 -0
  1182. data/skel/project_types/silverstripe3/public/project/_config.php +147 -0
  1183. data/skel/project_types/silverstripe3/public/project/code/Pages/Page.php +57 -0
  1184. data/skel/project_types/silverstripe3/public/themes/project/images/apple-touch-icon-114x114-precomposed.png +0 -0
  1185. data/skel/project_types/silverstripe3/public/themes/project/images/apple-touch-icon-72x72-precomposed.png +0 -0
  1186. data/skel/project_types/silverstripe3/public/themes/project/images/apple-touch-icon.png +0 -0
  1187. data/skel/project_types/silverstripe3/public/themes/project/images/favicon.png +0 -0
  1188. data/skel/project_types/silverstripe3/public/themes/project/templates/Layout/Page.ss +2 -0
  1189. data/skel/project_types/silverstripe3/public/themes/project/templates/Layout/Security.ss +2 -0
  1190. data/skel/project_types/silverstripe3/public/themes/project/templates/Page.ss +73 -0
  1191. data/skel/project_types/silverstripe3/public/zzz-abc/_config.php +22 -0
  1192. metadata +1240 -5
@@ -0,0 +1,2817 @@
1
+ /*
2
+ * jPlayer Plugin for jQuery JavaScript Library
3
+ * http://www.jplayer.org
4
+ *
5
+ * Copyright (c) 2009 - 2013 Happyworm Ltd
6
+ * Dual licensed under the MIT and GPL licenses.
7
+ * - http://www.opensource.org/licenses/mit-license.php
8
+ * - http://www.gnu.org/copyleft/gpl.html
9
+ *
10
+ * Author: Mark J Panaghiston
11
+ * Version: 2.3.0
12
+ * Date: 20th April 2013
13
+ */
14
+
15
+ /* Code verified using http://www.jshint.com/ */
16
+ /*jshint asi:false, bitwise:false, boss:false, browser:true, curly:true, debug:false, eqeqeq:true, eqnull:false, evil:false, forin:false, immed:false, jquery:true, laxbreak:false, newcap:true, noarg:true, noempty:true, nonew:true, onevar:false, passfail:false, plusplus:false, regexp:false, undef:true, sub:false, strict:false, white:false, smarttabs:true */
17
+ /*global define:false, ActiveXObject:false, alert:false */
18
+
19
+ (function (root, factory) {
20
+ if (typeof define === 'function' && define.amd) {
21
+ // AMD. Register as an anonymous module.
22
+ define(['jquery'], factory);
23
+ } else {
24
+ // Browser globals
25
+ factory(root.jQuery);
26
+ }
27
+ }(this, function ($, undefined) {
28
+
29
+ // Adapted from jquery.ui.widget.js (1.8.7): $.widget.bridge
30
+ $.fn.jPlayer = function( options ) {
31
+ var name = "jPlayer";
32
+ var isMethodCall = typeof options === "string",
33
+ args = Array.prototype.slice.call( arguments, 1 ),
34
+ returnValue = this;
35
+
36
+ // allow multiple hashes to be passed on init
37
+ options = !isMethodCall && args.length ?
38
+ $.extend.apply( null, [ true, options ].concat(args) ) :
39
+ options;
40
+
41
+ // prevent calls to internal methods
42
+ if ( isMethodCall && options.charAt( 0 ) === "_" ) {
43
+ return returnValue;
44
+ }
45
+
46
+ if ( isMethodCall ) {
47
+ this.each(function() {
48
+ var instance = $.data( this, name ),
49
+ methodValue = instance && $.isFunction( instance[options] ) ?
50
+ instance[ options ].apply( instance, args ) :
51
+ instance;
52
+ if ( methodValue !== instance && methodValue !== undefined ) {
53
+ returnValue = methodValue;
54
+ return false;
55
+ }
56
+ });
57
+ } else {
58
+ this.each(function() {
59
+ var instance = $.data( this, name );
60
+ if ( instance ) {
61
+ // instance.option( options || {} )._init(); // Orig jquery.ui.widget.js code: Not recommend for jPlayer. ie., Applying new options to an existing instance (via the jPlayer constructor) and performing the _init(). The _init() is what concerns me. It would leave a lot of event handlers acting on jPlayer instance and the interface.
62
+ instance.option( options || {} ); // The new constructor only changes the options. Changing options only has basic support atm.
63
+ } else {
64
+ $.data( this, name, new $.jPlayer( options, this ) );
65
+ }
66
+ });
67
+ }
68
+
69
+ return returnValue;
70
+ };
71
+
72
+ $.jPlayer = function( options, element ) {
73
+ // allow instantiation without initializing for simple inheritance
74
+ if ( arguments.length ) {
75
+ this.element = $(element);
76
+ this.options = $.extend(true, {},
77
+ this.options,
78
+ options
79
+ );
80
+ var self = this;
81
+ this.element.bind( "remove.jPlayer", function() {
82
+ self.destroy();
83
+ });
84
+ this._init();
85
+ }
86
+ };
87
+ // End of: (Adapted from jquery.ui.widget.js (1.8.7))
88
+
89
+ // Emulated HTML5 methods and properties
90
+ $.jPlayer.emulateMethods = "load play pause";
91
+ $.jPlayer.emulateStatus = "src readyState networkState currentTime duration paused ended playbackRate";
92
+ $.jPlayer.emulateOptions = "muted volume";
93
+
94
+ // Reserved event names generated by jPlayer that are not part of the HTML5 Media element spec
95
+ $.jPlayer.reservedEvent = "ready flashreset resize repeat error warning";
96
+
97
+ // Events generated by jPlayer
98
+ $.jPlayer.event = {};
99
+ $.each(
100
+ [
101
+ 'ready',
102
+ 'flashreset', // Similar to the ready event if the Flash solution is set to display:none and then shown again or if it's reloaded for another reason by the browser. For example, using CSS position:fixed on Firefox for the full screen feature.
103
+ 'resize', // Occurs when the size changes through a full/restore screen operation or if the size/sizeFull options are changed.
104
+ 'repeat', // Occurs when the repeat status changes. Usually through clicks on the repeat button of the interface.
105
+ 'click', // Occurs when the user clicks on one of the following: poster image, html video, flash video.
106
+ 'error', // Event error code in event.jPlayer.error.type. See $.jPlayer.error
107
+ 'warning', // Event warning code in event.jPlayer.warning.type. See $.jPlayer.warning
108
+
109
+ // Other events match HTML5 spec.
110
+ 'loadstart',
111
+ 'progress',
112
+ 'suspend',
113
+ 'abort',
114
+ 'emptied',
115
+ 'stalled',
116
+ 'play',
117
+ 'pause',
118
+ 'loadedmetadata',
119
+ 'loadeddata',
120
+ 'waiting',
121
+ 'playing',
122
+ 'canplay',
123
+ 'canplaythrough',
124
+ 'seeking',
125
+ 'seeked',
126
+ 'timeupdate',
127
+ 'ended',
128
+ 'ratechange',
129
+ 'durationchange',
130
+ 'volumechange'
131
+ ],
132
+ function() {
133
+ $.jPlayer.event[ this ] = 'jPlayer_' + this;
134
+ }
135
+ );
136
+
137
+ $.jPlayer.htmlEvent = [ // These HTML events are bubbled through to the jPlayer event, without any internal action.
138
+ "loadstart",
139
+ // "progress", // jPlayer uses internally before bubbling.
140
+ // "suspend", // jPlayer uses internally before bubbling.
141
+ "abort",
142
+ // "error", // jPlayer uses internally before bubbling.
143
+ "emptied",
144
+ "stalled",
145
+ // "play", // jPlayer uses internally before bubbling.
146
+ // "pause", // jPlayer uses internally before bubbling.
147
+ "loadedmetadata",
148
+ "loadeddata",
149
+ // "waiting", // jPlayer uses internally before bubbling.
150
+ // "playing", // jPlayer uses internally before bubbling.
151
+ "canplay",
152
+ "canplaythrough",
153
+ // "seeking", // jPlayer uses internally before bubbling.
154
+ // "seeked", // jPlayer uses internally before bubbling.
155
+ // "timeupdate", // jPlayer uses internally before bubbling.
156
+ // "ended", // jPlayer uses internally before bubbling.
157
+ "ratechange"
158
+ // "durationchange" // jPlayer uses internally before bubbling.
159
+ // "volumechange" // jPlayer uses internally before bubbling.
160
+ ];
161
+
162
+ $.jPlayer.pause = function() {
163
+ $.each($.jPlayer.prototype.instances, function(i, element) {
164
+ if(element.data("jPlayer").status.srcSet) { // Check that media is set otherwise would cause error event.
165
+ element.jPlayer("pause");
166
+ }
167
+ });
168
+ };
169
+
170
+ // Default for jPlayer option.timeFormat
171
+ $.jPlayer.timeFormat = {
172
+ showHour: false,
173
+ showMin: true,
174
+ showSec: true,
175
+ padHour: false,
176
+ padMin: true,
177
+ padSec: true,
178
+ sepHour: ":",
179
+ sepMin: ":",
180
+ sepSec: ""
181
+ };
182
+ var ConvertTime = function() {
183
+ this.init();
184
+ };
185
+ ConvertTime.prototype = {
186
+ init: function() {
187
+ this.options = {
188
+ timeFormat: $.jPlayer.timeFormat
189
+ };
190
+ },
191
+ time: function(s) { // function used on jPlayer.prototype._convertTime to enable per instance options.
192
+ s = (s && typeof s === 'number') ? s : 0;
193
+
194
+ var myTime = new Date(s * 1000),
195
+ hour = myTime.getUTCHours(),
196
+ min = this.options.timeFormat.showHour ? myTime.getUTCMinutes() : myTime.getUTCMinutes() + hour * 60,
197
+ sec = this.options.timeFormat.showMin ? myTime.getUTCSeconds() : myTime.getUTCSeconds() + min * 60,
198
+ strHour = (this.options.timeFormat.padHour && hour < 10) ? "0" + hour : hour,
199
+ strMin = (this.options.timeFormat.padMin && min < 10) ? "0" + min : min,
200
+ strSec = (this.options.timeFormat.padSec && sec < 10) ? "0" + sec : sec,
201
+ strTime = "";
202
+
203
+ strTime += this.options.timeFormat.showHour ? strHour + this.options.timeFormat.sepHour : "";
204
+ strTime += this.options.timeFormat.showMin ? strMin + this.options.timeFormat.sepMin : "";
205
+ strTime += this.options.timeFormat.showSec ? strSec + this.options.timeFormat.sepSec : "";
206
+
207
+ return strTime;
208
+ }
209
+ };
210
+ var myConvertTime = new ConvertTime();
211
+ $.jPlayer.convertTime = function(s) {
212
+ return myConvertTime.time(s);
213
+ };
214
+
215
+ // Adapting jQuery 1.4.4 code for jQuery.browser. Required since jQuery 1.3.2 does not detect Chrome as webkit.
216
+ $.jPlayer.uaBrowser = function( userAgent ) {
217
+ var ua = userAgent.toLowerCase();
218
+
219
+ // Useragent RegExp
220
+ var rwebkit = /(webkit)[ \/]([\w.]+)/;
221
+ var ropera = /(opera)(?:.*version)?[ \/]([\w.]+)/;
222
+ var rmsie = /(msie) ([\w.]+)/;
223
+ var rmozilla = /(mozilla)(?:.*? rv:([\w.]+))?/;
224
+
225
+ var match = rwebkit.exec( ua ) ||
226
+ ropera.exec( ua ) ||
227
+ rmsie.exec( ua ) ||
228
+ ua.indexOf("compatible") < 0 && rmozilla.exec( ua ) ||
229
+ [];
230
+
231
+ return { browser: match[1] || "", version: match[2] || "0" };
232
+ };
233
+
234
+ // Platform sniffer for detecting mobile devices
235
+ $.jPlayer.uaPlatform = function( userAgent ) {
236
+ var ua = userAgent.toLowerCase();
237
+
238
+ // Useragent RegExp
239
+ var rplatform = /(ipad|iphone|ipod|android|blackberry|playbook|windows ce|webos)/;
240
+ var rtablet = /(ipad|playbook)/;
241
+ var randroid = /(android)/;
242
+ var rmobile = /(mobile)/;
243
+
244
+ var platform = rplatform.exec( ua ) || [];
245
+ var tablet = rtablet.exec( ua ) ||
246
+ !rmobile.exec( ua ) && randroid.exec( ua ) ||
247
+ [];
248
+
249
+ if(platform[1]) {
250
+ platform[1] = platform[1].replace(/\s/g, "_"); // Change whitespace to underscore. Enables dot notation.
251
+ }
252
+
253
+ return { platform: platform[1] || "", tablet: tablet[1] || "" };
254
+ };
255
+
256
+ $.jPlayer.browser = {
257
+ };
258
+ $.jPlayer.platform = {
259
+ };
260
+
261
+ var browserMatch = $.jPlayer.uaBrowser(navigator.userAgent);
262
+ if ( browserMatch.browser ) {
263
+ $.jPlayer.browser[ browserMatch.browser ] = true;
264
+ $.jPlayer.browser.version = browserMatch.version;
265
+ }
266
+ var platformMatch = $.jPlayer.uaPlatform(navigator.userAgent);
267
+ if ( platformMatch.platform ) {
268
+ $.jPlayer.platform[ platformMatch.platform ] = true;
269
+ $.jPlayer.platform.mobile = !platformMatch.tablet;
270
+ $.jPlayer.platform.tablet = !!platformMatch.tablet;
271
+ }
272
+
273
+ // Internet Explorer (IE) Browser Document Mode Sniffer. Based on code at:
274
+ // http://msdn.microsoft.com/en-us/library/cc288325%28v=vs.85%29.aspx#GetMode
275
+ $.jPlayer.getDocMode = function() {
276
+ var docMode;
277
+ if ($.jPlayer.browser.msie) {
278
+ if (document.documentMode) { // IE8 or later
279
+ docMode = document.documentMode;
280
+ } else { // IE 5-7
281
+ docMode = 5; // Assume quirks mode unless proven otherwise
282
+ if (document.compatMode) {
283
+ if (document.compatMode === "CSS1Compat") {
284
+ docMode = 7; // standards mode
285
+ }
286
+ }
287
+ }
288
+ }
289
+ return docMode;
290
+ };
291
+ $.jPlayer.browser.documentMode = $.jPlayer.getDocMode();
292
+
293
+ $.jPlayer.nativeFeatures = {
294
+ init: function() {
295
+
296
+ /* Fullscreen function naming influenced by W3C naming.
297
+ * No support for: Mozilla Proposal: https://wiki.mozilla.org/Gecko:FullScreenAPI
298
+ */
299
+
300
+ var d = document,
301
+ v = d.createElement('video'),
302
+ spec = {
303
+ // http://www.w3.org/TR/fullscreen/
304
+ w3c: [
305
+ 'fullscreenEnabled',
306
+ 'fullscreenElement',
307
+ 'requestFullscreen',
308
+ 'exitFullscreen',
309
+ 'fullscreenchange',
310
+ 'fullscreenerror'
311
+ ],
312
+ // https://developer.mozilla.org/en-US/docs/DOM/Using_fullscreen_mode
313
+ moz: [
314
+ 'mozFullScreenEnabled',
315
+ 'mozFullScreenElement',
316
+ 'mozRequestFullScreen',
317
+ 'mozCancelFullScreen',
318
+ 'mozfullscreenchange',
319
+ 'mozfullscreenerror'
320
+ ],
321
+ // http://developer.apple.com/library/safari/#documentation/WebKit/Reference/ElementClassRef/Element/Element.html
322
+ // http://developer.apple.com/library/safari/#documentation/UserExperience/Reference/DocumentAdditionsReference/DocumentAdditions/DocumentAdditions.html
323
+ webkit: [
324
+ '',
325
+ 'webkitCurrentFullScreenElement',
326
+ 'webkitRequestFullScreen',
327
+ 'webkitCancelFullScreen',
328
+ 'webkitfullscreenchange',
329
+ ''
330
+ ],
331
+ // http://developer.apple.com/library/safari/#documentation/AudioVideo/Reference/HTMLVideoElementClassReference/HTMLVideoElement/HTMLVideoElement.html
332
+ webkitVideo: [
333
+ 'webkitSupportsFullscreen',
334
+ 'webkitDisplayingFullscreen',
335
+ 'webkitEnterFullscreen',
336
+ 'webkitExitFullscreen',
337
+ '',
338
+ ''
339
+ ]
340
+ },
341
+ specOrder = [
342
+ 'w3c',
343
+ 'moz',
344
+ 'webkit',
345
+ 'webkitVideo'
346
+ ],
347
+ fs, i, il;
348
+
349
+ this.fullscreen = fs = {
350
+ support: {
351
+ w3c: !!d[spec.w3c[0]],
352
+ moz: !!d[spec.moz[0]],
353
+ webkit: typeof d[spec.webkit[3]] === 'function',
354
+ webkitVideo: typeof v[spec.webkitVideo[2]] === 'function'
355
+ },
356
+ used: {}
357
+ };
358
+
359
+ // Store the name of the spec being used and as a handy boolean.
360
+ for(i = 0, il = specOrder.length; i < il; i++) {
361
+ var n = specOrder[i];
362
+ if(fs.support[n]) {
363
+ fs.spec = n;
364
+ fs.used[n] = true;
365
+ break;
366
+ }
367
+ }
368
+
369
+ if(fs.spec) {
370
+ var s = spec[fs.spec];
371
+ fs.api = {
372
+ fullscreenEnabled: true,
373
+ fullscreenElement: function(elem) {
374
+ elem = elem ? elem : d; // Video element required for webkitVideo
375
+ return elem[s[1]];
376
+ },
377
+ requestFullscreen: function(elem) {
378
+ return elem[s[2]]();
379
+ },
380
+ exitFullscreen: function(elem) {
381
+ elem = elem ? elem : d; // Video element required for webkitVideo
382
+ return elem[s[3]]();
383
+ }
384
+ };
385
+ fs.event = {
386
+ fullscreenchange: s[4],
387
+ fullscreenerror: s[5]
388
+ };
389
+ } else {
390
+ fs.api = {
391
+ fullscreenEnabled: false,
392
+ fullscreenElement: function() {
393
+ return null;
394
+ },
395
+ requestFullscreen: function() {},
396
+ exitFullscreen: function() {}
397
+ };
398
+ fs.event = {};
399
+ }
400
+ }
401
+ };
402
+ $.jPlayer.nativeFeatures.init();
403
+
404
+ // The keyboard control system.
405
+
406
+ // The current jPlayer instance in focus.
407
+ $.jPlayer.focus = null;
408
+
409
+ // The list of element node names to ignore with key controls.
410
+ $.jPlayer.keyIgnoreElementNames = "INPUT TEXTAREA";
411
+
412
+ // The function that deals with key presses.
413
+ var keyBindings = function(event) {
414
+
415
+ var f = $.jPlayer.focus,
416
+ ignoreKey;
417
+
418
+ // A jPlayer instance must be in focus. ie., keyEnabled and the last one played.
419
+ if(f) {
420
+ // What generated the key press?
421
+ $.each( $.jPlayer.keyIgnoreElementNames.split(/\s+/g), function(i, name) {
422
+ // The strings should already be uppercase.
423
+ if(event.target.nodeName.toUpperCase() === name.toUpperCase()) {
424
+ ignoreKey = true;
425
+ return false; // exit each.
426
+ }
427
+ });
428
+ if(!ignoreKey) {
429
+ // See if the key pressed matches any of the bindings.
430
+ $.each(f.options.keyBindings, function(action, binding) {
431
+ // The binding could be a null when the default has been disabled. ie., 1st clause in if()
432
+ if(binding && event.which === binding.key && $.isFunction(binding.fn)) {
433
+ event.preventDefault(); // Key being used by jPlayer, so prevent default operation.
434
+ binding.fn(f);
435
+ return false; // exit each.
436
+ }
437
+ });
438
+ }
439
+ }
440
+ };
441
+
442
+ $.jPlayer.keys = function(en) {
443
+ var event = "keydown.jPlayer";
444
+ // Remove any binding, just in case enabled more than once.
445
+ $(document.documentElement).unbind(event);
446
+ if(en) {
447
+ $(document.documentElement).bind(event, keyBindings);
448
+ }
449
+ };
450
+
451
+ // Enable the global key control handler ready for any jPlayer instance with the keyEnabled option enabled.
452
+ $.jPlayer.keys(true);
453
+
454
+ $.jPlayer.prototype = {
455
+ count: 0, // Static Variable: Change it via prototype.
456
+ version: { // Static Object
457
+ script: "2.3.0",
458
+ needFlash: "2.3.0",
459
+ flash: "unknown"
460
+ },
461
+ options: { // Instanced in $.jPlayer() constructor
462
+ swfPath: "js", // Path to Jplayer.swf. Can be relative, absolute or server root relative.
463
+ solution: "html, flash", // Valid solutions: html, flash. Order defines priority. 1st is highest,
464
+ supplied: "mp3", // Defines which formats jPlayer will try and support and the priority by the order. 1st is highest,
465
+ preload: 'metadata', // HTML5 Spec values: none, metadata, auto.
466
+ volume: 0.8, // The volume. Number 0 to 1.
467
+ muted: false,
468
+ wmode: "opaque", // Valid wmode: window, transparent, opaque, direct, gpu.
469
+ backgroundColor: "#000000", // To define the jPlayer div and Flash background color.
470
+ cssSelectorAncestor: "#jp_container_1",
471
+ cssSelector: { // * denotes properties that should only be required when video media type required. _cssSelector() would require changes to enable splitting these into Audio and Video defaults.
472
+ videoPlay: ".jp-video-play", // *
473
+ play: ".jp-play",
474
+ pause: ".jp-pause",
475
+ stop: ".jp-stop",
476
+ seekBar: ".jp-seek-bar",
477
+ playBar: ".jp-play-bar",
478
+ mute: ".jp-mute",
479
+ unmute: ".jp-unmute",
480
+ volumeBar: ".jp-volume-bar",
481
+ volumeBarValue: ".jp-volume-bar-value",
482
+ volumeMax: ".jp-volume-max",
483
+ currentTime: ".jp-current-time",
484
+ duration: ".jp-duration",
485
+ fullScreen: ".jp-full-screen", // *
486
+ restoreScreen: ".jp-restore-screen", // *
487
+ repeat: ".jp-repeat",
488
+ repeatOff: ".jp-repeat-off",
489
+ gui: ".jp-gui", // The interface used with autohide feature.
490
+ noSolution: ".jp-no-solution" // For error feedback when jPlayer cannot find a solution.
491
+ },
492
+ smoothPlayBar: false, // Smooths the play bar transitions, which affects clicks and short media with big changes per second.
493
+ fullScreen: false, // Native Full Screen
494
+ fullWindow: false,
495
+ autohide: {
496
+ restored: false, // Controls the interface autohide feature.
497
+ full: true, // Controls the interface autohide feature.
498
+ fadeIn: 200, // Milliseconds. The period of the fadeIn anim.
499
+ fadeOut: 600, // Milliseconds. The period of the fadeOut anim.
500
+ hold: 1000 // Milliseconds. The period of the pause before autohide beings.
501
+ },
502
+ loop: false,
503
+ repeat: function(event) { // The default jPlayer repeat event handler
504
+ if(event.jPlayer.options.loop) {
505
+ $(this).unbind(".jPlayerRepeat").bind($.jPlayer.event.ended + ".jPlayer.jPlayerRepeat", function() {
506
+ $(this).jPlayer("play");
507
+ });
508
+ } else {
509
+ $(this).unbind(".jPlayerRepeat");
510
+ }
511
+ },
512
+ nativeVideoControls: {
513
+ // Works well on standard browsers.
514
+ // Phone and tablet browsers can have problems with the controls disappearing.
515
+ },
516
+ noFullWindow: {
517
+ msie: /msie [0-6]\./,
518
+ ipad: /ipad.*?os [0-4]\./,
519
+ iphone: /iphone/,
520
+ ipod: /ipod/,
521
+ android_pad: /android [0-3]\.(?!.*?mobile)/,
522
+ android_phone: /android.*?mobile/,
523
+ blackberry: /blackberry/,
524
+ windows_ce: /windows ce/,
525
+ iemobile: /iemobile/,
526
+ webos: /webos/
527
+ },
528
+ noVolume: {
529
+ ipad: /ipad/,
530
+ iphone: /iphone/,
531
+ ipod: /ipod/,
532
+ android_pad: /android(?!.*?mobile)/,
533
+ android_phone: /android.*?mobile/,
534
+ blackberry: /blackberry/,
535
+ windows_ce: /windows ce/,
536
+ iemobile: /iemobile/,
537
+ webos: /webos/,
538
+ playbook: /playbook/
539
+ },
540
+ timeFormat: {
541
+ // Specific time format for this instance. The supported options are defined in $.jPlayer.timeFormat
542
+ // For the undefined options we use the default from $.jPlayer.timeFormat
543
+ },
544
+ keyEnabled: false, // Enables keyboard controls.
545
+ audioFullScreen: false, // Enables keyboard controls to enter full screen with audio media.
546
+ keyBindings: { // The key control object, defining the key codes and the functions to execute.
547
+ // The parameter, f = $.jPlayer.focus, will be checked truethy before attempting to call any of these functions.
548
+ // Properties may be added to this object, in key/fn pairs, to enable other key controls. EG, for the playlist add-on.
549
+ play: {
550
+ key: 32, // space
551
+ fn: function(f) {
552
+ if(f.status.paused) {
553
+ f.play();
554
+ } else {
555
+ f.pause();
556
+ }
557
+ }
558
+ },
559
+ fullScreen: {
560
+ key: 13, // enter
561
+ fn: function(f) {
562
+ if(f.status.video || f.options.audioFullScreen) {
563
+ f._setOption("fullScreen", !f.options.fullScreen);
564
+ }
565
+ }
566
+ },
567
+ muted: {
568
+ key: 8, // backspace
569
+ fn: function(f) {
570
+ f._muted(!f.options.muted);
571
+ }
572
+ },
573
+ volumeUp: {
574
+ key: 38, // UP
575
+ fn: function(f) {
576
+ f.volume(f.options.volume + 0.1);
577
+ }
578
+ },
579
+ volumeDown: {
580
+ key: 40, // DOWN
581
+ fn: function(f) {
582
+ f.volume(f.options.volume - 0.1);
583
+ }
584
+ }
585
+ },
586
+ verticalVolume: false, // Calculate volume from the bottom of the volume bar. Default is from the left. Also volume affects either width or height.
587
+ // globalVolume: false, // Not implemented: Set to make volume changes affect all jPlayer instances
588
+ // globalMute: false, // Not implemented: Set to make mute changes affect all jPlayer instances
589
+ idPrefix: "jp", // Prefix for the ids of html elements created by jPlayer. For flash, this must not include characters: . - + * / \
590
+ noConflict: "jQuery",
591
+ emulateHtml: false, // Emulates the HTML5 Media element on the jPlayer element.
592
+ errorAlerts: false,
593
+ warningAlerts: false
594
+ },
595
+ optionsAudio: {
596
+ size: {
597
+ width: "0px",
598
+ height: "0px",
599
+ cssClass: ""
600
+ },
601
+ sizeFull: {
602
+ width: "0px",
603
+ height: "0px",
604
+ cssClass: ""
605
+ }
606
+ },
607
+ optionsVideo: {
608
+ size: {
609
+ width: "480px",
610
+ height: "270px",
611
+ cssClass: "jp-video-270p"
612
+ },
613
+ sizeFull: {
614
+ width: "100%",
615
+ height: "100%",
616
+ cssClass: "jp-video-full"
617
+ }
618
+ },
619
+ instances: {}, // Static Object
620
+ status: { // Instanced in _init()
621
+ src: "",
622
+ media: {},
623
+ paused: true,
624
+ format: {},
625
+ formatType: "",
626
+ waitForPlay: true, // Same as waitForLoad except in case where preloading.
627
+ waitForLoad: true,
628
+ srcSet: false,
629
+ video: false, // True if playing a video
630
+ seekPercent: 0,
631
+ currentPercentRelative: 0,
632
+ currentPercentAbsolute: 0,
633
+ currentTime: 0,
634
+ duration: 0,
635
+ videoWidth: 0, // Intrinsic width of the video in pixels.
636
+ videoHeight: 0, // Intrinsic height of the video in pixels.
637
+ readyState: 0,
638
+ networkState: 0,
639
+ playbackRate: 1,
640
+ ended: 0
641
+
642
+ /* Persistant status properties created dynamically at _init():
643
+ width
644
+ height
645
+ cssClass
646
+ nativeVideoControls
647
+ noFullWindow
648
+ noVolume
649
+ */
650
+ },
651
+
652
+ internal: { // Instanced in _init()
653
+ ready: false
654
+ // instance: undefined
655
+ // domNode: undefined
656
+ // htmlDlyCmdId: undefined
657
+ // autohideId: undefined
658
+ // cmdsIgnored
659
+ },
660
+ solution: { // Static Object: Defines the solutions built in jPlayer.
661
+ html: true,
662
+ flash: true
663
+ },
664
+ // 'MPEG-4 support' : canPlayType('video/mp4; codecs="mp4v.20.8"')
665
+ format: { // Static Object
666
+ mp3: {
667
+ codec: 'audio/mpeg; codecs="mp3"',
668
+ flashCanPlay: true,
669
+ media: 'audio'
670
+ },
671
+ m4a: { // AAC / MP4
672
+ codec: 'audio/mp4; codecs="mp4a.40.2"',
673
+ flashCanPlay: true,
674
+ media: 'audio'
675
+ },
676
+ oga: { // OGG
677
+ codec: 'audio/ogg; codecs="vorbis"',
678
+ flashCanPlay: false,
679
+ media: 'audio'
680
+ },
681
+ wav: { // PCM
682
+ codec: 'audio/wav; codecs="1"',
683
+ flashCanPlay: false,
684
+ media: 'audio'
685
+ },
686
+ webma: { // WEBM
687
+ codec: 'audio/webm; codecs="vorbis"',
688
+ flashCanPlay: false,
689
+ media: 'audio'
690
+ },
691
+ fla: { // FLV / F4A
692
+ codec: 'audio/x-flv',
693
+ flashCanPlay: true,
694
+ media: 'audio'
695
+ },
696
+ rtmpa: { // RTMP AUDIO
697
+ codec: 'audio/rtmp; codecs="rtmp"',
698
+ flashCanPlay: true,
699
+ media: 'audio'
700
+ },
701
+ m4v: { // H.264 / MP4
702
+ codec: 'video/mp4; codecs="avc1.42E01E, mp4a.40.2"',
703
+ flashCanPlay: true,
704
+ media: 'video'
705
+ },
706
+ ogv: { // OGG
707
+ codec: 'video/ogg; codecs="theora, vorbis"',
708
+ flashCanPlay: false,
709
+ media: 'video'
710
+ },
711
+ webmv: { // WEBM
712
+ codec: 'video/webm; codecs="vorbis, vp8"',
713
+ flashCanPlay: false,
714
+ media: 'video'
715
+ },
716
+ flv: { // FLV / F4V
717
+ codec: 'video/x-flv',
718
+ flashCanPlay: true,
719
+ media: 'video'
720
+ },
721
+ rtmpv: { // RTMP VIDEO
722
+ codec: 'video/rtmp; codecs="rtmp"',
723
+ flashCanPlay: true,
724
+ media: 'video'
725
+ }
726
+ },
727
+ _init: function() {
728
+ var self = this;
729
+
730
+ this.element.empty();
731
+
732
+ this.status = $.extend({}, this.status); // Copy static to unique instance.
733
+ this.internal = $.extend({}, this.internal); // Copy static to unique instance.
734
+
735
+ // Initialize the time format
736
+ this.options.timeFormat = $.extend({}, $.jPlayer.timeFormat, this.options.timeFormat);
737
+
738
+ // On iOS, assume commands will be ignored before user initiates them.
739
+ this.internal.cmdsIgnored = $.jPlayer.platform.ipad || $.jPlayer.platform.iphone || $.jPlayer.platform.ipod;
740
+
741
+ this.internal.domNode = this.element.get(0);
742
+
743
+ // Add key bindings focus to 1st jPlayer instanced with key control enabled.
744
+ if(this.options.keyEnabled && !$.jPlayer.focus) {
745
+ $.jPlayer.focus = this;
746
+ }
747
+
748
+ this.formats = []; // Array based on supplied string option. Order defines priority.
749
+ this.solutions = []; // Array based on solution string option. Order defines priority.
750
+ this.require = {}; // Which media types are required: video, audio.
751
+
752
+ this.htmlElement = {}; // DOM elements created by jPlayer
753
+ this.html = {}; // In _init()'s this.desired code and setmedia(): Accessed via this[solution], where solution from this.solutions array.
754
+ this.html.audio = {};
755
+ this.html.video = {};
756
+ this.flash = {}; // In _init()'s this.desired code and setmedia(): Accessed via this[solution], where solution from this.solutions array.
757
+
758
+ this.css = {};
759
+ this.css.cs = {}; // Holds the css selector strings
760
+ this.css.jq = {}; // Holds jQuery selectors. ie., $(css.cs.method)
761
+
762
+ this.ancestorJq = []; // Holds jQuery selector of cssSelectorAncestor. Init would use $() instead of [], but it is only 1.4+
763
+
764
+ this.options.volume = this._limitValue(this.options.volume, 0, 1); // Limit volume value's bounds.
765
+
766
+ // Create the formats array, with prority based on the order of the supplied formats string
767
+ $.each(this.options.supplied.toLowerCase().split(","), function(index1, value1) {
768
+ var format = value1.replace(/^\s+|\s+$/g, ""); //trim
769
+ if(self.format[format]) { // Check format is valid.
770
+ var dupFound = false;
771
+ $.each(self.formats, function(index2, value2) { // Check for duplicates
772
+ if(format === value2) {
773
+ dupFound = true;
774
+ return false;
775
+ }
776
+ });
777
+ if(!dupFound) {
778
+ self.formats.push(format);
779
+ }
780
+ }
781
+ });
782
+
783
+ // Create the solutions array, with prority based on the order of the solution string
784
+ $.each(this.options.solution.toLowerCase().split(","), function(index1, value1) {
785
+ var solution = value1.replace(/^\s+|\s+$/g, ""); //trim
786
+ if(self.solution[solution]) { // Check solution is valid.
787
+ var dupFound = false;
788
+ $.each(self.solutions, function(index2, value2) { // Check for duplicates
789
+ if(solution === value2) {
790
+ dupFound = true;
791
+ return false;
792
+ }
793
+ });
794
+ if(!dupFound) {
795
+ self.solutions.push(solution);
796
+ }
797
+ }
798
+ });
799
+
800
+ this.internal.instance = "jp_" + this.count;
801
+ this.instances[this.internal.instance] = this.element;
802
+
803
+ // Check the jPlayer div has an id and create one if required. Important for Flash to know the unique id for comms.
804
+ if(!this.element.attr("id")) {
805
+ this.element.attr("id", this.options.idPrefix + "_jplayer_" + this.count);
806
+ }
807
+
808
+ this.internal.self = $.extend({}, {
809
+ id: this.element.attr("id"),
810
+ jq: this.element
811
+ });
812
+ this.internal.audio = $.extend({}, {
813
+ id: this.options.idPrefix + "_audio_" + this.count,
814
+ jq: undefined
815
+ });
816
+ this.internal.video = $.extend({}, {
817
+ id: this.options.idPrefix + "_video_" + this.count,
818
+ jq: undefined
819
+ });
820
+ this.internal.flash = $.extend({}, {
821
+ id: this.options.idPrefix + "_flash_" + this.count,
822
+ jq: undefined,
823
+ swf: this.options.swfPath + (this.options.swfPath.toLowerCase().slice(-4) !== ".swf" ? (this.options.swfPath && this.options.swfPath.slice(-1) !== "/" ? "/" : "") + "Jplayer.swf" : "")
824
+ });
825
+ this.internal.poster = $.extend({}, {
826
+ id: this.options.idPrefix + "_poster_" + this.count,
827
+ jq: undefined
828
+ });
829
+
830
+ // Register listeners defined in the constructor
831
+ $.each($.jPlayer.event, function(eventName,eventType) {
832
+ if(self.options[eventName] !== undefined) {
833
+ self.element.bind(eventType + ".jPlayer", self.options[eventName]); // With .jPlayer namespace.
834
+ self.options[eventName] = undefined; // Destroy the handler pointer copy on the options. Reason, events can be added/removed in other ways so this could be obsolete and misleading.
835
+ }
836
+ });
837
+
838
+ // Determine if we require solutions for audio, video or both media types.
839
+ this.require.audio = false;
840
+ this.require.video = false;
841
+ $.each(this.formats, function(priority, format) {
842
+ self.require[self.format[format].media] = true;
843
+ });
844
+
845
+ // Now required types are known, finish the options default settings.
846
+ if(this.require.video) {
847
+ this.options = $.extend(true, {},
848
+ this.optionsVideo,
849
+ this.options
850
+ );
851
+ } else {
852
+ this.options = $.extend(true, {},
853
+ this.optionsAudio,
854
+ this.options
855
+ );
856
+ }
857
+ this._setSize(); // update status and jPlayer element size
858
+
859
+ // Determine the status for Blocklisted options.
860
+ this.status.nativeVideoControls = this._uaBlocklist(this.options.nativeVideoControls);
861
+ this.status.noFullWindow = this._uaBlocklist(this.options.noFullWindow);
862
+ this.status.noVolume = this._uaBlocklist(this.options.noVolume);
863
+
864
+ // Create event handlers if native fullscreen is supported
865
+ if($.jPlayer.nativeFeatures.fullscreen.api.fullscreenEnabled) {
866
+ this._fullscreenAddEventListeners();
867
+ }
868
+
869
+ // The native controls are only for video and are disabled when audio is also used.
870
+ this._restrictNativeVideoControls();
871
+
872
+ // Create the poster image.
873
+ this.htmlElement.poster = document.createElement('img');
874
+ this.htmlElement.poster.id = this.internal.poster.id;
875
+ this.htmlElement.poster.onload = function() { // Note that this did not work on Firefox 3.6: poster.addEventListener("onload", function() {}, false); Did not investigate x-browser.
876
+ if(!self.status.video || self.status.waitForPlay) {
877
+ self.internal.poster.jq.show();
878
+ }
879
+ };
880
+ this.element.append(this.htmlElement.poster);
881
+ this.internal.poster.jq = $("#" + this.internal.poster.id);
882
+ this.internal.poster.jq.css({'width': this.status.width, 'height': this.status.height});
883
+ this.internal.poster.jq.hide();
884
+ this.internal.poster.jq.bind("click.jPlayer", function() {
885
+ self._trigger($.jPlayer.event.click);
886
+ });
887
+
888
+ // Generate the required media elements
889
+ this.html.audio.available = false;
890
+ if(this.require.audio) { // If a supplied format is audio
891
+ this.htmlElement.audio = document.createElement('audio');
892
+ this.htmlElement.audio.id = this.internal.audio.id;
893
+ this.html.audio.available = !!this.htmlElement.audio.canPlayType && this._testCanPlayType(this.htmlElement.audio); // Test is for IE9 on Win Server 2008.
894
+ }
895
+ this.html.video.available = false;
896
+ if(this.require.video) { // If a supplied format is video
897
+ this.htmlElement.video = document.createElement('video');
898
+ this.htmlElement.video.id = this.internal.video.id;
899
+ this.html.video.available = !!this.htmlElement.video.canPlayType && this._testCanPlayType(this.htmlElement.video); // Test is for IE9 on Win Server 2008.
900
+ }
901
+
902
+ this.flash.available = this._checkForFlash(10.1);
903
+
904
+ this.html.canPlay = {};
905
+ this.flash.canPlay = {};
906
+ $.each(this.formats, function(priority, format) {
907
+ self.html.canPlay[format] = self.html[self.format[format].media].available && "" !== self.htmlElement[self.format[format].media].canPlayType(self.format[format].codec);
908
+ self.flash.canPlay[format] = self.format[format].flashCanPlay && self.flash.available;
909
+ });
910
+ this.html.desired = false;
911
+ this.flash.desired = false;
912
+ $.each(this.solutions, function(solutionPriority, solution) {
913
+ if(solutionPriority === 0) {
914
+ self[solution].desired = true;
915
+ } else {
916
+ var audioCanPlay = false;
917
+ var videoCanPlay = false;
918
+ $.each(self.formats, function(formatPriority, format) {
919
+ if(self[self.solutions[0]].canPlay[format]) { // The other solution can play
920
+ if(self.format[format].media === 'video') {
921
+ videoCanPlay = true;
922
+ } else {
923
+ audioCanPlay = true;
924
+ }
925
+ }
926
+ });
927
+ self[solution].desired = (self.require.audio && !audioCanPlay) || (self.require.video && !videoCanPlay);
928
+ }
929
+ });
930
+ // This is what jPlayer will support, based on solution and supplied.
931
+ this.html.support = {};
932
+ this.flash.support = {};
933
+ $.each(this.formats, function(priority, format) {
934
+ self.html.support[format] = self.html.canPlay[format] && self.html.desired;
935
+ self.flash.support[format] = self.flash.canPlay[format] && self.flash.desired;
936
+ });
937
+ // If jPlayer is supporting any format in a solution, then the solution is used.
938
+ this.html.used = false;
939
+ this.flash.used = false;
940
+ $.each(this.solutions, function(solutionPriority, solution) {
941
+ $.each(self.formats, function(formatPriority, format) {
942
+ if(self[solution].support[format]) {
943
+ self[solution].used = true;
944
+ return false;
945
+ }
946
+ });
947
+ });
948
+
949
+ // Init solution active state and the event gates to false.
950
+ this._resetActive();
951
+ this._resetGate();
952
+
953
+ // Set up the css selectors for the control and feedback entities.
954
+ this._cssSelectorAncestor(this.options.cssSelectorAncestor);
955
+
956
+ // If neither html nor flash are being used by this browser, then media playback is not possible. Trigger an error event.
957
+ if(!(this.html.used || this.flash.used)) {
958
+ this._error( {
959
+ type: $.jPlayer.error.NO_SOLUTION,
960
+ context: "{solution:'" + this.options.solution + "', supplied:'" + this.options.supplied + "'}",
961
+ message: $.jPlayer.errorMsg.NO_SOLUTION,
962
+ hint: $.jPlayer.errorHint.NO_SOLUTION
963
+ });
964
+ if(this.css.jq.noSolution.length) {
965
+ this.css.jq.noSolution.show();
966
+ }
967
+ } else {
968
+ if(this.css.jq.noSolution.length) {
969
+ this.css.jq.noSolution.hide();
970
+ }
971
+ }
972
+
973
+ // Add the flash solution if it is being used.
974
+ if(this.flash.used) {
975
+ var htmlObj,
976
+ flashVars = 'jQuery=' + encodeURI(this.options.noConflict) + '&id=' + encodeURI(this.internal.self.id) + '&vol=' + this.options.volume + '&muted=' + this.options.muted;
977
+
978
+ // Code influenced by SWFObject 2.2: http://code.google.com/p/swfobject/
979
+ // Non IE browsers have an initial Flash size of 1 by 1 otherwise the wmode affected the Flash ready event.
980
+
981
+ if($.jPlayer.browser.msie && (Number($.jPlayer.browser.version) < 9 || $.jPlayer.browser.documentMode < 9)) {
982
+ var objStr = '<object id="' + this.internal.flash.id + '" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="0" height="0" tabindex="-1"></object>';
983
+
984
+ var paramStr = [
985
+ '<param name="movie" value="' + this.internal.flash.swf + '" />',
986
+ '<param name="FlashVars" value="' + flashVars + '" />',
987
+ '<param name="allowScriptAccess" value="always" />',
988
+ '<param name="bgcolor" value="' + this.options.backgroundColor + '" />',
989
+ '<param name="wmode" value="' + this.options.wmode + '" />'
990
+ ];
991
+
992
+ htmlObj = document.createElement(objStr);
993
+ for(var i=0; i < paramStr.length; i++) {
994
+ htmlObj.appendChild(document.createElement(paramStr[i]));
995
+ }
996
+ } else {
997
+ var createParam = function(el, n, v) {
998
+ var p = document.createElement("param");
999
+ p.setAttribute("name", n);
1000
+ p.setAttribute("value", v);
1001
+ el.appendChild(p);
1002
+ };
1003
+
1004
+ htmlObj = document.createElement("object");
1005
+ htmlObj.setAttribute("id", this.internal.flash.id);
1006
+ htmlObj.setAttribute("data", this.internal.flash.swf);
1007
+ htmlObj.setAttribute("type", "application/x-shockwave-flash");
1008
+ htmlObj.setAttribute("width", "1"); // Non-zero
1009
+ htmlObj.setAttribute("height", "1"); // Non-zero
1010
+ htmlObj.setAttribute("tabindex", "-1");
1011
+ createParam(htmlObj, "flashvars", flashVars);
1012
+ createParam(htmlObj, "allowscriptaccess", "always");
1013
+ createParam(htmlObj, "bgcolor", this.options.backgroundColor);
1014
+ createParam(htmlObj, "wmode", this.options.wmode);
1015
+ }
1016
+
1017
+ this.element.append(htmlObj);
1018
+ this.internal.flash.jq = $(htmlObj);
1019
+ }
1020
+
1021
+ // Add the HTML solution if being used.
1022
+ if(this.html.used) {
1023
+
1024
+ // The HTML Audio handlers
1025
+ if(this.html.audio.available) {
1026
+ this._addHtmlEventListeners(this.htmlElement.audio, this.html.audio);
1027
+ this.element.append(this.htmlElement.audio);
1028
+ this.internal.audio.jq = $("#" + this.internal.audio.id);
1029
+ }
1030
+
1031
+ // The HTML Video handlers
1032
+ if(this.html.video.available) {
1033
+ this._addHtmlEventListeners(this.htmlElement.video, this.html.video);
1034
+ this.element.append(this.htmlElement.video);
1035
+ this.internal.video.jq = $("#" + this.internal.video.id);
1036
+ if(this.status.nativeVideoControls) {
1037
+ this.internal.video.jq.css({'width': this.status.width, 'height': this.status.height});
1038
+ } else {
1039
+ this.internal.video.jq.css({'width':'0px', 'height':'0px'}); // Using size 0x0 since a .hide() causes issues in iOS
1040
+ }
1041
+ this.internal.video.jq.bind("click.jPlayer", function() {
1042
+ self._trigger($.jPlayer.event.click);
1043
+ });
1044
+ }
1045
+ }
1046
+
1047
+ // Create the bridge that emulates the HTML Media element on the jPlayer DIV
1048
+ if( this.options.emulateHtml ) {
1049
+ this._emulateHtmlBridge();
1050
+ }
1051
+
1052
+ if(this.html.used && !this.flash.used) { // If only HTML, then emulate flash ready() call after 100ms.
1053
+ setTimeout( function() {
1054
+ self.internal.ready = true;
1055
+ self.version.flash = "n/a";
1056
+ self._trigger($.jPlayer.event.repeat); // Trigger the repeat event so its handler can initialize itself with the loop option.
1057
+ self._trigger($.jPlayer.event.ready);
1058
+ }, 100);
1059
+ }
1060
+
1061
+ // Initialize the interface components with the options.
1062
+ this._updateNativeVideoControls(); // Must do this first, otherwise there is a bizarre bug in iOS 4.3.2, where the native controls are not shown. Fails in iOS if called after _updateButtons() below. Works if called later in setMedia too, so it odd.
1063
+ this._updateInterface();
1064
+ this._updateButtons(false);
1065
+ this._updateAutohide();
1066
+ this._updateVolume(this.options.volume);
1067
+ this._updateMute(this.options.muted);
1068
+ if(this.css.jq.videoPlay.length) {
1069
+ this.css.jq.videoPlay.hide();
1070
+ }
1071
+
1072
+ $.jPlayer.prototype.count++; // Change static variable via prototype.
1073
+ },
1074
+ destroy: function() {
1075
+ // MJP: The background change remains. Would need to store the original to restore it correctly.
1076
+ // MJP: The jPlayer element's size change remains.
1077
+
1078
+ // Clear the media to reset the GUI and stop any downloads. Streams on some browsers had persited. (Chrome)
1079
+ this.clearMedia();
1080
+ // Remove the size/sizeFull cssClass from the cssSelectorAncestor
1081
+ this._removeUiClass();
1082
+ // Remove the times from the GUI
1083
+ if(this.css.jq.currentTime.length) {
1084
+ this.css.jq.currentTime.text("");
1085
+ }
1086
+ if(this.css.jq.duration.length) {
1087
+ this.css.jq.duration.text("");
1088
+ }
1089
+ // Remove any bindings from the interface controls.
1090
+ $.each(this.css.jq, function(fn, jq) {
1091
+ // Check selector is valid before trying to execute method.
1092
+ if(jq.length) {
1093
+ jq.unbind(".jPlayer");
1094
+ }
1095
+ });
1096
+ // Remove the click handlers for $.jPlayer.event.click
1097
+ this.internal.poster.jq.unbind(".jPlayer");
1098
+ if(this.internal.video.jq) {
1099
+ this.internal.video.jq.unbind(".jPlayer");
1100
+ }
1101
+ // Remove the fullscreen event handlers
1102
+ this._fullscreenRemoveEventListeners();
1103
+ // Remove key bindings
1104
+ if(this === $.jPlayer.focus) {
1105
+ $.jPlayer.focus = null;
1106
+ }
1107
+ // Destroy the HTML bridge.
1108
+ if(this.options.emulateHtml) {
1109
+ this._destroyHtmlBridge();
1110
+ }
1111
+ this.element.removeData("jPlayer"); // Remove jPlayer data
1112
+ this.element.unbind(".jPlayer"); // Remove all event handlers created by the jPlayer constructor
1113
+ this.element.empty(); // Remove the inserted child elements
1114
+
1115
+ delete this.instances[this.internal.instance]; // Clear the instance on the static instance object
1116
+ },
1117
+ enable: function() { // Plan to implement
1118
+ // options.disabled = false
1119
+ },
1120
+ disable: function () { // Plan to implement
1121
+ // options.disabled = true
1122
+ },
1123
+ _testCanPlayType: function(elem) {
1124
+ // IE9 on Win Server 2008 did not implement canPlayType(), but it has the property.
1125
+ try {
1126
+ elem.canPlayType(this.format.mp3.codec); // The type is irrelevant.
1127
+ return true;
1128
+ } catch(err) {
1129
+ return false;
1130
+ }
1131
+ },
1132
+ _uaBlocklist: function(list) {
1133
+ // list : object with properties that are all regular expressions. Property names are irrelevant.
1134
+ // Returns true if the user agent is matched in list.
1135
+ var ua = navigator.userAgent.toLowerCase(),
1136
+ block = false;
1137
+
1138
+ $.each(list, function(p, re) {
1139
+ if(re && re.test(ua)) {
1140
+ block = true;
1141
+ return false; // exit $.each.
1142
+ }
1143
+ });
1144
+ return block;
1145
+ },
1146
+ _restrictNativeVideoControls: function() {
1147
+ // Fallback to noFullWindow when nativeVideoControls is true and audio media is being used. Affects when both media types are used.
1148
+ if(this.require.audio) {
1149
+ if(this.status.nativeVideoControls) {
1150
+ this.status.nativeVideoControls = false;
1151
+ this.status.noFullWindow = true;
1152
+ }
1153
+ }
1154
+ },
1155
+ _updateNativeVideoControls: function() {
1156
+ if(this.html.video.available && this.html.used) {
1157
+ // Turn the HTML Video controls on/off
1158
+ this.htmlElement.video.controls = this.status.nativeVideoControls;
1159
+ // Show/hide the jPlayer GUI.
1160
+ this._updateAutohide();
1161
+ // For when option changed. The poster image is not updated, as it is dealt with in setMedia(). Acceptable degradation since seriously doubt these options will change on the fly. Can again review later.
1162
+ if(this.status.nativeVideoControls && this.require.video) {
1163
+ this.internal.poster.jq.hide();
1164
+ this.internal.video.jq.css({'width': this.status.width, 'height': this.status.height});
1165
+ } else if(this.status.waitForPlay && this.status.video) {
1166
+ this.internal.poster.jq.show();
1167
+ this.internal.video.jq.css({'width': '0px', 'height': '0px'});
1168
+ }
1169
+ }
1170
+ },
1171
+ _addHtmlEventListeners: function(mediaElement, entity) {
1172
+ var self = this;
1173
+ mediaElement.preload = this.options.preload;
1174
+ mediaElement.muted = this.options.muted;
1175
+ mediaElement.volume = this.options.volume;
1176
+
1177
+ // Create the event listeners
1178
+ // Only want the active entity to affect jPlayer and bubble events.
1179
+ // Using entity.gate so that object is referenced and gate property always current
1180
+
1181
+ mediaElement.addEventListener("progress", function() {
1182
+ if(entity.gate) {
1183
+ if(self.internal.cmdsIgnored && this.readyState > 0) { // Detect iOS executed the command
1184
+ self.internal.cmdsIgnored = false;
1185
+ }
1186
+ self._getHtmlStatus(mediaElement);
1187
+ self._updateInterface();
1188
+ self._trigger($.jPlayer.event.progress);
1189
+ }
1190
+ }, false);
1191
+ mediaElement.addEventListener("timeupdate", function() {
1192
+ if(entity.gate) {
1193
+ self._getHtmlStatus(mediaElement);
1194
+ self._updateInterface();
1195
+ self._trigger($.jPlayer.event.timeupdate);
1196
+ }
1197
+ }, false);
1198
+ mediaElement.addEventListener("durationchange", function() {
1199
+ if(entity.gate) {
1200
+ self._getHtmlStatus(mediaElement);
1201
+ self._updateInterface();
1202
+ self._trigger($.jPlayer.event.durationchange);
1203
+ }
1204
+ }, false);
1205
+ mediaElement.addEventListener("play", function() {
1206
+ if(entity.gate) {
1207
+ self._updateButtons(true);
1208
+ self._html_checkWaitForPlay(); // So the native controls update this variable and puts the hidden interface in the correct state. Affects toggling native controls.
1209
+ self._trigger($.jPlayer.event.play);
1210
+ }
1211
+ }, false);
1212
+ mediaElement.addEventListener("playing", function() {
1213
+ if(entity.gate) {
1214
+ self._updateButtons(true);
1215
+ self._seeked();
1216
+ self._trigger($.jPlayer.event.playing);
1217
+ }
1218
+ }, false);
1219
+ mediaElement.addEventListener("pause", function() {
1220
+ if(entity.gate) {
1221
+ self._updateButtons(false);
1222
+ self._trigger($.jPlayer.event.pause);
1223
+ }
1224
+ }, false);
1225
+ mediaElement.addEventListener("waiting", function() {
1226
+ if(entity.gate) {
1227
+ self._seeking();
1228
+ self._trigger($.jPlayer.event.waiting);
1229
+ }
1230
+ }, false);
1231
+ mediaElement.addEventListener("seeking", function() {
1232
+ if(entity.gate) {
1233
+ self._seeking();
1234
+ self._trigger($.jPlayer.event.seeking);
1235
+ }
1236
+ }, false);
1237
+ mediaElement.addEventListener("seeked", function() {
1238
+ if(entity.gate) {
1239
+ self._seeked();
1240
+ self._trigger($.jPlayer.event.seeked);
1241
+ }
1242
+ }, false);
1243
+ mediaElement.addEventListener("volumechange", function() {
1244
+ if(entity.gate) {
1245
+ // Read the values back from the element as the Blackberry PlayBook shares the volume with the physical buttons master volume control.
1246
+ // However, when tested 6th July 2011, those buttons do not generate an event. The physical play/pause button does though.
1247
+ self.options.volume = mediaElement.volume;
1248
+ self.options.muted = mediaElement.muted;
1249
+ self._updateMute();
1250
+ self._updateVolume();
1251
+ self._trigger($.jPlayer.event.volumechange);
1252
+ }
1253
+ }, false);
1254
+ mediaElement.addEventListener("suspend", function() { // Seems to be the only way of capturing that the iOS4 browser did not actually play the media from the page code. ie., It needs a user gesture.
1255
+ if(entity.gate) {
1256
+ self._seeked();
1257
+ self._trigger($.jPlayer.event.suspend);
1258
+ }
1259
+ }, false);
1260
+ mediaElement.addEventListener("ended", function() {
1261
+ if(entity.gate) {
1262
+ // Order of the next few commands are important. Change the time and then pause.
1263
+ // Solves a bug in Firefox, where issuing pause 1st causes the media to play from the start. ie., The pause is ignored.
1264
+ if(!$.jPlayer.browser.webkit) { // Chrome crashes if you do this in conjunction with a setMedia command in an ended event handler. ie., The playlist demo.
1265
+ self.htmlElement.media.currentTime = 0; // Safari does not care about this command. ie., It works with or without this line. (Both Safari and Chrome are Webkit.)
1266
+ }
1267
+ self.htmlElement.media.pause(); // Pause otherwise a click on the progress bar will play from that point, when it shouldn't, since it stopped playback.
1268
+ self._updateButtons(false);
1269
+ self._getHtmlStatus(mediaElement, true); // With override true. Otherwise Chrome leaves progress at full.
1270
+ self._updateInterface();
1271
+ self._trigger($.jPlayer.event.ended);
1272
+ }
1273
+ }, false);
1274
+ mediaElement.addEventListener("error", function() {
1275
+ if(entity.gate) {
1276
+ self._updateButtons(false);
1277
+ self._seeked();
1278
+ if(self.status.srcSet) { // Deals with case of clearMedia() causing an error event.
1279
+ clearTimeout(self.internal.htmlDlyCmdId); // Clears any delayed commands used in the HTML solution.
1280
+ self.status.waitForLoad = true; // Allows the load operation to try again.
1281
+ self.status.waitForPlay = true; // Reset since a play was captured.
1282
+ if(self.status.video && !self.status.nativeVideoControls) {
1283
+ self.internal.video.jq.css({'width':'0px', 'height':'0px'});
1284
+ }
1285
+ if(self._validString(self.status.media.poster) && !self.status.nativeVideoControls) {
1286
+ self.internal.poster.jq.show();
1287
+ }
1288
+ if(self.css.jq.videoPlay.length) {
1289
+ self.css.jq.videoPlay.show();
1290
+ }
1291
+ self._error( {
1292
+ type: $.jPlayer.error.URL,
1293
+ context: self.status.src, // this.src shows absolute urls. Want context to show the url given.
1294
+ message: $.jPlayer.errorMsg.URL,
1295
+ hint: $.jPlayer.errorHint.URL
1296
+ });
1297
+ }
1298
+ }
1299
+ }, false);
1300
+ // Create all the other event listeners that bubble up to a jPlayer event from html, without being used by jPlayer.
1301
+ $.each($.jPlayer.htmlEvent, function(i, eventType) {
1302
+ mediaElement.addEventListener(this, function() {
1303
+ if(entity.gate) {
1304
+ self._trigger($.jPlayer.event[eventType]);
1305
+ }
1306
+ }, false);
1307
+ });
1308
+ },
1309
+ _getHtmlStatus: function(media, override) {
1310
+ var ct = 0, cpa = 0, sp = 0, cpr = 0;
1311
+
1312
+ // Fixes the duration bug in iOS, where the durationchange event occurs when media.duration is not always correct.
1313
+ // Fixes the initial duration bug in BB OS7, where the media.duration is infinity and displays as NaN:NaN due to Date() using inifity.
1314
+ if(isFinite(media.duration)) {
1315
+ this.status.duration = media.duration;
1316
+ }
1317
+
1318
+ ct = media.currentTime;
1319
+ cpa = (this.status.duration > 0) ? 100 * ct / this.status.duration : 0;
1320
+ if((typeof media.seekable === "object") && (media.seekable.length > 0)) {
1321
+ sp = (this.status.duration > 0) ? 100 * media.seekable.end(media.seekable.length-1) / this.status.duration : 100;
1322
+ cpr = (this.status.duration > 0) ? 100 * media.currentTime / media.seekable.end(media.seekable.length-1) : 0; // Duration conditional for iOS duration bug. ie., seekable.end is a NaN in that case.
1323
+ } else {
1324
+ sp = 100;
1325
+ cpr = cpa;
1326
+ }
1327
+
1328
+ if(override) {
1329
+ ct = 0;
1330
+ cpr = 0;
1331
+ cpa = 0;
1332
+ }
1333
+
1334
+ this.status.seekPercent = sp;
1335
+ this.status.currentPercentRelative = cpr;
1336
+ this.status.currentPercentAbsolute = cpa;
1337
+ this.status.currentTime = ct;
1338
+
1339
+ this.status.videoWidth = media.videoWidth;
1340
+ this.status.videoHeight = media.videoHeight;
1341
+
1342
+ this.status.readyState = media.readyState;
1343
+ this.status.networkState = media.networkState;
1344
+ this.status.playbackRate = media.playbackRate;
1345
+ this.status.ended = media.ended;
1346
+ },
1347
+ _resetStatus: function() {
1348
+ this.status = $.extend({}, this.status, $.jPlayer.prototype.status); // Maintains the status properties that persist through a reset.
1349
+ },
1350
+ _trigger: function(eventType, error, warning) { // eventType always valid as called using $.jPlayer.event.eventType
1351
+ var event = $.Event(eventType);
1352
+ event.jPlayer = {};
1353
+ event.jPlayer.version = $.extend({}, this.version);
1354
+ event.jPlayer.options = $.extend(true, {}, this.options); // Deep copy
1355
+ event.jPlayer.status = $.extend(true, {}, this.status); // Deep copy
1356
+ event.jPlayer.html = $.extend(true, {}, this.html); // Deep copy
1357
+ event.jPlayer.flash = $.extend(true, {}, this.flash); // Deep copy
1358
+ if(error) {
1359
+ event.jPlayer.error = $.extend({}, error);
1360
+ }
1361
+ if(warning) {
1362
+ event.jPlayer.warning = $.extend({}, warning);
1363
+ }
1364
+ this.element.trigger(event);
1365
+ },
1366
+ jPlayerFlashEvent: function(eventType, status) { // Called from Flash
1367
+ if(eventType === $.jPlayer.event.ready) {
1368
+ if(!this.internal.ready) {
1369
+ this.internal.ready = true;
1370
+ this.internal.flash.jq.css({'width':'0px', 'height':'0px'}); // Once Flash generates the ready event, minimise to zero as it is not affected by wmode anymore.
1371
+
1372
+ this.version.flash = status.version;
1373
+ if(this.version.needFlash !== this.version.flash) {
1374
+ this._error( {
1375
+ type: $.jPlayer.error.VERSION,
1376
+ context: this.version.flash,
1377
+ message: $.jPlayer.errorMsg.VERSION + this.version.flash,
1378
+ hint: $.jPlayer.errorHint.VERSION
1379
+ });
1380
+ }
1381
+ this._trigger($.jPlayer.event.repeat); // Trigger the repeat event so its handler can initialize itself with the loop option.
1382
+ this._trigger(eventType);
1383
+ } else {
1384
+ // This condition occurs if the Flash is hidden and then shown again.
1385
+ // Firefox also reloads the Flash if the CSS position changes. position:fixed is used for full screen.
1386
+
1387
+ // Only do this if the Flash is the solution being used at the moment. Affects Media players where both solution may be being used.
1388
+ if(this.flash.gate) {
1389
+
1390
+ // Send the current status to the Flash now that it is ready (available) again.
1391
+ if(this.status.srcSet) {
1392
+
1393
+ // Need to read original status before issuing the setMedia command.
1394
+ var currentTime = this.status.currentTime,
1395
+ paused = this.status.paused;
1396
+
1397
+ this.setMedia(this.status.media);
1398
+ if(currentTime > 0) {
1399
+ if(paused) {
1400
+ this.pause(currentTime);
1401
+ } else {
1402
+ this.play(currentTime);
1403
+ }
1404
+ }
1405
+ }
1406
+ this._trigger($.jPlayer.event.flashreset);
1407
+ }
1408
+ }
1409
+ }
1410
+ if(this.flash.gate) {
1411
+ switch(eventType) {
1412
+ case $.jPlayer.event.progress:
1413
+ this._getFlashStatus(status);
1414
+ this._updateInterface();
1415
+ this._trigger(eventType);
1416
+ break;
1417
+ case $.jPlayer.event.timeupdate:
1418
+ this._getFlashStatus(status);
1419
+ this._updateInterface();
1420
+ this._trigger(eventType);
1421
+ break;
1422
+ case $.jPlayer.event.play:
1423
+ this._seeked();
1424
+ this._updateButtons(true);
1425
+ this._trigger(eventType);
1426
+ break;
1427
+ case $.jPlayer.event.pause:
1428
+ this._updateButtons(false);
1429
+ this._trigger(eventType);
1430
+ break;
1431
+ case $.jPlayer.event.ended:
1432
+ this._updateButtons(false);
1433
+ this._trigger(eventType);
1434
+ break;
1435
+ case $.jPlayer.event.click:
1436
+ this._trigger(eventType); // This could be dealt with by the default
1437
+ break;
1438
+ case $.jPlayer.event.error:
1439
+ this.status.waitForLoad = true; // Allows the load operation to try again.
1440
+ this.status.waitForPlay = true; // Reset since a play was captured.
1441
+ if(this.status.video) {
1442
+ this.internal.flash.jq.css({'width':'0px', 'height':'0px'});
1443
+ }
1444
+ if(this._validString(this.status.media.poster)) {
1445
+ this.internal.poster.jq.show();
1446
+ }
1447
+ if(this.css.jq.videoPlay.length && this.status.video) {
1448
+ this.css.jq.videoPlay.show();
1449
+ }
1450
+ if(this.status.video) { // Set up for another try. Execute before error event.
1451
+ this._flash_setVideo(this.status.media);
1452
+ } else {
1453
+ this._flash_setAudio(this.status.media);
1454
+ }
1455
+ this._updateButtons(false);
1456
+ this._error( {
1457
+ type: $.jPlayer.error.URL,
1458
+ context:status.src,
1459
+ message: $.jPlayer.errorMsg.URL,
1460
+ hint: $.jPlayer.errorHint.URL
1461
+ });
1462
+ break;
1463
+ case $.jPlayer.event.seeking:
1464
+ this._seeking();
1465
+ this._trigger(eventType);
1466
+ break;
1467
+ case $.jPlayer.event.seeked:
1468
+ this._seeked();
1469
+ this._trigger(eventType);
1470
+ break;
1471
+ case $.jPlayer.event.ready:
1472
+ // The ready event is handled outside the switch statement.
1473
+ // Captured here otherwise 2 ready events would be generated if the ready event handler used setMedia.
1474
+ break;
1475
+ default:
1476
+ this._trigger(eventType);
1477
+ }
1478
+ }
1479
+ return false;
1480
+ },
1481
+ _getFlashStatus: function(status) {
1482
+ this.status.seekPercent = status.seekPercent;
1483
+ this.status.currentPercentRelative = status.currentPercentRelative;
1484
+ this.status.currentPercentAbsolute = status.currentPercentAbsolute;
1485
+ this.status.currentTime = status.currentTime;
1486
+ this.status.duration = status.duration;
1487
+
1488
+ this.status.videoWidth = status.videoWidth;
1489
+ this.status.videoHeight = status.videoHeight;
1490
+
1491
+ // The Flash does not generate this information in this release
1492
+ this.status.readyState = 4; // status.readyState;
1493
+ this.status.networkState = 0; // status.networkState;
1494
+ this.status.playbackRate = 1; // status.playbackRate;
1495
+ this.status.ended = false; // status.ended;
1496
+ },
1497
+ _updateButtons: function(playing) {
1498
+ if(playing !== undefined) {
1499
+ this.status.paused = !playing;
1500
+ if(this.css.jq.play.length && this.css.jq.pause.length) {
1501
+ if(playing) {
1502
+ this.css.jq.play.hide();
1503
+ this.css.jq.pause.show();
1504
+ } else {
1505
+ this.css.jq.play.show();
1506
+ this.css.jq.pause.hide();
1507
+ }
1508
+ }
1509
+ }
1510
+ if(this.css.jq.restoreScreen.length && this.css.jq.fullScreen.length) {
1511
+ if(this.status.noFullWindow) {
1512
+ this.css.jq.fullScreen.hide();
1513
+ this.css.jq.restoreScreen.hide();
1514
+ } else if(this.options.fullWindow) {
1515
+ this.css.jq.fullScreen.hide();
1516
+ this.css.jq.restoreScreen.show();
1517
+ } else {
1518
+ this.css.jq.fullScreen.show();
1519
+ this.css.jq.restoreScreen.hide();
1520
+ }
1521
+ }
1522
+ if(this.css.jq.repeat.length && this.css.jq.repeatOff.length) {
1523
+ if(this.options.loop) {
1524
+ this.css.jq.repeat.hide();
1525
+ this.css.jq.repeatOff.show();
1526
+ } else {
1527
+ this.css.jq.repeat.show();
1528
+ this.css.jq.repeatOff.hide();
1529
+ }
1530
+ }
1531
+ },
1532
+ _updateInterface: function() {
1533
+ if(this.css.jq.seekBar.length) {
1534
+ this.css.jq.seekBar.width(this.status.seekPercent+"%");
1535
+ }
1536
+ if(this.css.jq.playBar.length) {
1537
+ if(this.options.smoothPlayBar) {
1538
+ this.css.jq.playBar.stop().animate({
1539
+ width: this.status.currentPercentAbsolute+"%"
1540
+ }, 250, "linear");
1541
+ } else {
1542
+ this.css.jq.playBar.width(this.status.currentPercentRelative+"%");
1543
+ }
1544
+ }
1545
+ if(this.css.jq.currentTime.length) {
1546
+ this.css.jq.currentTime.text(this._convertTime(this.status.currentTime));
1547
+ }
1548
+ if(this.css.jq.duration.length) {
1549
+ this.css.jq.duration.text(this._convertTime(this.status.duration));
1550
+ }
1551
+ },
1552
+ _convertTime: ConvertTime.prototype.time,
1553
+ _seeking: function() {
1554
+ if(this.css.jq.seekBar.length) {
1555
+ this.css.jq.seekBar.addClass("jp-seeking-bg");
1556
+ }
1557
+ },
1558
+ _seeked: function() {
1559
+ if(this.css.jq.seekBar.length) {
1560
+ this.css.jq.seekBar.removeClass("jp-seeking-bg");
1561
+ }
1562
+ },
1563
+ _resetGate: function() {
1564
+ this.html.audio.gate = false;
1565
+ this.html.video.gate = false;
1566
+ this.flash.gate = false;
1567
+ },
1568
+ _resetActive: function() {
1569
+ this.html.active = false;
1570
+ this.flash.active = false;
1571
+ },
1572
+ setMedia: function(media) {
1573
+
1574
+ /* media[format] = String: URL of format. Must contain all of the supplied option's video or audio formats.
1575
+ * media.poster = String: Video poster URL.
1576
+ * media.subtitles = String: * NOT IMPLEMENTED * URL of subtitles SRT file
1577
+ * media.chapters = String: * NOT IMPLEMENTED * URL of chapters SRT file
1578
+ * media.stream = Boolean: * NOT IMPLEMENTED * Designating actual media streams. ie., "false/undefined" for files. Plan to refresh the flash every so often.
1579
+ */
1580
+
1581
+ var self = this,
1582
+ supported = false,
1583
+ posterChanged = this.status.media.poster !== media.poster; // Compare before reset. Important for OSX Safari as this.htmlElement.poster.src is absolute, even if original poster URL was relative.
1584
+
1585
+ this._resetMedia();
1586
+ this._resetGate();
1587
+ this._resetActive();
1588
+
1589
+ $.each(this.formats, function(formatPriority, format) {
1590
+ var isVideo = self.format[format].media === 'video';
1591
+ $.each(self.solutions, function(solutionPriority, solution) {
1592
+ if(self[solution].support[format] && self._validString(media[format])) { // Format supported in solution and url given for format.
1593
+ var isHtml = solution === 'html';
1594
+
1595
+ if(isVideo) {
1596
+ if(isHtml) {
1597
+ self.html.video.gate = true;
1598
+ self._html_setVideo(media);
1599
+ self.html.active = true;
1600
+ } else {
1601
+ self.flash.gate = true;
1602
+ self._flash_setVideo(media);
1603
+ self.flash.active = true;
1604
+ }
1605
+ if(self.css.jq.videoPlay.length) {
1606
+ self.css.jq.videoPlay.show();
1607
+ }
1608
+ self.status.video = true;
1609
+ } else {
1610
+ if(isHtml) {
1611
+ self.html.audio.gate = true;
1612
+ self._html_setAudio(media);
1613
+ self.html.active = true;
1614
+ } else {
1615
+ self.flash.gate = true;
1616
+ self._flash_setAudio(media);
1617
+ self.flash.active = true;
1618
+ }
1619
+ if(self.css.jq.videoPlay.length) {
1620
+ self.css.jq.videoPlay.hide();
1621
+ }
1622
+ self.status.video = false;
1623
+ }
1624
+
1625
+ supported = true;
1626
+ return false; // Exit $.each
1627
+ }
1628
+ });
1629
+ if(supported) {
1630
+ return false; // Exit $.each
1631
+ }
1632
+ });
1633
+
1634
+ if(supported) {
1635
+ if(!(this.status.nativeVideoControls && this.html.video.gate)) {
1636
+ // Set poster IMG if native video controls are not being used
1637
+ // Note: With IE the IMG onload event occurs immediately when cached.
1638
+ // Note: Poster hidden by default in _resetMedia()
1639
+ if(this._validString(media.poster)) {
1640
+ if(posterChanged) { // Since some browsers do not generate img onload event.
1641
+ this.htmlElement.poster.src = media.poster;
1642
+ } else {
1643
+ this.internal.poster.jq.show();
1644
+ }
1645
+ }
1646
+ }
1647
+ this.status.srcSet = true;
1648
+ this.status.media = $.extend({}, media);
1649
+ this._updateButtons(false);
1650
+ this._updateInterface();
1651
+ } else { // jPlayer cannot support any formats provided in this browser
1652
+ // Send an error event
1653
+ this._error( {
1654
+ type: $.jPlayer.error.NO_SUPPORT,
1655
+ context: "{supplied:'" + this.options.supplied + "'}",
1656
+ message: $.jPlayer.errorMsg.NO_SUPPORT,
1657
+ hint: $.jPlayer.errorHint.NO_SUPPORT
1658
+ });
1659
+ }
1660
+ },
1661
+ _resetMedia: function() {
1662
+ this._resetStatus();
1663
+ this._updateButtons(false);
1664
+ this._updateInterface();
1665
+ this._seeked();
1666
+ this.internal.poster.jq.hide();
1667
+
1668
+ clearTimeout(this.internal.htmlDlyCmdId);
1669
+
1670
+ if(this.html.active) {
1671
+ this._html_resetMedia();
1672
+ } else if(this.flash.active) {
1673
+ this._flash_resetMedia();
1674
+ }
1675
+ },
1676
+ clearMedia: function() {
1677
+ this._resetMedia();
1678
+
1679
+ if(this.html.active) {
1680
+ this._html_clearMedia();
1681
+ } else if(this.flash.active) {
1682
+ this._flash_clearMedia();
1683
+ }
1684
+
1685
+ this._resetGate();
1686
+ this._resetActive();
1687
+ },
1688
+ load: function() {
1689
+ if(this.status.srcSet) {
1690
+ if(this.html.active) {
1691
+ this._html_load();
1692
+ } else if(this.flash.active) {
1693
+ this._flash_load();
1694
+ }
1695
+ } else {
1696
+ this._urlNotSetError("load");
1697
+ }
1698
+ },
1699
+ focus: function() {
1700
+ if(this.options.keyEnabled) {
1701
+ $.jPlayer.focus = this;
1702
+ }
1703
+ },
1704
+ play: function(time) {
1705
+ time = (typeof time === "number") ? time : NaN; // Remove jQuery event from click handler
1706
+ if(this.status.srcSet) {
1707
+ this.focus();
1708
+ if(this.html.active) {
1709
+ this._html_play(time);
1710
+ } else if(this.flash.active) {
1711
+ this._flash_play(time);
1712
+ }
1713
+ } else {
1714
+ this._urlNotSetError("play");
1715
+ }
1716
+ },
1717
+ videoPlay: function() { // Handles clicks on the play button over the video poster
1718
+ this.play();
1719
+ },
1720
+ pause: function(time) {
1721
+ time = (typeof time === "number") ? time : NaN; // Remove jQuery event from click handler
1722
+ if(this.status.srcSet) {
1723
+ if(this.html.active) {
1724
+ this._html_pause(time);
1725
+ } else if(this.flash.active) {
1726
+ this._flash_pause(time);
1727
+ }
1728
+ } else {
1729
+ this._urlNotSetError("pause");
1730
+ }
1731
+ },
1732
+ pauseOthers: function() {
1733
+ var self = this;
1734
+ $.each(this.instances, function(i, element) {
1735
+ if(self.element !== element) { // Do not this instance.
1736
+ if(element.data("jPlayer").status.srcSet) { // Check that media is set otherwise would cause error event.
1737
+ element.jPlayer("pause");
1738
+ }
1739
+ }
1740
+ });
1741
+ },
1742
+ stop: function() {
1743
+ if(this.status.srcSet) {
1744
+ if(this.html.active) {
1745
+ this._html_pause(0);
1746
+ } else if(this.flash.active) {
1747
+ this._flash_pause(0);
1748
+ }
1749
+ } else {
1750
+ this._urlNotSetError("stop");
1751
+ }
1752
+ },
1753
+ playHead: function(p) {
1754
+ p = this._limitValue(p, 0, 100);
1755
+ if(this.status.srcSet) {
1756
+ if(this.html.active) {
1757
+ this._html_playHead(p);
1758
+ } else if(this.flash.active) {
1759
+ this._flash_playHead(p);
1760
+ }
1761
+ } else {
1762
+ this._urlNotSetError("playHead");
1763
+ }
1764
+ },
1765
+ _muted: function(muted) {
1766
+ this.options.muted = muted;
1767
+ if(this.html.used) {
1768
+ this._html_mute(muted);
1769
+ }
1770
+ if(this.flash.used) {
1771
+ this._flash_mute(muted);
1772
+ }
1773
+
1774
+ // The HTML solution generates this event from the media element itself.
1775
+ if(!this.html.video.gate && !this.html.audio.gate) {
1776
+ this._updateMute(muted);
1777
+ this._updateVolume(this.options.volume);
1778
+ this._trigger($.jPlayer.event.volumechange);
1779
+ }
1780
+ },
1781
+ mute: function(mute) { // mute is either: undefined (true), an event object (true) or a boolean (muted).
1782
+ mute = mute === undefined ? true : !!mute;
1783
+ this._muted(mute);
1784
+ },
1785
+ unmute: function(unmute) { // unmute is either: undefined (true), an event object (true) or a boolean (!muted).
1786
+ unmute = unmute === undefined ? true : !!unmute;
1787
+ this._muted(!unmute);
1788
+ },
1789
+ _updateMute: function(mute) {
1790
+ if(mute === undefined) {
1791
+ mute = this.options.muted;
1792
+ }
1793
+ if(this.css.jq.mute.length && this.css.jq.unmute.length) {
1794
+ if(this.status.noVolume) {
1795
+ this.css.jq.mute.hide();
1796
+ this.css.jq.unmute.hide();
1797
+ } else if(mute) {
1798
+ this.css.jq.mute.hide();
1799
+ this.css.jq.unmute.show();
1800
+ } else {
1801
+ this.css.jq.mute.show();
1802
+ this.css.jq.unmute.hide();
1803
+ }
1804
+ }
1805
+ },
1806
+ volume: function(v) {
1807
+ v = this._limitValue(v, 0, 1);
1808
+ this.options.volume = v;
1809
+
1810
+ if(this.html.used) {
1811
+ this._html_volume(v);
1812
+ }
1813
+ if(this.flash.used) {
1814
+ this._flash_volume(v);
1815
+ }
1816
+
1817
+ // The HTML solution generates this event from the media element itself.
1818
+ if(!this.html.video.gate && !this.html.audio.gate) {
1819
+ this._updateVolume(v);
1820
+ this._trigger($.jPlayer.event.volumechange);
1821
+ }
1822
+ },
1823
+ volumeBar: function(e) { // Handles clicks on the volumeBar
1824
+ if(this.css.jq.volumeBar.length) {
1825
+ var offset = this.css.jq.volumeBar.offset(),
1826
+ x = e.pageX - offset.left,
1827
+ w = this.css.jq.volumeBar.width(),
1828
+ y = this.css.jq.volumeBar.height() - e.pageY + offset.top,
1829
+ h = this.css.jq.volumeBar.height();
1830
+
1831
+ if(this.options.verticalVolume) {
1832
+ this.volume(y/h);
1833
+ } else {
1834
+ this.volume(x/w);
1835
+ }
1836
+ }
1837
+ if(this.options.muted) {
1838
+ this._muted(false);
1839
+ }
1840
+ },
1841
+ volumeBarValue: function(e) { // Handles clicks on the volumeBarValue
1842
+ this.volumeBar(e);
1843
+ },
1844
+ _updateVolume: function(v) {
1845
+ if(v === undefined) {
1846
+ v = this.options.volume;
1847
+ }
1848
+ v = this.options.muted ? 0 : v;
1849
+
1850
+ if(this.status.noVolume) {
1851
+ if(this.css.jq.volumeBar.length) {
1852
+ this.css.jq.volumeBar.hide();
1853
+ }
1854
+ if(this.css.jq.volumeBarValue.length) {
1855
+ this.css.jq.volumeBarValue.hide();
1856
+ }
1857
+ if(this.css.jq.volumeMax.length) {
1858
+ this.css.jq.volumeMax.hide();
1859
+ }
1860
+ } else {
1861
+ if(this.css.jq.volumeBar.length) {
1862
+ this.css.jq.volumeBar.show();
1863
+ }
1864
+ if(this.css.jq.volumeBarValue.length) {
1865
+ this.css.jq.volumeBarValue.show();
1866
+ this.css.jq.volumeBarValue[this.options.verticalVolume ? "height" : "width"]((v*100)+"%");
1867
+ }
1868
+ if(this.css.jq.volumeMax.length) {
1869
+ this.css.jq.volumeMax.show();
1870
+ }
1871
+ }
1872
+ },
1873
+ volumeMax: function() { // Handles clicks on the volume max
1874
+ this.volume(1);
1875
+ if(this.options.muted) {
1876
+ this._muted(false);
1877
+ }
1878
+ },
1879
+ _cssSelectorAncestor: function(ancestor) {
1880
+ var self = this;
1881
+ this.options.cssSelectorAncestor = ancestor;
1882
+ this._removeUiClass();
1883
+ this.ancestorJq = ancestor ? $(ancestor) : []; // Would use $() instead of [], but it is only 1.4+
1884
+ if(ancestor && this.ancestorJq.length !== 1) { // So empty strings do not generate the warning.
1885
+ this._warning( {
1886
+ type: $.jPlayer.warning.CSS_SELECTOR_COUNT,
1887
+ context: ancestor,
1888
+ message: $.jPlayer.warningMsg.CSS_SELECTOR_COUNT + this.ancestorJq.length + " found for cssSelectorAncestor.",
1889
+ hint: $.jPlayer.warningHint.CSS_SELECTOR_COUNT
1890
+ });
1891
+ }
1892
+ this._addUiClass();
1893
+ $.each(this.options.cssSelector, function(fn, cssSel) {
1894
+ self._cssSelector(fn, cssSel);
1895
+ });
1896
+ },
1897
+ _cssSelector: function(fn, cssSel) {
1898
+ var self = this;
1899
+ if(typeof cssSel === 'string') {
1900
+ if($.jPlayer.prototype.options.cssSelector[fn]) {
1901
+ if(this.css.jq[fn] && this.css.jq[fn].length) {
1902
+ this.css.jq[fn].unbind(".jPlayer");
1903
+ }
1904
+ this.options.cssSelector[fn] = cssSel;
1905
+ this.css.cs[fn] = this.options.cssSelectorAncestor + " " + cssSel;
1906
+
1907
+ if(cssSel) { // Checks for empty string
1908
+ this.css.jq[fn] = $(this.css.cs[fn]);
1909
+ } else {
1910
+ this.css.jq[fn] = []; // To comply with the css.jq[fn].length check before its use. As of jQuery 1.4 could have used $() for an empty set.
1911
+ }
1912
+
1913
+ if(this.css.jq[fn].length) {
1914
+ var handler = function(e) {
1915
+ e.preventDefault();
1916
+ self[fn](e);
1917
+ $(this).blur();
1918
+ };
1919
+ this.css.jq[fn].bind("click.jPlayer", handler); // Using jPlayer namespace
1920
+ }
1921
+
1922
+ if(cssSel && this.css.jq[fn].length !== 1) { // So empty strings do not generate the warning. ie., they just remove the old one.
1923
+ this._warning( {
1924
+ type: $.jPlayer.warning.CSS_SELECTOR_COUNT,
1925
+ context: this.css.cs[fn],
1926
+ message: $.jPlayer.warningMsg.CSS_SELECTOR_COUNT + this.css.jq[fn].length + " found for " + fn + " method.",
1927
+ hint: $.jPlayer.warningHint.CSS_SELECTOR_COUNT
1928
+ });
1929
+ }
1930
+ } else {
1931
+ this._warning( {
1932
+ type: $.jPlayer.warning.CSS_SELECTOR_METHOD,
1933
+ context: fn,
1934
+ message: $.jPlayer.warningMsg.CSS_SELECTOR_METHOD,
1935
+ hint: $.jPlayer.warningHint.CSS_SELECTOR_METHOD
1936
+ });
1937
+ }
1938
+ } else {
1939
+ this._warning( {
1940
+ type: $.jPlayer.warning.CSS_SELECTOR_STRING,
1941
+ context: cssSel,
1942
+ message: $.jPlayer.warningMsg.CSS_SELECTOR_STRING,
1943
+ hint: $.jPlayer.warningHint.CSS_SELECTOR_STRING
1944
+ });
1945
+ }
1946
+ },
1947
+ seekBar: function(e) { // Handles clicks on the seekBar
1948
+ if(this.css.jq.seekBar) {
1949
+ var offset = this.css.jq.seekBar.offset();
1950
+ var x = e.pageX - offset.left;
1951
+ var w = this.css.jq.seekBar.width();
1952
+ var p = 100*x/w;
1953
+ this.playHead(p);
1954
+ }
1955
+ },
1956
+ playBar: function(e) { // Handles clicks on the playBar
1957
+ this.seekBar(e);
1958
+ },
1959
+ repeat: function() { // Handle clicks on the repeat button
1960
+ this._loop(true);
1961
+ },
1962
+ repeatOff: function() { // Handle clicks on the repeatOff button
1963
+ this._loop(false);
1964
+ },
1965
+ _loop: function(loop) {
1966
+ if(this.options.loop !== loop) {
1967
+ this.options.loop = loop;
1968
+ this._updateButtons();
1969
+ this._trigger($.jPlayer.event.repeat);
1970
+ }
1971
+ },
1972
+
1973
+ // Plan to review the cssSelector method to cope with missing associated functions accordingly.
1974
+
1975
+ currentTime: function() { // Handles clicks on the text
1976
+ // Added to avoid errors using cssSelector system for the text
1977
+ },
1978
+ duration: function() { // Handles clicks on the text
1979
+ // Added to avoid errors using cssSelector system for the text
1980
+ },
1981
+ gui: function() { // Handles clicks on the gui
1982
+ // Added to avoid errors using cssSelector system for the gui
1983
+ },
1984
+ noSolution: function() { // Handles clicks on the error message
1985
+ // Added to avoid errors using cssSelector system for no-solution
1986
+ },
1987
+
1988
+ // Options code adapted from ui.widget.js (1.8.7). Made changes so the key can use dot notation. To match previous getData solution in jPlayer 1.
1989
+ option: function(key, value) {
1990
+ var options = key;
1991
+
1992
+ // Enables use: options(). Returns a copy of options object
1993
+ if ( arguments.length === 0 ) {
1994
+ return $.extend( true, {}, this.options );
1995
+ }
1996
+
1997
+ if(typeof key === "string") {
1998
+ var keys = key.split(".");
1999
+
2000
+ // Enables use: options("someOption") Returns a copy of the option. Supports dot notation.
2001
+ if(value === undefined) {
2002
+
2003
+ var opt = $.extend(true, {}, this.options);
2004
+ for(var i = 0; i < keys.length; i++) {
2005
+ if(opt[keys[i]] !== undefined) {
2006
+ opt = opt[keys[i]];
2007
+ } else {
2008
+ this._warning( {
2009
+ type: $.jPlayer.warning.OPTION_KEY,
2010
+ context: key,
2011
+ message: $.jPlayer.warningMsg.OPTION_KEY,
2012
+ hint: $.jPlayer.warningHint.OPTION_KEY
2013
+ });
2014
+ return undefined;
2015
+ }
2016
+ }
2017
+ return opt;
2018
+ }
2019
+
2020
+ // Enables use: options("someOptionObject", someObject}). Creates: {someOptionObject:someObject}
2021
+ // Enables use: options("someOption", someValue). Creates: {someOption:someValue}
2022
+ // Enables use: options("someOptionObject.someOption", someValue). Creates: {someOptionObject:{someOption:someValue}}
2023
+
2024
+ options = {};
2025
+ var opts = options;
2026
+
2027
+ for(var j = 0; j < keys.length; j++) {
2028
+ if(j < keys.length - 1) {
2029
+ opts[keys[j]] = {};
2030
+ opts = opts[keys[j]];
2031
+ } else {
2032
+ opts[keys[j]] = value;
2033
+ }
2034
+ }
2035
+ }
2036
+
2037
+ // Otherwise enables use: options(optionObject). Uses original object (the key)
2038
+
2039
+ this._setOptions(options);
2040
+
2041
+ return this;
2042
+ },
2043
+ _setOptions: function(options) {
2044
+ var self = this;
2045
+ $.each(options, function(key, value) { // This supports the 2 level depth that the options of jPlayer has. Would review if we ever need more depth.
2046
+ self._setOption(key, value);
2047
+ });
2048
+
2049
+ return this;
2050
+ },
2051
+ _setOption: function(key, value) {
2052
+ var self = this;
2053
+
2054
+ // The ability to set options is limited at this time.
2055
+
2056
+ switch(key) {
2057
+ case "volume" :
2058
+ this.volume(value);
2059
+ break;
2060
+ case "muted" :
2061
+ this._muted(value);
2062
+ break;
2063
+ case "cssSelectorAncestor" :
2064
+ this._cssSelectorAncestor(value); // Set and refresh all associations for the new ancestor.
2065
+ break;
2066
+ case "cssSelector" :
2067
+ $.each(value, function(fn, cssSel) {
2068
+ self._cssSelector(fn, cssSel); // NB: The option is set inside this function, after further validity checks.
2069
+ });
2070
+ break;
2071
+ case "fullScreen" :
2072
+ if(this.options[key] !== value) { // if changed
2073
+ var wkv = $.jPlayer.nativeFeatures.fullscreen.used.webkitVideo;
2074
+ if(!wkv || wkv && !this.status.waitForPlay) {
2075
+ if(!wkv) { // No sensible way to unset option on these devices.
2076
+ this.options[key] = value;
2077
+ }
2078
+ if(value) {
2079
+ this._requestFullscreen();
2080
+ } else {
2081
+ this._exitFullscreen();
2082
+ }
2083
+ if(!wkv) {
2084
+ this._setOption("fullWindow", value);
2085
+ }
2086
+ }
2087
+ }
2088
+ break;
2089
+ case "fullWindow" :
2090
+ if(this.options[key] !== value) { // if changed
2091
+ this._removeUiClass();
2092
+ this.options[key] = value;
2093
+ this._refreshSize();
2094
+ }
2095
+ break;
2096
+ case "size" :
2097
+ if(!this.options.fullWindow && this.options[key].cssClass !== value.cssClass) {
2098
+ this._removeUiClass();
2099
+ }
2100
+ this.options[key] = $.extend({}, this.options[key], value); // store a merged copy of it, incase not all properties changed.
2101
+ this._refreshSize();
2102
+ break;
2103
+ case "sizeFull" :
2104
+ if(this.options.fullWindow && this.options[key].cssClass !== value.cssClass) {
2105
+ this._removeUiClass();
2106
+ }
2107
+ this.options[key] = $.extend({}, this.options[key], value); // store a merged copy of it, incase not all properties changed.
2108
+ this._refreshSize();
2109
+ break;
2110
+ case "autohide" :
2111
+ this.options[key] = $.extend({}, this.options[key], value); // store a merged copy of it, incase not all properties changed.
2112
+ this._updateAutohide();
2113
+ break;
2114
+ case "loop" :
2115
+ this._loop(value);
2116
+ break;
2117
+ case "nativeVideoControls" :
2118
+ this.options[key] = $.extend({}, this.options[key], value); // store a merged copy of it, incase not all properties changed.
2119
+ this.status.nativeVideoControls = this._uaBlocklist(this.options.nativeVideoControls);
2120
+ this._restrictNativeVideoControls();
2121
+ this._updateNativeVideoControls();
2122
+ break;
2123
+ case "noFullWindow" :
2124
+ this.options[key] = $.extend({}, this.options[key], value); // store a merged copy of it, incase not all properties changed.
2125
+ this.status.nativeVideoControls = this._uaBlocklist(this.options.nativeVideoControls); // Need to check again as noFullWindow can depend on this flag and the restrict() can override it.
2126
+ this.status.noFullWindow = this._uaBlocklist(this.options.noFullWindow);
2127
+ this._restrictNativeVideoControls();
2128
+ this._updateButtons();
2129
+ break;
2130
+ case "noVolume" :
2131
+ this.options[key] = $.extend({}, this.options[key], value); // store a merged copy of it, incase not all properties changed.
2132
+ this.status.noVolume = this._uaBlocklist(this.options.noVolume);
2133
+ this._updateVolume();
2134
+ this._updateMute();
2135
+ break;
2136
+ case "emulateHtml" :
2137
+ if(this.options[key] !== value) { // To avoid multiple event handlers being created, if true already.
2138
+ this.options[key] = value;
2139
+ if(value) {
2140
+ this._emulateHtmlBridge();
2141
+ } else {
2142
+ this._destroyHtmlBridge();
2143
+ }
2144
+ }
2145
+ break;
2146
+ case "timeFormat" :
2147
+ this.options[key] = $.extend({}, this.options[key], value); // store a merged copy of it, incase not all properties changed.
2148
+ break;
2149
+ case "keyEnabled" :
2150
+ this.options[key] = value;
2151
+ if(!value && this === $.jPlayer.focus) {
2152
+ $.jPlayer.focus = null;
2153
+ }
2154
+ break;
2155
+ case "keyBindings" :
2156
+ this.options[key] = $.extend(true, {}, this.options[key], value); // store a merged DEEP copy of it, incase not all properties changed.
2157
+ break;
2158
+ case "audioFullScreen" :
2159
+ this.options[key] = value;
2160
+ break;
2161
+ }
2162
+
2163
+ return this;
2164
+ },
2165
+ // End of: (Options code adapted from ui.widget.js)
2166
+
2167
+ _refreshSize: function() {
2168
+ this._setSize(); // update status and jPlayer element size
2169
+ this._addUiClass(); // update the ui class
2170
+ this._updateSize(); // update internal sizes
2171
+ this._updateButtons();
2172
+ this._updateAutohide();
2173
+ this._trigger($.jPlayer.event.resize);
2174
+ },
2175
+ _setSize: function() {
2176
+ // Determine the current size from the options
2177
+ if(this.options.fullWindow) {
2178
+ this.status.width = this.options.sizeFull.width;
2179
+ this.status.height = this.options.sizeFull.height;
2180
+ this.status.cssClass = this.options.sizeFull.cssClass;
2181
+ } else {
2182
+ this.status.width = this.options.size.width;
2183
+ this.status.height = this.options.size.height;
2184
+ this.status.cssClass = this.options.size.cssClass;
2185
+ }
2186
+
2187
+ // Set the size of the jPlayer area.
2188
+ this.element.css({'width': this.status.width, 'height': this.status.height});
2189
+ },
2190
+ _addUiClass: function() {
2191
+ if(this.ancestorJq.length) {
2192
+ this.ancestorJq.addClass(this.status.cssClass);
2193
+ }
2194
+ },
2195
+ _removeUiClass: function() {
2196
+ if(this.ancestorJq.length) {
2197
+ this.ancestorJq.removeClass(this.status.cssClass);
2198
+ }
2199
+ },
2200
+ _updateSize: function() {
2201
+ // The poster uses show/hide so can simply resize it.
2202
+ this.internal.poster.jq.css({'width': this.status.width, 'height': this.status.height});
2203
+
2204
+ // Video html or flash resized if necessary at this time, or if native video controls being used.
2205
+ if(!this.status.waitForPlay && this.html.active && this.status.video || this.html.video.available && this.html.used && this.status.nativeVideoControls) {
2206
+ this.internal.video.jq.css({'width': this.status.width, 'height': this.status.height});
2207
+ }
2208
+ else if(!this.status.waitForPlay && this.flash.active && this.status.video) {
2209
+ this.internal.flash.jq.css({'width': this.status.width, 'height': this.status.height});
2210
+ }
2211
+ },
2212
+ _updateAutohide: function() {
2213
+ var self = this,
2214
+ event = "mousemove.jPlayer",
2215
+ namespace = ".jPlayerAutohide",
2216
+ eventType = event + namespace,
2217
+ handler = function() {
2218
+ self.css.jq.gui.fadeIn(self.options.autohide.fadeIn, function() {
2219
+ clearTimeout(self.internal.autohideId);
2220
+ self.internal.autohideId = setTimeout( function() {
2221
+ self.css.jq.gui.fadeOut(self.options.autohide.fadeOut);
2222
+ }, self.options.autohide.hold);
2223
+ });
2224
+ };
2225
+
2226
+ if(this.css.jq.gui.length) {
2227
+
2228
+ // End animations first so that its callback is executed now.
2229
+ // Otherwise an in progress fadeIn animation still has the callback to fadeOut again.
2230
+ this.css.jq.gui.stop(true, true);
2231
+
2232
+ // Removes the fadeOut operation from the fadeIn callback.
2233
+ clearTimeout(this.internal.autohideId);
2234
+
2235
+ this.element.unbind(namespace);
2236
+ this.css.jq.gui.unbind(namespace);
2237
+
2238
+ if(!this.status.nativeVideoControls) {
2239
+ if(this.options.fullWindow && this.options.autohide.full || !this.options.fullWindow && this.options.autohide.restored) {
2240
+ this.element.bind(eventType, handler);
2241
+ this.css.jq.gui.bind(eventType, handler);
2242
+ this.css.jq.gui.hide();
2243
+ } else {
2244
+ this.css.jq.gui.show();
2245
+ }
2246
+ } else {
2247
+ this.css.jq.gui.hide();
2248
+ }
2249
+ }
2250
+ },
2251
+ fullScreen: function() {
2252
+ this._setOption("fullScreen", true);
2253
+ },
2254
+ restoreScreen: function() {
2255
+ this._setOption("fullScreen", false);
2256
+ },
2257
+ _fullscreenAddEventListeners: function() {
2258
+ var self = this,
2259
+ fs = $.jPlayer.nativeFeatures.fullscreen;
2260
+
2261
+ if(fs.api.fullscreenEnabled) {
2262
+ if(fs.event.fullscreenchange) {
2263
+ // Create the event handler function and store it for removal.
2264
+ if(typeof this.internal.fullscreenchangeHandler !== 'function') {
2265
+ this.internal.fullscreenchangeHandler = function() {
2266
+ self._fullscreenchange();
2267
+ };
2268
+ }
2269
+ document.addEventListener(fs.event.fullscreenchange, this.internal.fullscreenchangeHandler, false);
2270
+ }
2271
+ // No point creating handler for fullscreenerror.
2272
+ // Either logic avoids fullscreen occurring (w3c/moz), or their is no event on the browser (webkit).
2273
+ }
2274
+ },
2275
+ _fullscreenRemoveEventListeners: function() {
2276
+ var fs = $.jPlayer.nativeFeatures.fullscreen;
2277
+ if(this.internal.fullscreenchangeHandler) {
2278
+ document.addEventListener(fs.event.fullscreenchange, this.internal.fullscreenchangeHandler, false);
2279
+ }
2280
+ },
2281
+ _fullscreenchange: function() {
2282
+ // If nothing is fullscreen, then we cannot be in fullscreen mode.
2283
+ if(this.options.fullScreen && !$.jPlayer.nativeFeatures.fullscreen.api.fullscreenElement()) {
2284
+ this._setOption("fullScreen", false);
2285
+ }
2286
+ },
2287
+ _requestFullscreen: function() {
2288
+ // Either the container or the jPlayer div
2289
+ var e = this.ancestorJq.length ? this.ancestorJq[0] : this.element[0],
2290
+ fs = $.jPlayer.nativeFeatures.fullscreen;
2291
+
2292
+ // This method needs the video element. For iOS and Android.
2293
+ if(fs.used.webkitVideo) {
2294
+ e = this.htmlElement.video;
2295
+ }
2296
+
2297
+ if(fs.api.fullscreenEnabled) {
2298
+ fs.api.requestFullscreen(e);
2299
+ }
2300
+ },
2301
+ _exitFullscreen: function() {
2302
+
2303
+ var fs = $.jPlayer.nativeFeatures.fullscreen,
2304
+ e;
2305
+
2306
+ // This method needs the video element. For iOS and Android.
2307
+ if(fs.used.webkitVideo) {
2308
+ e = this.htmlElement.video;
2309
+ }
2310
+
2311
+ if(fs.api.fullscreenEnabled) {
2312
+ fs.api.exitFullscreen(e);
2313
+ }
2314
+ },
2315
+ _html_initMedia: function(media) {
2316
+ // Remove any existing track elements
2317
+ var $media = $(this.htmlElement.media).empty();
2318
+
2319
+ // Create any track elements given with the media, as an Array of track Objects.
2320
+ $.each(media.track || [], function(i,v) {
2321
+ var track = document.createElement('track');
2322
+ track.setAttribute("kind", v.kind ? v.kind : "");
2323
+ track.setAttribute("src", v.src ? v.src : "");
2324
+ track.setAttribute("srclang", v.srclang ? v.srclang : "");
2325
+ track.setAttribute("label", v.label ? v.label : "");
2326
+ if(v.def) {
2327
+ track.setAttribute("default", v.def);
2328
+ }
2329
+ $media.append(track);
2330
+ });
2331
+
2332
+ this.htmlElement.media.src = this.status.src;
2333
+
2334
+ if(this.options.preload !== 'none') {
2335
+ this._html_load(); // See function for comments
2336
+ }
2337
+ this._trigger($.jPlayer.event.timeupdate); // The flash generates this event for its solution.
2338
+ },
2339
+ _html_setFormat: function(media) {
2340
+ var self = this;
2341
+ // Always finds a format due to checks in setMedia()
2342
+ $.each(this.formats, function(priority, format) {
2343
+ if(self.html.support[format] && media[format]) {
2344
+ self.status.src = media[format];
2345
+ self.status.format[format] = true;
2346
+ self.status.formatType = format;
2347
+ return false;
2348
+ }
2349
+ });
2350
+ },
2351
+ _html_setAudio: function(media) {
2352
+ this._html_setFormat(media);
2353
+ this.htmlElement.media = this.htmlElement.audio;
2354
+ this._html_initMedia(media);
2355
+ },
2356
+ _html_setVideo: function(media) {
2357
+ this._html_setFormat(media);
2358
+ if(this.status.nativeVideoControls) {
2359
+ this.htmlElement.video.poster = this._validString(media.poster) ? media.poster : "";
2360
+ }
2361
+ this.htmlElement.media = this.htmlElement.video;
2362
+ this._html_initMedia(media);
2363
+ },
2364
+ _html_resetMedia: function() {
2365
+ if(this.htmlElement.media) {
2366
+ if(this.htmlElement.media.id === this.internal.video.id && !this.status.nativeVideoControls) {
2367
+ this.internal.video.jq.css({'width':'0px', 'height':'0px'});
2368
+ }
2369
+ this.htmlElement.media.pause();
2370
+ }
2371
+ },
2372
+ _html_clearMedia: function() {
2373
+ if(this.htmlElement.media) {
2374
+ this.htmlElement.media.src = "about:blank";
2375
+ // The following load() is only required for Firefox 3.6 (PowerMacs).
2376
+ // Recent HTMl5 browsers only require the src change. Due to changes in W3C spec and load() effect.
2377
+ this.htmlElement.media.load(); // Stops an old, "in progress" download from continuing the download. Triggers the loadstart, error and emptied events, due to the empty src. Also an abort event if a download was in progress.
2378
+ }
2379
+ },
2380
+ _html_load: function() {
2381
+ // This function remains to allow the early HTML5 browsers to work, such as Firefox 3.6
2382
+ // A change in the W3C spec for the media.load() command means that this is no longer necessary.
2383
+ // This command should be removed and actually causes minor undesirable effects on some browsers. Such as loading the whole file and not only the metadata.
2384
+ if(this.status.waitForLoad) {
2385
+ this.status.waitForLoad = false;
2386
+ this.htmlElement.media.load();
2387
+ }
2388
+ clearTimeout(this.internal.htmlDlyCmdId);
2389
+ },
2390
+ _html_play: function(time) {
2391
+ var self = this,
2392
+ media = this.htmlElement.media;
2393
+
2394
+ this._html_load(); // Loads if required and clears any delayed commands.
2395
+
2396
+ if(!isNaN(time)) {
2397
+
2398
+ // Attempt to play it, since iOS has been ignoring commands
2399
+ if(this.internal.cmdsIgnored) {
2400
+ media.play();
2401
+ }
2402
+
2403
+ try {
2404
+ // !media.seekable is for old HTML5 browsers, like Firefox 3.6.
2405
+ // Checking seekable.length is important for iOS6 to work with setMedia().play(time)
2406
+ if(!media.seekable || typeof media.seekable === "object" && media.seekable.length > 0) {
2407
+ media.currentTime = time;
2408
+ media.play();
2409
+ } else {
2410
+ throw 1;
2411
+ }
2412
+ } catch(err) {
2413
+ this.internal.htmlDlyCmdId = setTimeout(function() {
2414
+ self.play(time);
2415
+ }, 250);
2416
+ return; // Cancel execution and wait for the delayed command.
2417
+ }
2418
+ } else {
2419
+ media.play();
2420
+ }
2421
+ this._html_checkWaitForPlay();
2422
+ },
2423
+ _html_pause: function(time) {
2424
+ var self = this,
2425
+ media = this.htmlElement.media;
2426
+
2427
+ if(time > 0) { // We do not want the stop() command, which does pause(0), causing a load operation.
2428
+ this._html_load(); // Loads if required and clears any delayed commands.
2429
+ } else {
2430
+ clearTimeout(this.internal.htmlDlyCmdId);
2431
+ }
2432
+
2433
+ // Order of these commands is important for Safari (Win) and IE9. Pause then change currentTime.
2434
+ media.pause();
2435
+
2436
+ if(!isNaN(time)) {
2437
+ try {
2438
+ if(!media.seekable || typeof media.seekable === "object" && media.seekable.length > 0) {
2439
+ media.currentTime = time;
2440
+ } else {
2441
+ throw 1;
2442
+ }
2443
+ } catch(err) {
2444
+ this.internal.htmlDlyCmdId = setTimeout(function() {
2445
+ self.pause(time);
2446
+ }, 250);
2447
+ return; // Cancel execution and wait for the delayed command.
2448
+ }
2449
+ }
2450
+ if(time > 0) { // Avoids a setMedia() followed by stop() or pause(0) hiding the video play button.
2451
+ this._html_checkWaitForPlay();
2452
+ }
2453
+ },
2454
+ _html_playHead: function(percent) {
2455
+ var self = this,
2456
+ media = this.htmlElement.media;
2457
+
2458
+ this._html_load(); // Loads if required and clears any delayed commands.
2459
+
2460
+ try {
2461
+ if(typeof media.seekable === "object" && media.seekable.length > 0) {
2462
+ media.currentTime = percent * media.seekable.end(media.seekable.length-1) / 100;
2463
+ } else if(media.duration > 0 && !isNaN(media.duration)) {
2464
+ media.currentTime = percent * media.duration / 100;
2465
+ } else {
2466
+ throw "e";
2467
+ }
2468
+ } catch(err) {
2469
+ this.internal.htmlDlyCmdId = setTimeout(function() {
2470
+ self.playHead(percent);
2471
+ }, 250);
2472
+ return; // Cancel execution and wait for the delayed command.
2473
+ }
2474
+ if(!this.status.waitForLoad) {
2475
+ this._html_checkWaitForPlay();
2476
+ }
2477
+ },
2478
+ _html_checkWaitForPlay: function() {
2479
+ if(this.status.waitForPlay) {
2480
+ this.status.waitForPlay = false;
2481
+ if(this.css.jq.videoPlay.length) {
2482
+ this.css.jq.videoPlay.hide();
2483
+ }
2484
+ if(this.status.video) {
2485
+ this.internal.poster.jq.hide();
2486
+ this.internal.video.jq.css({'width': this.status.width, 'height': this.status.height});
2487
+ }
2488
+ }
2489
+ },
2490
+ _html_volume: function(v) {
2491
+ if(this.html.audio.available) {
2492
+ this.htmlElement.audio.volume = v;
2493
+ }
2494
+ if(this.html.video.available) {
2495
+ this.htmlElement.video.volume = v;
2496
+ }
2497
+ },
2498
+ _html_mute: function(m) {
2499
+ if(this.html.audio.available) {
2500
+ this.htmlElement.audio.muted = m;
2501
+ }
2502
+ if(this.html.video.available) {
2503
+ this.htmlElement.video.muted = m;
2504
+ }
2505
+ },
2506
+ _flash_setAudio: function(media) {
2507
+ var self = this;
2508
+ try {
2509
+ // Always finds a format due to checks in setMedia()
2510
+ $.each(this.formats, function(priority, format) {
2511
+ if(self.flash.support[format] && media[format]) {
2512
+ switch (format) {
2513
+ case "m4a" :
2514
+ case "fla" :
2515
+ self._getMovie().fl_setAudio_m4a(media[format]);
2516
+ break;
2517
+ case "mp3" :
2518
+ self._getMovie().fl_setAudio_mp3(media[format]);
2519
+ break;
2520
+ case "rtmpa":
2521
+ self._getMovie().fl_setAudio_rtmp(media[format]);
2522
+ break;
2523
+ }
2524
+ self.status.src = media[format];
2525
+ self.status.format[format] = true;
2526
+ self.status.formatType = format;
2527
+ return false;
2528
+ }
2529
+ });
2530
+
2531
+ if(this.options.preload === 'auto') {
2532
+ this._flash_load();
2533
+ this.status.waitForLoad = false;
2534
+ }
2535
+ } catch(err) { this._flashError(err); }
2536
+ },
2537
+ _flash_setVideo: function(media) {
2538
+ var self = this;
2539
+ try {
2540
+ // Always finds a format due to checks in setMedia()
2541
+ $.each(this.formats, function(priority, format) {
2542
+ if(self.flash.support[format] && media[format]) {
2543
+ switch (format) {
2544
+ case "m4v" :
2545
+ case "flv" :
2546
+ self._getMovie().fl_setVideo_m4v(media[format]);
2547
+ break;
2548
+ case "rtmpv":
2549
+ self._getMovie().fl_setVideo_rtmp(media[format]);
2550
+ break;
2551
+ }
2552
+ self.status.src = media[format];
2553
+ self.status.format[format] = true;
2554
+ self.status.formatType = format;
2555
+ return false;
2556
+ }
2557
+ });
2558
+
2559
+ if(this.options.preload === 'auto') {
2560
+ this._flash_load();
2561
+ this.status.waitForLoad = false;
2562
+ }
2563
+ } catch(err) { this._flashError(err); }
2564
+ },
2565
+ _flash_resetMedia: function() {
2566
+ this.internal.flash.jq.css({'width':'0px', 'height':'0px'}); // Must do via CSS as setting attr() to zero causes a jQuery error in IE.
2567
+ this._flash_pause(NaN);
2568
+ },
2569
+ _flash_clearMedia: function() {
2570
+ try {
2571
+ this._getMovie().fl_clearMedia();
2572
+ } catch(err) { this._flashError(err); }
2573
+ },
2574
+ _flash_load: function() {
2575
+ try {
2576
+ this._getMovie().fl_load();
2577
+ } catch(err) { this._flashError(err); }
2578
+ this.status.waitForLoad = false;
2579
+ },
2580
+ _flash_play: function(time) {
2581
+ try {
2582
+ this._getMovie().fl_play(time);
2583
+ } catch(err) { this._flashError(err); }
2584
+ this.status.waitForLoad = false;
2585
+ this._flash_checkWaitForPlay();
2586
+ },
2587
+ _flash_pause: function(time) {
2588
+ try {
2589
+ this._getMovie().fl_pause(time);
2590
+ } catch(err) { this._flashError(err); }
2591
+ if(time > 0) { // Avoids a setMedia() followed by stop() or pause(0) hiding the video play button.
2592
+ this.status.waitForLoad = false;
2593
+ this._flash_checkWaitForPlay();
2594
+ }
2595
+ },
2596
+ _flash_playHead: function(p) {
2597
+ try {
2598
+ this._getMovie().fl_play_head(p);
2599
+ } catch(err) { this._flashError(err); }
2600
+ if(!this.status.waitForLoad) {
2601
+ this._flash_checkWaitForPlay();
2602
+ }
2603
+ },
2604
+ _flash_checkWaitForPlay: function() {
2605
+ if(this.status.waitForPlay) {
2606
+ this.status.waitForPlay = false;
2607
+ if(this.css.jq.videoPlay.length) {
2608
+ this.css.jq.videoPlay.hide();
2609
+ }
2610
+ if(this.status.video) {
2611
+ this.internal.poster.jq.hide();
2612
+ this.internal.flash.jq.css({'width': this.status.width, 'height': this.status.height});
2613
+ }
2614
+ }
2615
+ },
2616
+ _flash_volume: function(v) {
2617
+ try {
2618
+ this._getMovie().fl_volume(v);
2619
+ } catch(err) { this._flashError(err); }
2620
+ },
2621
+ _flash_mute: function(m) {
2622
+ try {
2623
+ this._getMovie().fl_mute(m);
2624
+ } catch(err) { this._flashError(err); }
2625
+ },
2626
+ _getMovie: function() {
2627
+ return document[this.internal.flash.id];
2628
+ },
2629
+ _getFlashPluginVersion: function() {
2630
+
2631
+ // _getFlashPluginVersion() code influenced by:
2632
+ // - FlashReplace 1.01: http://code.google.com/p/flashreplace/
2633
+ // - SWFObject 2.2: http://code.google.com/p/swfobject/
2634
+
2635
+ var version = 0,
2636
+ flash;
2637
+ if(window.ActiveXObject) {
2638
+ try {
2639
+ flash = new ActiveXObject("ShockwaveFlash.ShockwaveFlash");
2640
+ if (flash) { // flash will return null when ActiveX is disabled
2641
+ var v = flash.GetVariable("$version");
2642
+ if(v) {
2643
+ v = v.split(" ")[1].split(",");
2644
+ version = parseInt(v[0], 10) + "." + parseInt(v[1], 10);
2645
+ }
2646
+ }
2647
+ } catch(e) {}
2648
+ }
2649
+ else if(navigator.plugins && navigator.mimeTypes.length > 0) {
2650
+ flash = navigator.plugins["Shockwave Flash"];
2651
+ if(flash) {
2652
+ version = navigator.plugins["Shockwave Flash"].description.replace(/.*\s(\d+\.\d+).*/, "$1");
2653
+ }
2654
+ }
2655
+ return version * 1; // Converts to a number
2656
+ },
2657
+ _checkForFlash: function (version) {
2658
+ var flashOk = false;
2659
+ if(this._getFlashPluginVersion() >= version) {
2660
+ flashOk = true;
2661
+ }
2662
+ return flashOk;
2663
+ },
2664
+ _validString: function(url) {
2665
+ return (url && typeof url === "string"); // Empty strings return false
2666
+ },
2667
+ _limitValue: function(value, min, max) {
2668
+ return (value < min) ? min : ((value > max) ? max : value);
2669
+ },
2670
+ _urlNotSetError: function(context) {
2671
+ this._error( {
2672
+ type: $.jPlayer.error.URL_NOT_SET,
2673
+ context: context,
2674
+ message: $.jPlayer.errorMsg.URL_NOT_SET,
2675
+ hint: $.jPlayer.errorHint.URL_NOT_SET
2676
+ });
2677
+ },
2678
+ _flashError: function(error) {
2679
+ var errorType;
2680
+ if(!this.internal.ready) {
2681
+ errorType = "FLASH";
2682
+ } else {
2683
+ errorType = "FLASH_DISABLED";
2684
+ }
2685
+ this._error( {
2686
+ type: $.jPlayer.error[errorType],
2687
+ context: this.internal.flash.swf,
2688
+ message: $.jPlayer.errorMsg[errorType] + error.message,
2689
+ hint: $.jPlayer.errorHint[errorType]
2690
+ });
2691
+ // Allow the audio player to recover if display:none and then shown again, or with position:fixed on Firefox.
2692
+ // This really only affects audio in a media player, as an audio player could easily move the jPlayer element away from such issues.
2693
+ this.internal.flash.jq.css({'width':'1px', 'height':'1px'});
2694
+ },
2695
+ _error: function(error) {
2696
+ this._trigger($.jPlayer.event.error, error);
2697
+ if(this.options.errorAlerts) {
2698
+ this._alert("Error!" + (error.message ? "\n\n" + error.message : "") + (error.hint ? "\n\n" + error.hint : "") + "\n\nContext: " + error.context);
2699
+ }
2700
+ },
2701
+ _warning: function(warning) {
2702
+ this._trigger($.jPlayer.event.warning, undefined, warning);
2703
+ if(this.options.warningAlerts) {
2704
+ this._alert("Warning!" + (warning.message ? "\n\n" + warning.message : "") + (warning.hint ? "\n\n" + warning.hint : "") + "\n\nContext: " + warning.context);
2705
+ }
2706
+ },
2707
+ _alert: function(message) {
2708
+ alert("jPlayer " + this.version.script + " : id='" + this.internal.self.id +"' : " + message);
2709
+ },
2710
+ _emulateHtmlBridge: function() {
2711
+ var self = this;
2712
+
2713
+ // Emulate methods on jPlayer's DOM element.
2714
+ $.each( $.jPlayer.emulateMethods.split(/\s+/g), function(i, name) {
2715
+ self.internal.domNode[name] = function(arg) {
2716
+ self[name](arg);
2717
+ };
2718
+
2719
+ });
2720
+
2721
+ // Bubble jPlayer events to its DOM element.
2722
+ $.each($.jPlayer.event, function(eventName,eventType) {
2723
+ var nativeEvent = true;
2724
+ $.each( $.jPlayer.reservedEvent.split(/\s+/g), function(i, name) {
2725
+ if(name === eventName) {
2726
+ nativeEvent = false;
2727
+ return false;
2728
+ }
2729
+ });
2730
+ if(nativeEvent) {
2731
+ self.element.bind(eventType + ".jPlayer.jPlayerHtml", function() { // With .jPlayer & .jPlayerHtml namespaces.
2732
+ self._emulateHtmlUpdate();
2733
+ var domEvent = document.createEvent("Event");
2734
+ domEvent.initEvent(eventName, false, true);
2735
+ self.internal.domNode.dispatchEvent(domEvent);
2736
+ });
2737
+ }
2738
+ // The error event would require a special case
2739
+ });
2740
+
2741
+ // IE9 has a readyState property on all elements. The document should have it, but all (except media) elements inherit it in IE9. This conflicts with Popcorn, which polls the readyState.
2742
+ },
2743
+ _emulateHtmlUpdate: function() {
2744
+ var self = this;
2745
+
2746
+ $.each( $.jPlayer.emulateStatus.split(/\s+/g), function(i, name) {
2747
+ self.internal.domNode[name] = self.status[name];
2748
+ });
2749
+ $.each( $.jPlayer.emulateOptions.split(/\s+/g), function(i, name) {
2750
+ self.internal.domNode[name] = self.options[name];
2751
+ });
2752
+ },
2753
+ _destroyHtmlBridge: function() {
2754
+ var self = this;
2755
+
2756
+ // Bridge event handlers are also removed by destroy() through .jPlayer namespace.
2757
+ this.element.unbind(".jPlayerHtml"); // Remove all event handlers created by the jPlayer bridge. So you can change the emulateHtml option.
2758
+
2759
+ // Remove the methods and properties
2760
+ var emulated = $.jPlayer.emulateMethods + " " + $.jPlayer.emulateStatus + " " + $.jPlayer.emulateOptions;
2761
+ $.each( emulated.split(/\s+/g), function(i, name) {
2762
+ delete self.internal.domNode[name];
2763
+ });
2764
+ }
2765
+ };
2766
+
2767
+ $.jPlayer.error = {
2768
+ FLASH: "e_flash",
2769
+ FLASH_DISABLED: "e_flash_disabled",
2770
+ NO_SOLUTION: "e_no_solution",
2771
+ NO_SUPPORT: "e_no_support",
2772
+ URL: "e_url",
2773
+ URL_NOT_SET: "e_url_not_set",
2774
+ VERSION: "e_version"
2775
+ };
2776
+
2777
+ $.jPlayer.errorMsg = {
2778
+ FLASH: "jPlayer's Flash fallback is not configured correctly, or a command was issued before the jPlayer Ready event. Details: ", // Used in: _flashError()
2779
+ FLASH_DISABLED: "jPlayer's Flash fallback has been disabled by the browser due to the CSS rules you have used. Details: ", // Used in: _flashError()
2780
+ NO_SOLUTION: "No solution can be found by jPlayer in this browser. Neither HTML nor Flash can be used.", // Used in: _init()
2781
+ NO_SUPPORT: "It is not possible to play any media format provided in setMedia() on this browser using your current options.", // Used in: setMedia()
2782
+ URL: "Media URL could not be loaded.", // Used in: jPlayerFlashEvent() and _addHtmlEventListeners()
2783
+ URL_NOT_SET: "Attempt to issue media playback commands, while no media url is set.", // Used in: load(), play(), pause(), stop() and playHead()
2784
+ VERSION: "jPlayer " + $.jPlayer.prototype.version.script + " needs Jplayer.swf version " + $.jPlayer.prototype.version.needFlash + " but found " // Used in: jPlayerReady()
2785
+ };
2786
+
2787
+ $.jPlayer.errorHint = {
2788
+ FLASH: "Check your swfPath option and that Jplayer.swf is there.",
2789
+ FLASH_DISABLED: "Check that you have not display:none; the jPlayer entity or any ancestor.",
2790
+ NO_SOLUTION: "Review the jPlayer options: support and supplied.",
2791
+ NO_SUPPORT: "Video or audio formats defined in the supplied option are missing.",
2792
+ URL: "Check media URL is valid.",
2793
+ URL_NOT_SET: "Use setMedia() to set the media URL.",
2794
+ VERSION: "Update jPlayer files."
2795
+ };
2796
+
2797
+ $.jPlayer.warning = {
2798
+ CSS_SELECTOR_COUNT: "e_css_selector_count",
2799
+ CSS_SELECTOR_METHOD: "e_css_selector_method",
2800
+ CSS_SELECTOR_STRING: "e_css_selector_string",
2801
+ OPTION_KEY: "e_option_key"
2802
+ };
2803
+
2804
+ $.jPlayer.warningMsg = {
2805
+ CSS_SELECTOR_COUNT: "The number of css selectors found did not equal one: ",
2806
+ CSS_SELECTOR_METHOD: "The methodName given in jPlayer('cssSelector') is not a valid jPlayer method.",
2807
+ CSS_SELECTOR_STRING: "The methodCssSelector given in jPlayer('cssSelector') is not a String or is empty.",
2808
+ OPTION_KEY: "The option requested in jPlayer('option') is undefined."
2809
+ };
2810
+
2811
+ $.jPlayer.warningHint = {
2812
+ CSS_SELECTOR_COUNT: "Check your css selector and the ancestor.",
2813
+ CSS_SELECTOR_METHOD: "Check your method name.",
2814
+ CSS_SELECTOR_STRING: "Check your css selector is a string.",
2815
+ OPTION_KEY: "Check your option name."
2816
+ };
2817
+ }));