riojs 0.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (270) hide show
  1. data/LICENSE +20 -0
  2. data/README.rdoc +24 -0
  3. data/VERSION +1 -0
  4. data/bin/rio +5 -0
  5. data/generators/rio_app/USAGE +19 -0
  6. data/generators/rio_app/rio_app_generator.rb +40 -0
  7. data/generators/rio_app/templates/app.build +10 -0
  8. data/generators/rio_app/templates/app.css +0 -0
  9. data/generators/rio_app/templates/app.js +20 -0
  10. data/generators/rio_app/templates/app_view.html.erb +19 -0
  11. data/generators/rio_app/templates/fixture.js +4 -0
  12. data/generators/rio_app/templates/rio.html.erb +18 -0
  13. data/generators/rio_app/templates/rio_controller.rb +2 -0
  14. data/generators/rio_app/templates/spec.js +7 -0
  15. data/generators/rio_component/USAGE +13 -0
  16. data/generators/rio_component/rio_component_generator.rb +16 -0
  17. data/generators/rio_component/templates/component.css +0 -0
  18. data/generators/rio_component/templates/component.js +11 -0
  19. data/generators/rio_component/templates/fixture.js +3 -0
  20. data/generators/rio_component/templates/spec.js +6 -0
  21. data/generators/rio_model/USAGE +12 -0
  22. data/generators/rio_model/rio_model_generator.rb +21 -0
  23. data/generators/rio_model/templates/fixture.js +3 -0
  24. data/generators/rio_model/templates/model.js +9 -0
  25. data/generators/rio_model/templates/spec.js +6 -0
  26. data/generators/rio_page/USAGE +14 -0
  27. data/generators/rio_page/rio_page_generator.rb +16 -0
  28. data/generators/rio_page/templates/fixture.js +3 -0
  29. data/generators/rio_page/templates/page.css +12 -0
  30. data/generators/rio_page/templates/page.js +12 -0
  31. data/generators/rio_page/templates/page.jst +64 -0
  32. data/generators/rio_page/templates/spec.js +6 -0
  33. data/generators/rio_resource/USAGE +20 -0
  34. data/generators/rio_resource/rio_resource_generator.rb +10 -0
  35. data/generators/rio_resource/templates/controller.rb +3 -0
  36. data/init.rb +4 -0
  37. data/install/config/juggernaut_hosts.yml +18 -0
  38. data/install/lib/tasks/rio.rake +1 -0
  39. data/install/script/rio_server +37 -0
  40. data/lib/rio/autospec.rb +86 -0
  41. data/lib/rio/install.rb +90 -0
  42. data/lib/rio/juggernaut.rb +212 -0
  43. data/lib/rio/path.rb +3 -0
  44. data/lib/rio/rio_compressor.rb +219 -0
  45. data/lib/rio/rio_file_controller.rb +16 -0
  46. data/lib/rio/rio_on_rails.rb +586 -0
  47. data/lib/rio/rio_proxy_controller.rb +60 -0
  48. data/lib/rio/rio_push_controller.rb +48 -0
  49. data/lib/rio/rio_routes.rb +24 -0
  50. data/lib/rio/rio_spec_controller.rb +70 -0
  51. data/lib/riojs.rb +14 -0
  52. data/lib/tasks/rio.rb +63 -0
  53. data/public/images/background-chiffon.png +0 -0
  54. data/public/images/button-gradient-overlay-down.png +0 -0
  55. data/public/images/button-gradient-overlay.png +0 -0
  56. data/public/images/icons/add.png +0 -0
  57. data/public/images/icons/error-big.png +0 -0
  58. data/public/images/icons/warning-big.png +0 -0
  59. data/public/images/rio-logo-big.png +0 -0
  60. data/public/images/rio-logo.png +0 -0
  61. data/public/images/splitter-handle-horizontal.png +0 -0
  62. data/public/images/splitter-handle-vertical.png +0 -0
  63. data/public/images/tab-bar-gradient-overlay.png +0 -0
  64. data/public/images/title-gradient-overlay.png +0 -0
  65. data/public/images/trash.gif +0 -0
  66. data/public/javascripts/components/accordion.js +144 -0
  67. data/public/javascripts/components/alert_box.js +59 -0
  68. data/public/javascripts/components/base.js +47 -0
  69. data/public/javascripts/components/box.js +63 -0
  70. data/public/javascripts/components/button.js +98 -0
  71. data/public/javascripts/components/checkbox.js +44 -0
  72. data/public/javascripts/components/container.js +265 -0
  73. data/public/javascripts/components/grid_view.js +107 -0
  74. data/public/javascripts/components/image.js +19 -0
  75. data/public/javascripts/components/input.js +171 -0
  76. data/public/javascripts/components/label.js +15 -0
  77. data/public/javascripts/components/lightbox.js +160 -0
  78. data/public/javascripts/components/link.js +43 -0
  79. data/public/javascripts/components/list_item.js +44 -0
  80. data/public/javascripts/components/list_view.js +192 -0
  81. data/public/javascripts/components/marquee.js +131 -0
  82. data/public/javascripts/components/menu.js +89 -0
  83. data/public/javascripts/components/notification.js +75 -0
  84. data/public/javascripts/components/overlay.js +134 -0
  85. data/public/javascripts/components/panel.js +146 -0
  86. data/public/javascripts/components/radio.js +46 -0
  87. data/public/javascripts/components/splitter.js +65 -0
  88. data/public/javascripts/components/tab_bar.js +64 -0
  89. data/public/javascripts/components/tab_panel.js +57 -0
  90. data/public/javascripts/components/textarea.js +223 -0
  91. data/public/javascripts/components/toggle_button.js +22 -0
  92. data/public/javascripts/components/tooltip.js +80 -0
  93. data/public/javascripts/lib/application.js +482 -0
  94. data/public/javascripts/lib/attr.js +760 -0
  95. data/public/javascripts/lib/benchmark.js +235 -0
  96. data/public/javascripts/lib/blank.html +39 -0
  97. data/public/javascripts/lib/boot.js +300 -0
  98. data/public/javascripts/lib/clipboard.js +96 -0
  99. data/public/javascripts/lib/collection_entity.js +46 -0
  100. data/public/javascripts/lib/component.js +129 -0
  101. data/public/javascripts/lib/console.js +75 -0
  102. data/public/javascripts/lib/console/apps/console.build +43 -0
  103. data/public/javascripts/lib/console/apps/console.js +28 -0
  104. data/public/javascripts/lib/console/blank.html +39 -0
  105. data/public/javascripts/lib/console/components/benchmark.js +196 -0
  106. data/public/javascripts/lib/console/components/console.js +352 -0
  107. data/public/javascripts/lib/console/components/dependencies_list.js +17 -0
  108. data/public/javascripts/lib/console/components/docs.js +66 -0
  109. data/public/javascripts/lib/console/components/playground.js +30 -0
  110. data/public/javascripts/lib/console/console.html +27 -0
  111. data/public/javascripts/lib/console/console_commands.js +287 -0
  112. data/public/javascripts/lib/console/console_commands.js.rej +21 -0
  113. data/public/javascripts/lib/console/console_mixin.js +22 -0
  114. data/public/javascripts/lib/console/docs/files.html +579 -0
  115. data/public/javascripts/lib/console/docs/index.html +323 -0
  116. data/public/javascripts/lib/console/docs/symbols/Object.html +291 -0
  117. data/public/javascripts/lib/console/docs/symbols/_global_.html +413 -0
  118. data/public/javascripts/lib/console/docs/symbols/rio.AIM.html +490 -0
  119. data/public/javascripts/lib/console/docs/symbols/rio.Application.html +841 -0
  120. data/public/javascripts/lib/console/docs/symbols/rio.Attr.html +1075 -0
  121. data/public/javascripts/lib/console/docs/symbols/rio.Binding.html +272 -0
  122. data/public/javascripts/lib/console/docs/symbols/rio.Component.html +419 -0
  123. data/public/javascripts/lib/console/docs/symbols/rio.Cookie.html +543 -0
  124. data/public/javascripts/lib/console/docs/symbols/rio.DelayedTask#initialize.html +270 -0
  125. data/public/javascripts/lib/console/docs/symbols/rio.DelayedTask.html +391 -0
  126. data/public/javascripts/lib/console/docs/symbols/rio.JsTemplate.html +271 -0
  127. data/public/javascripts/lib/console/docs/symbols/rio.Juggernaut.html +329 -0
  128. data/public/javascripts/lib/console/docs/symbols/rio.Model.html +822 -0
  129. data/public/javascripts/lib/console/docs/symbols/rio.Page.html +383 -0
  130. data/public/javascripts/lib/console/docs/symbols/rio.Template.html +328 -0
  131. data/public/javascripts/lib/console/docs/symbols/rio.Utils.html +617 -0
  132. data/public/javascripts/lib/console/docs/symbols/rio.html +506 -0
  133. data/public/javascripts/lib/console/docs/symbols/src/public_javascripts_components_base.js.html +54 -0
  134. data/public/javascripts/lib/console/docs/symbols/src/public_javascripts_lib_application.js.html +490 -0
  135. data/public/javascripts/lib/console/docs/symbols/src/public_javascripts_lib_attr.js.html +768 -0
  136. data/public/javascripts/lib/console/docs/symbols/src/public_javascripts_lib_boot.js.html +308 -0
  137. data/public/javascripts/lib/console/docs/symbols/src/public_javascripts_lib_clipboard.js.html +103 -0
  138. data/public/javascripts/lib/console/docs/symbols/src/public_javascripts_lib_collection_entity.js.html +53 -0
  139. data/public/javascripts/lib/console/docs/symbols/src/public_javascripts_lib_component.js.html +137 -0
  140. data/public/javascripts/lib/console/docs/symbols/src/public_javascripts_lib_cookie.js.html +81 -0
  141. data/public/javascripts/lib/console/docs/symbols/src/public_javascripts_lib_delayed_task.js.html +68 -0
  142. data/public/javascripts/lib/console/docs/symbols/src/public_javascripts_lib_file.js.html +80 -0
  143. data/public/javascripts/lib/console/docs/symbols/src/public_javascripts_lib_flash_detect.js.html +129 -0
  144. data/public/javascripts/lib/console/docs/symbols/src/public_javascripts_lib_form.js.html +95 -0
  145. data/public/javascripts/lib/console/docs/symbols/src/public_javascripts_lib_id.js.html +50 -0
  146. data/public/javascripts/lib/console/docs/symbols/src/public_javascripts_lib_inflector.js.html +167 -0
  147. data/public/javascripts/lib/console/docs/symbols/src/public_javascripts_lib_js_template.js.html +283 -0
  148. data/public/javascripts/lib/console/docs/symbols/src/public_javascripts_lib_juggernaut.js.html +303 -0
  149. data/public/javascripts/lib/console/docs/symbols/src/public_javascripts_lib_key_map.js.html +68 -0
  150. data/public/javascripts/lib/console/docs/symbols/src/public_javascripts_lib_layout_manager.js.html +175 -0
  151. data/public/javascripts/lib/console/docs/symbols/src/public_javascripts_lib_log.js.html +17 -0
  152. data/public/javascripts/lib/console/docs/symbols/src/public_javascripts_lib_model.js.html +1074 -0
  153. data/public/javascripts/lib/console/docs/symbols/src/public_javascripts_lib_page.js.html +246 -0
  154. data/public/javascripts/lib/console/docs/symbols/src/public_javascripts_lib_parameters.js.html +66 -0
  155. data/public/javascripts/lib/console/docs/symbols/src/public_javascripts_lib_protohack.js.html +305 -0
  156. data/public/javascripts/lib/console/docs/symbols/src/public_javascripts_lib_push.js.html +12 -0
  157. data/public/javascripts/lib/console/docs/symbols/src/public_javascripts_lib_rsh.js.html +659 -0
  158. data/public/javascripts/lib/console/docs/symbols/src/public_javascripts_lib_swfobject.js.html +12 -0
  159. data/public/javascripts/lib/console/docs/symbols/src/public_javascripts_lib_tag.js.html +60 -0
  160. data/public/javascripts/lib/console/docs/symbols/src/public_javascripts_lib_template.js.html +64 -0
  161. data/public/javascripts/lib/console/docs/symbols/src/public_javascripts_lib_theme.js.html +105 -0
  162. data/public/javascripts/lib/console/docs/symbols/src/public_javascripts_lib_undo.js.html +142 -0
  163. data/public/javascripts/lib/console/docs/symbols/src/public_javascripts_lib_utils.js.html +87 -0
  164. data/public/javascripts/lib/console/docs/symbols/src/public_javascripts_lib_yaml.js.html +88 -0
  165. data/public/javascripts/lib/console/file-small.png +0 -0
  166. data/public/javascripts/lib/console/green-circle.png +0 -0
  167. data/public/javascripts/lib/console/loading.gif +0 -0
  168. data/public/javascripts/lib/console/pages/console_page.js +149 -0
  169. data/public/javascripts/lib/console/pages/console_page.jst +27 -0
  170. data/public/javascripts/lib/console/red-circle.png +0 -0
  171. data/public/javascripts/lib/cookie.js +74 -0
  172. data/public/javascripts/lib/delayed_task.js +61 -0
  173. data/public/javascripts/lib/dependencies.js +76 -0
  174. data/public/javascripts/lib/environment.js +30 -0
  175. data/public/javascripts/lib/event.simulate.js +137 -0
  176. data/public/javascripts/lib/expressinstall.swf +0 -0
  177. data/public/javascripts/lib/file.js +72 -0
  178. data/public/javascripts/lib/flash_detect.js +122 -0
  179. data/public/javascripts/lib/flashembed.min.js +16 -0
  180. data/public/javascripts/lib/form.js +88 -0
  181. data/public/javascripts/lib/id.js +43 -0
  182. data/public/javascripts/lib/inflector.js +160 -0
  183. data/public/javascripts/lib/instrumenter.js +106 -0
  184. data/public/javascripts/lib/js_template.js +275 -0
  185. data/public/javascripts/lib/jslint.js +4950 -0
  186. data/public/javascripts/lib/juggernaut.js +295 -0
  187. data/public/javascripts/lib/juggernaut.swf +0 -0
  188. data/public/javascripts/lib/key_map.js +60 -0
  189. data/public/javascripts/lib/layout_manager.js +167 -0
  190. data/public/javascripts/lib/model.js +1067 -0
  191. data/public/javascripts/lib/page.js +238 -0
  192. data/public/javascripts/lib/parameters.js +59 -0
  193. data/public/javascripts/lib/png_fix.js +75 -0
  194. data/public/javascripts/lib/protohack.js +297 -0
  195. data/public/javascripts/lib/push.js +5 -0
  196. data/public/javascripts/lib/rio.build +28 -0
  197. data/public/javascripts/lib/rio_development.build +5 -0
  198. data/public/javascripts/lib/rio_lint.js +66 -0
  199. data/public/javascripts/lib/rsh.js +651 -0
  200. data/public/javascripts/lib/spec.js +545 -0
  201. data/public/javascripts/lib/spec_runner.js +242 -0
  202. data/public/javascripts/lib/swfobject.js +5 -0
  203. data/public/javascripts/lib/tag.js +52 -0
  204. data/public/javascripts/lib/undo.js +134 -0
  205. data/public/javascripts/lib/utils.js +80 -0
  206. data/public/javascripts/lib/yaml.js +80 -0
  207. data/public/javascripts/pages/playground_page.js +15 -0
  208. data/public/javascripts/prototype/builder.js +146 -0
  209. data/public/javascripts/prototype/controls.js +1004 -0
  210. data/public/javascripts/prototype/dragdrop.js +1030 -0
  211. data/public/javascripts/prototype/effects.js +1137 -0
  212. data/public/javascripts/prototype/prototype.js +4320 -0
  213. data/public/javascripts/prototype/slider.js +283 -0
  214. data/public/javascripts/prototype/sound.js +67 -0
  215. data/public/javascripts/specs/components/box_spec.js +6 -0
  216. data/public/javascripts/specs/components/checkbox_spec.js +26 -0
  217. data/public/javascripts/specs/components/container_spec.js +6 -0
  218. data/public/javascripts/specs/components/input_spec.js +71 -0
  219. data/public/javascripts/specs/components/panel_spec.js +6 -0
  220. data/public/javascripts/specs/components/radio_spec.js +40 -0
  221. data/public/javascripts/specs/fixtures/components/box.js +3 -0
  222. data/public/javascripts/specs/fixtures/components/checkbox.js +9 -0
  223. data/public/javascripts/specs/fixtures/components/container.js +3 -0
  224. data/public/javascripts/specs/fixtures/components/input.js +12 -0
  225. data/public/javascripts/specs/fixtures/components/menu.js +19 -0
  226. data/public/javascripts/specs/fixtures/components/menu_item.js +18 -0
  227. data/public/javascripts/specs/fixtures/components/radio.js +11 -0
  228. data/public/javascripts/specs/lib/application_spec.js +281 -0
  229. data/public/javascripts/specs/lib/attr_spec.js +1514 -0
  230. data/public/javascripts/specs/lib/benchmark_spec.js +361 -0
  231. data/public/javascripts/specs/lib/collection_entity_spec.js +131 -0
  232. data/public/javascripts/specs/lib/component_spec.js +86 -0
  233. data/public/javascripts/specs/lib/form_spec.js +171 -0
  234. data/public/javascripts/specs/lib/id_spec.js +21 -0
  235. data/public/javascripts/specs/lib/instrumenter_spec.js +5 -0
  236. data/public/javascripts/specs/lib/js_template_spec.js +131 -0
  237. data/public/javascripts/specs/lib/key_map_spec.js +227 -0
  238. data/public/javascripts/specs/lib/model_spec.js +2268 -0
  239. data/public/javascripts/specs/lib/parameters_spec.js +94 -0
  240. data/public/javascripts/specs/lib/spec_spec.js +943 -0
  241. data/public/javascripts/specs/lib/undo_spec.js +105 -0
  242. data/public/javascripts/specs/lib/yaml_spec.js +127 -0
  243. data/public/sounds/basso.wav +0 -0
  244. data/public/sounds/purr.wav +0 -0
  245. data/public/stylesheets/components/accordion.css +24 -0
  246. data/public/stylesheets/components/alert_box.css +35 -0
  247. data/public/stylesheets/components/box.css +0 -0
  248. data/public/stylesheets/components/button.css +39 -0
  249. data/public/stylesheets/components/checkbox.css +9 -0
  250. data/public/stylesheets/components/container.css +3 -0
  251. data/public/stylesheets/components/grid_view.css +52 -0
  252. data/public/stylesheets/components/input.css +10 -0
  253. data/public/stylesheets/components/label.css +3 -0
  254. data/public/stylesheets/components/lightbox.css +31 -0
  255. data/public/stylesheets/components/link.css +4 -0
  256. data/public/stylesheets/components/list_view.css +23 -0
  257. data/public/stylesheets/components/marquee.css +29 -0
  258. data/public/stylesheets/components/menu.css +34 -0
  259. data/public/stylesheets/components/notification.css +52 -0
  260. data/public/stylesheets/components/overlay.css +8 -0
  261. data/public/stylesheets/components/panel.css +36 -0
  262. data/public/stylesheets/components/radio.css +9 -0
  263. data/public/stylesheets/components/splitter.css +35 -0
  264. data/public/stylesheets/components/tab_bar.css +59 -0
  265. data/public/stylesheets/components/tab_panel.css +15 -0
  266. data/public/stylesheets/components/textarea.css +11 -0
  267. data/public/stylesheets/components/tooltip.css +10 -0
  268. data/public/stylesheets/console.css +151 -0
  269. data/public/stylesheets/css_reset.css +55 -0
  270. metadata +343 -0
@@ -0,0 +1,308 @@
1
+ <html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"> <style>
2
+ .KEYW {color: #933;}
3
+ .COMM {color: #bbb; font-style: italic;}
4
+ .NUMB {color: #393;}
5
+ .STRN {color: #393;}
6
+ .REGX {color: #339;}
7
+ .line {border-right: 1px dotted #666; color: #666; font-style: normal;}
8
+ </style></head><body><pre><span class='line'> 1</span> <span class="COMM">/**
9
+ <span class='line'> 2</span> iiii jjjj
10
+ <span class='line'> 3</span> i::::i j::::j
11
+ <span class='line'> 4</span> iiii jjjj
12
+ <span class='line'> 5</span>
13
+ <span class='line'> 6</span> rrrrr rrrrrrrrr iiiiiii ooooooooooo jjjjjjj ssssssssss
14
+ <span class='line'> 7</span> r::::rrr:::::::::r i:::::i oo:::::::::::oo :::::: j:::::j ss::::::::::s
15
+ <span class='line'> 8</span> r:::::::::::::::::r i::::i o:::::::::::::::o :::::: j::::jss:::::::::::::s
16
+ <span class='line'> 9</span> rr::::::rrrrr::::::ri::::i o:::::ooooo:::::o :::::: j::::js::::::ssss:::::s
17
+ <span class='line'> 10</span> r:::::r r:::::ri::::i o::::o o::::o j::::j s:::::s ssssss
18
+ <span class='line'> 11</span> r:::::r rrrrrrri::::i o::::o o::::o j::::j s::::::s
19
+ <span class='line'> 12</span> r:::::r i::::i o::::o o::::o j::::j s::::::s
20
+ <span class='line'> 13</span> r:::::r i::::i o::::o o::::o :::::: j::::jssssss s:::::s
21
+ <span class='line'> 14</span> r:::::r i::::::io:::::ooooo:::::o :::::: j::::js:::::ssss::::::s
22
+ <span class='line'> 15</span> r:::::r i::::::io:::::::::::::::o :::::: j::::js::::::::::::::s
23
+ <span class='line'> 16</span> r:::::r i::::::i oo:::::::::::oo j::::j s:::::::::::ss
24
+ <span class='line'> 17</span> rrrrrrr iiiiiiii ooooooooooo j::::j sssssssssss
25
+ <span class='line'> 18</span> j::::j
26
+ <span class='line'> 19</span> jjjj j::::j
27
+ <span class='line'> 20</span> j::::jj j:::::j
28
+ <span class='line'> 21</span> j::::::jjj::::::j
29
+ <span class='line'> 22</span> jj::::::::::::j
30
+ <span class='line'> 23</span> jjj::::::jjj
31
+ <span class='line'> 24</span> jjjjjj
32
+ <span class='line'> 25</span>
33
+ <span class='line'> 26</span>
34
+ <span class='line'> 27</span> @name rio
35
+ <span class='line'> 28</span> @namespace
36
+ <span class='line'> 29</span>
37
+ <span class='line'> 30</span> The rio namespace is the root of the entire framework, through which you can access all of the classes and
38
+ <span class='line'> 31</span> namespaces.
39
+ <span class='line'> 32</span>
40
+ <span class='line'> 33</span> &lt;br />
41
+ <span class='line'> 34</span>
42
+ <span class='line'> 35</span> &lt;h2>Namespaces&lt;/h2>
43
+ <span class='line'> 36</span>
44
+ <span class='line'> 37</span> &lt;ul>
45
+ <span class='line'> 38</span> &lt;li>apps - contains instances of rio.Application&lt;/li>
46
+ <span class='line'> 39</span> &lt;li>components - contains instances of rio.Component&lt;/li>
47
+ <span class='line'> 40</span> &lt;li>models - contains instances of rio.Model&lt;/li>
48
+ <span class='line'> 41</span> &lt;li>pages - contains instances of rio.Page&lt;/li>
49
+ <span class='line'> 42</span> &lt;li>environment - configuration for the current environment&lt;/li>
50
+ <span class='line'> 43</span> &lt;li>environments - configurations varying by environment&lt;/li>
51
+ <span class='line'> 44</span> &lt;li>console - stuff related to the development console&lt;/li>
52
+ <span class='line'> 45</span> &lt;li>boot - configuration related to the application boot process&lt;/li>
53
+ <span class='line'> 46</span> &lt;/ul>
54
+ <span class='line'> 47</span>
55
+ <span class='line'> 48</span> &lt;h2>Classes&lt;/h2>
56
+ <span class='line'> 49</span>
57
+ <span class='line'> 50</span> &lt;ul>
58
+ <span class='line'> 51</span> &lt;li>AIM - manages AJAX file uploads&lt;/li>
59
+ <span class='line'> 52</span> &lt;li>Application - root of application instances&lt;/li>
60
+ <span class='line'> 53</span> &lt;li>Attr - root of most rio classes (Application, Component, Model, Page)&lt;/li>
61
+ <span class='line'> 54</span> &lt;li>Binding - represents a bindable attribute&lt;/li>
62
+ <span class='line'> 55</span> &lt;li>Tag - a collection of methods for building HTML tags&lt;/li>
63
+ <span class='line'> 56</span> &lt;li>Utils - a collection of random helper methods&lt;/li>
64
+ <span class='line'> 57</span> &lt;/ul>
65
+ <span class='line'> 58</span>
66
+ <span class='line'> 59</span> &lt;h2>Methods&lt;/h2>
67
+ <span class='line'> 60</span> &lt;ul>
68
+ <span class='line'> 61</span> &lt;li>log - adds a log message to the rio console&lt;/li>
69
+ <span class='line'> 62</span> &lt;/ul>
70
+ <span class='line'> 63</span>
71
+ <span class='line'> 64</span> &lt;h2>Fields&lt;/h2>
72
+ <span class='line'> 65</span> &lt;ul>
73
+ <span class='line'> 66</span> &lt;li>app - the currently running application instance&lt;/li>
74
+ <span class='line'> 67</span> &lt;/ul>
75
+ <span class='line'> 68</span>
76
+ <span class='line'> 69</span> @author Jason Tillery
77
+ <span class='line'> 70</span> @copyright 2008-2009 Thinklink LLC
78
+ <span class='line'> 71</span> */</span><span class="WHIT">
79
+ <span class='line'> 72</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">w</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">window</span><span class="PUNC">;</span><span class="WHIT">
80
+ <span class='line'> 73</span> </span><span class="PUNC">(</span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
81
+ <span class='line'> 74</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">window.console</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT"> </span><span class="NAME">window.console</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT"> </span><span class="NAME">log</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">Prototype.emptyFunction</span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
82
+ <span class='line'> 75</span>
83
+ <span class='line'> 76</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">initialWindowKeys</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Object.keys</span><span class="PUNC">(</span><span class="NAME">window</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
84
+ <span class='line'> 77</span>
85
+ <span class='line'> 78</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">bootOptions</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">window.bootOptions</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
86
+ <span class='line'> 79</span>
87
+ <span class='line'> 80</span> </span><span class="NAME">Object.extend</span><span class="PUNC">(</span><span class="NAME">rio</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
88
+ <span class='line'> 81</span> </span><span class="NAME">url</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">url</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
89
+ <span class='line'> 82</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">url</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">"?"</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">rio.cacheKey</span><span class="PUNC">;</span><span class="WHIT">
90
+ <span class='line'> 83</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
91
+ <span class='line'> 84</span> </span><span class="NAME">components</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
92
+ <span class='line'> 85</span> </span><span class="NAME">models</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
93
+ <span class='line'> 86</span> </span><span class="NAME">apps</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
94
+ <span class='line'> 87</span> </span><span class="NAME">pages</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
95
+ <span class='line'> 88</span> </span><span class="NAME">console</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
96
+ <span class='line'> 89</span> </span><span class="NAME">log</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">Prototype.emptyFunction</span><span class="PUNC">,</span><span class="WHIT">
97
+ <span class='line'> 90</span> </span><span class="NAME">warn</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">Prototype.emptyFunction</span><span class="PUNC">,</span><span class="WHIT">
98
+ <span class='line'> 91</span> </span><span class="NAME">error</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">Prototype.emptyFunction</span><span class="PUNC">,</span><span class="WHIT">
99
+ <span class='line'> 92</span> </span><span class="NAME">boot</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
100
+ <span class='line'> 93</span> </span><span class="NAME">errors</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="PUNC">]</span><span class="PUNC">,</span><span class="WHIT">
101
+ <span class='line'> 94</span> </span><span class="NAME">isMac</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">navigator.appVersion.toLowerCase</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">indexOf</span><span class="PUNC">(</span><span class="STRN">"mac"</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">!=</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="NUMB">1</span><span class="PUNC">,</span><span class="WHIT">
102
+ <span class='line'> 95</span> </span><span class="NAME">root</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">"/javascripts/"</span><span class="PUNC">,</span><span class="WHIT">
103
+ <span class='line'> 96</span> </span><span class="NAME">appRoot</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">bootOptions.appRoot</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="STRN">""</span><span class="PUNC">,</span><span class="WHIT">
104
+ <span class='line'> 97</span> </span><span class="NAME">rioPath</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">bootOptions.rioPath</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="STRN">"lib/"</span><span class="PUNC">,</span><span class="WHIT">
105
+ <span class='line'> 98</span> </span><span class="NAME">prototypePath</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">bootOptions.prototypePath</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="STRN">"prototype/"</span><span class="PUNC">,</span><span class="WHIT">
106
+ <span class='line'> 99</span> </span><span class="NAME">prototypePollution</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="WHIT">
107
+ <span class='line'>100</span> </span><span class="STRN">"$"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"$$"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"$A"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"$F"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"$H"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"$R"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"$break"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"$continue"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"$w"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"_eventID"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"Abstract"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"Ajax"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"Autocompleter"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"Builder"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"Class"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"Draggable"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"Draggables"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"Droppables"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"Effect"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"Element"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"Enumerable"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"Field"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"Form"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"Hash"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"Insertion"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"ObjectRange"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"PeriodicalExecuter"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"Position"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"Prototype"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"Selector"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"Sortable"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"SortableObserver"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"Template"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"Toggle"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"Try"</span><span class="WHIT">
108
+ <span class='line'>101</span> </span><span class="PUNC">]</span><span class="PUNC">,</span><span class="WHIT">
109
+ <span class='line'>102</span> </span><span class="NAME">googleAnalyticsPollution</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="STRN">"gaGlobal"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"gaJsHost"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"_gat"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"pageTracker"</span><span class="PUNC">]</span><span class="PUNC">,</span><span class="WHIT">
110
+ <span class='line'>103</span> </span><span class="NAME">noConsole</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">bootOptions.noConsole</span><span class="PUNC">,</span><span class="WHIT">
111
+ <span class='line'>104</span> </span><span class="NAME">initialWindowKeys</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">initialWindowKeys</span><span class="PUNC">,</span><span class="WHIT">
112
+ <span class='line'>105</span> </span><span class="NAME">prototypeScripts</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="PUNC">]</span><span class="PUNC">,</span><span class="WHIT">
113
+ <span class='line'>106</span> </span><span class="NAME">rioScripts</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="PUNC">]</span><span class="PUNC">,</span><span class="WHIT">
114
+ <span class='line'>107</span> </span><span class="NAME">rioScriptsDigest</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
115
+ <span class='line'>108</span> </span><span class="NAME">appScriptsDigest</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
116
+ <span class='line'>109</span> </span><span class="NAME">prototypeScriptsDigest</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
117
+ <span class='line'>110</span> </span><span class="NAME">loadedFiles</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="PUNC">]</span><span class="PUNC">,</span><span class="WHIT">
118
+ <span class='line'>111</span> </span><span class="NAME">loadedStylesheets</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="PUNC">]</span><span class="PUNC">,</span><span class="WHIT">
119
+ <span class='line'>112</span> </span><span class="NAME">loadedTemplates</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="PUNC">]</span><span class="PUNC">,</span><span class="WHIT">
120
+ <span class='line'>113</span> </span><span class="NAME">loadFunctions</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
121
+ <span class='line'>114</span>
122
+ <span class='line'>115</span> </span><span class="NAME">appScripts</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
123
+ <span class='line'>116</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">rio.boot.loadedFiles.reject</span><span class="PUNC">(</span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">f</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
124
+ <span class='line'>117</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">rio.boot.prototypeScripts.include</span><span class="PUNC">(</span><span class="NAME">f</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">rio.boot.rioScripts.include</span><span class="PUNC">(</span><span class="NAME">f</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
125
+ <span class='line'>118</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
126
+ <span class='line'>119</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
127
+ <span class='line'>120</span>
128
+ <span class='line'>121</span> </span><span class="NAME">pollution</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
129
+ <span class='line'>122</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">Object.keys</span><span class="PUNC">(</span><span class="NAME">window</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">reject</span><span class="PUNC">(</span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">key</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
130
+ <span class='line'>123</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">rio.boot.initialWindowKeys.include</span><span class="PUNC">(</span><span class="NAME">key</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT">
131
+ <span class='line'>124</span> </span><span class="NAME">rio.boot.prototypePollution.include</span><span class="PUNC">(</span><span class="NAME">key</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT">
132
+ <span class='line'>125</span> </span><span class="NAME">rio.boot.googleAnalyticsPollution.include</span><span class="PUNC">(</span><span class="NAME">key</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
133
+ <span class='line'>126</span> </span><span class="PUNC">}</span><span class="PUNC">.</span><span class="NAME">bind</span><span class="PUNC">(</span><span class="KEYW">this</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
134
+ <span class='line'>127</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
135
+ <span class='line'>128</span>
136
+ <span class='line'>129</span> </span><span class="NAME">failBoot</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
137
+ <span class='line'>130</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">rio.environment.bootFailedUrl</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
138
+ <span class='line'>131</span> </span><span class="NAME">document.location.href</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">rio.environment.bootFailedUrl</span><span class="PUNC">;</span><span class="WHIT">
139
+ <span class='line'>132</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
140
+ <span class='line'>133</span> </span><span class="NAME">rio.boot.printErrors</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
141
+ <span class='line'>134</span> </span><span class="PUNC">}</span><span class="WHIT">
142
+ <span class='line'>135</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
143
+ <span class='line'>136</span>
144
+ <span class='line'>137</span> </span><span class="NAME">printErrors</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
145
+ <span class='line'>138</span> </span><span class="NAME">$$</span><span class="PUNC">(</span><span class="STRN">"body"</span><span class="PUNC">)</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">update</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
146
+ <span class='line'>139</span>
147
+ <span class='line'>140</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">msg</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="STRN">"&lt;h1 style='font-size: 24px; color: #670800;'>Boot failed&lt;/h1>"</span><span class="PUNC">;</span><span class="WHIT">
148
+ <span class='line'>141</span> </span><span class="NAME">msg</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="PUNC">=</span><span class="WHIT"> </span><span class="STRN">"&lt;style>.errorLine{font-size:16px; padding:0px 2px; background-color:yellow}&lt;/style>"</span><span class="PUNC">;</span><span class="WHIT">
149
+ <span class='line'>142</span>
150
+ <span class='line'>143</span> </span><span class="NAME">rio.boot.errors.each</span><span class="PUNC">(</span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">e</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
151
+ <span class='line'>144</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">e.e</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
152
+ <span class='line'>145</span> </span><span class="NAME">msg</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="PUNC">=</span><span class="WHIT"> </span><span class="STRN">"&lt;br />&lt;br />"</span><span class="PUNC">;</span><span class="WHIT">
153
+ <span class='line'>146</span> </span><span class="NAME">msg</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="PUNC">=</span><span class="WHIT"> </span><span class="STRN">"&lt;p style='font-weight: 700'>"</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">e.msg</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">"&lt;br />&lt;br />"</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">e.e</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">"&lt;/p>"</span><span class="PUNC">;</span><span class="WHIT">
154
+ <span class='line'>147</span> </span><span class="NAME">msg</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="PUNC">=</span><span class="WHIT"> </span><span class="STRN">"&lt;br />"</span><span class="PUNC">;</span><span class="WHIT">
155
+ <span class='line'>148</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">e.lint</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
156
+ <span class='line'>149</span> </span><span class="NAME">e.lint.each</span><span class="PUNC">(</span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">err</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
157
+ <span class='line'>150</span> </span><span class="NAME">msg</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">err.toHtml</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">"&lt;br />"</span><span class="PUNC">;</span><span class="WHIT">
158
+ <span class='line'>151</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
159
+ <span class='line'>152</span> </span><span class="PUNC">}</span><span class="WHIT">
160
+ <span class='line'>153</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
161
+ <span class='line'>154</span>
162
+ <span class='line'>155</span> </span><span class="NAME">$$</span><span class="PUNC">(</span><span class="STRN">"body"</span><span class="PUNC">)</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">insert</span><span class="PUNC">(</span><span class="STRN">"&lt;div style='padding: 20px'>"</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">msg</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">"&lt;/div>"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
163
+ <span class='line'>156</span> </span><span class="PUNC">}</span><span class="WHIT">
164
+ <span class='line'>157</span> </span><span class="PUNC">}</span><span class="WHIT">
165
+ <span class='line'>158</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
166
+ <span class='line'>159</span>
167
+ <span class='line'>160</span> </span><span class="NAME">$$</span><span class="PUNC">(</span><span class="STRN">"script"</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">each</span><span class="PUNC">(</span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">script</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
168
+ <span class='line'>161</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">src</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">script.src</span><span class="PUNC">;</span><span class="WHIT">
169
+ <span class='line'>162</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">src.match</span><span class="PUNC">(</span><span class="REGX">/boot\.js/</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">src.indexOf</span><span class="PUNC">(</span><span class="STRN">'?'</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">!=</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="NUMB">1</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
170
+ <span class='line'>163</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">options</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">src.split</span><span class="PUNC">(</span><span class="STRN">'?'</span><span class="PUNC">)</span><span class="PUNC">[</span><span class="NUMB">1</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">split</span><span class="PUNC">(</span><span class="STRN">','</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
171
+ <span class='line'>164</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">options.length</span><span class="WHIT"> </span><span class="PUNC">>=</span><span class="WHIT"> </span><span class="NUMB">1</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT"> </span><span class="NAME">rio.boot.appName</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">options</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
172
+ <span class='line'>165</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">options.length</span><span class="WHIT"> </span><span class="PUNC">>=</span><span class="WHIT"> </span><span class="NUMB">2</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT"> </span><span class="NAME">rio.boot.environment</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">options</span><span class="PUNC">[</span><span class="NUMB">1</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
173
+ <span class='line'>166</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">options.length</span><span class="WHIT"> </span><span class="PUNC">>=</span><span class="WHIT"> </span><span class="NUMB">3</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT"> </span><span class="NAME">rio.boot.bootCompressed</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">options</span><span class="PUNC">[</span><span class="NUMB">2</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">"compressed"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
174
+ <span class='line'>167</span> </span><span class="PUNC">}</span><span class="WHIT">
175
+ <span class='line'>168</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
176
+ <span class='line'>169</span>
177
+ <span class='line'>170</span> </span><span class="NAME">Object.extend</span><span class="PUNC">(</span><span class="NAME">rio.environment</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">rio.environments</span><span class="PUNC">[</span><span class="NAME">rio.boot.environment</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
178
+ <span class='line'>171</span> </span><span class="NAME">Object.extend</span><span class="PUNC">(</span><span class="NAME">rio.boot</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">rio.environment.boot</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
179
+ <span class='line'>172</span>
180
+ <span class='line'>173</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">bootOptions.noConsole</span><span class="WHIT"> </span><span class="PUNC">===</span><span class="WHIT"> </span><span class="NAME">undefined</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
181
+ <span class='line'>174</span> </span><span class="NAME">rio.boot.noConsole</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">rio.environment.console</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NAME">undefined</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="PUNC">!</span><span class="NAME">rio.environment.console</span><span class="PUNC">;</span><span class="WHIT">
182
+ <span class='line'>175</span> </span><span class="PUNC">}</span><span class="WHIT">
183
+ <span class='line'>176</span>
184
+ <span class='line'>177</span> </span><span class="NAME">rio.require</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">fileName</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">options</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
185
+ <span class='line'>178</span> </span><span class="NAME">options</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Object.extend</span><span class="PUNC">(</span><span class="PUNC">{</span><span class="WHIT">
186
+ <span class='line'>179</span> </span><span class="NAME">force</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">,</span><span class="WHIT">
187
+ <span class='line'>180</span> </span><span class="NAME">track</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="WHIT">
188
+ <span class='line'>181</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">options</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
189
+ <span class='line'>182</span>
190
+ <span class='line'>183</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">rio.boot.loadedFiles.include</span><span class="PUNC">(</span><span class="NAME">fileName</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
191
+ <span class='line'>184</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">rio.boot.bootCompressed</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">options.force</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
192
+ <span class='line'>185</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">options.track</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT"> </span><span class="NAME">rio.boot.loadedFiles.push</span><span class="PUNC">(</span><span class="NAME">fileName</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
193
+ <span class='line'>186</span> </span><span class="NAME">document.write</span><span class="PUNC">(</span><span class="STRN">'&lt;script type="text/javascript" src="'</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">options.noPrefix</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="STRN">""</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">rio.assetPrefix</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">rio.url</span><span class="PUNC">(</span><span class="NAME">rio.boot.root</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">fileName</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">'.js'</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">'">&lt;/script>'</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
194
+ <span class='line'>187</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">rio.boot.bootCompressed</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
195
+ <span class='line'>188</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">rio.boot.loadFunctions</span><span class="PUNC">[</span><span class="NAME">fileName</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
196
+ <span class='line'>189</span> </span><span class="NAME">rio.boot.loadFunctions</span><span class="PUNC">[</span><span class="NAME">fileName</span><span class="PUNC">]</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
197
+ <span class='line'>190</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
198
+ <span class='line'>191</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">path</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">rio.boot.root</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">fileName</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">".js"</span><span class="PUNC">;</span><span class="WHIT">
199
+ <span class='line'>192</span> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">Ajax.Request</span><span class="PUNC">(</span><span class="NAME">rio.url</span><span class="PUNC">(</span><span class="NAME">path</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
200
+ <span class='line'>193</span> </span><span class="NAME">asynchronous</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">,</span><span class="WHIT">
201
+ <span class='line'>194</span> </span><span class="NAME">method</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">"get"</span><span class="PUNC">,</span><span class="WHIT">
202
+ <span class='line'>195</span> </span><span class="NAME">evalJSON</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">,</span><span class="WHIT">
203
+ <span class='line'>196</span> </span><span class="NAME">evalJS</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">,</span><span class="WHIT">
204
+ <span class='line'>197</span> </span><span class="NAME">onSuccess</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">response</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
205
+ <span class='line'>198</span> </span><span class="KEYW">try</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
206
+ <span class='line'>199</span> </span><span class="NAME">w.eval</span><span class="PUNC">(</span><span class="NAME">response.responseText</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
207
+ <span class='line'>200</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">catch</span><span class="PUNC">(</span><span class="NAME">e</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
208
+ <span class='line'>201</span> </span><span class="NAME">rio.error</span><span class="PUNC">(</span><span class="NAME">e</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"Failed parsing file: "</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">path</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
209
+ <span class='line'>202</span>
210
+ <span class='line'>203</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">rio.app</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
211
+ <span class='line'>204</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">fileName</span><span class="WHIT"> </span><span class="PUNC">!=</span><span class="WHIT"> </span><span class="STRN">"lib/rio_lint"</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
212
+ <span class='line'>205</span> </span><span class="NAME">rio.require</span><span class="PUNC">(</span><span class="STRN">"lib/rio_lint"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT"> </span><span class="NAME">track</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
213
+ <span class='line'>206</span> </span><span class="PUNC">}</span><span class="WHIT">
214
+ <span class='line'>207</span>
215
+ <span class='line'>208</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">lintIt</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">fileName</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
216
+ <span class='line'>209</span> </span><span class="NAME">rio.RioLint.checkFileSyntax</span><span class="PUNC">(</span><span class="NAME">fileName</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
217
+ <span class='line'>210</span> </span><span class="NAME">onComplete</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">errors</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
218
+ <span class='line'>211</span> </span><span class="NAME">rio.boot.errors.push</span><span class="PUNC">(</span><span class="PUNC">{</span><span class="WHIT"> </span><span class="NAME">lint</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">errors</span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
219
+ <span class='line'>212</span> </span><span class="PUNC">}</span><span class="WHIT">
220
+ <span class='line'>213</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
221
+ <span class='line'>214</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
222
+ <span class='line'>215</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">fileName</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">"lib/rio_concat"</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
223
+ <span class='line'>216</span> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">Ajax.Request</span><span class="PUNC">(</span><span class="NAME">rio.url</span><span class="PUNC">(</span><span class="STRN">"/javascripts/lib/rio.build"</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
224
+ <span class='line'>217</span> </span><span class="NAME">asynchronous</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">,</span><span class="WHIT">
225
+ <span class='line'>218</span> </span><span class="NAME">method</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">"get"</span><span class="PUNC">,</span><span class="WHIT">
226
+ <span class='line'>219</span> </span><span class="NAME">evalJSON</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">,</span><span class="WHIT">
227
+ <span class='line'>220</span> </span><span class="NAME">evalJS</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">,</span><span class="WHIT">
228
+ <span class='line'>221</span> </span><span class="NAME">onSuccess</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">response</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
229
+ <span class='line'>222</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">files</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">response.responseText.split</span><span class="PUNC">(</span><span class="STRN">"\n"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
230
+ <span class='line'>223</span> </span><span class="NAME">files.without</span><span class="PUNC">(</span><span class="STRN">"lib/swfobject"</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">each</span><span class="PUNC">(</span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">f</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
231
+ <span class='line'>224</span> </span><span class="NAME">lintIt</span><span class="PUNC">(</span><span class="NAME">f</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
232
+ <span class='line'>225</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
233
+ <span class='line'>226</span> </span><span class="PUNC">}</span><span class="WHIT">
234
+ <span class='line'>227</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
235
+ <span class='line'>228</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">fileName</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">"apps/"</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">rio.boot.appName</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">"_concat"</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
236
+ <span class='line'>229</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
237
+ <span class='line'>230</span> </span><span class="NAME">rio.boot.errors.push</span><span class="PUNC">(</span><span class="PUNC">{</span><span class="WHIT"> </span><span class="NAME">e</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">e</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">msg</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">"Failed parsing file: "</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">path</span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
238
+ <span class='line'>231</span> </span><span class="NAME">lintIt</span><span class="PUNC">(</span><span class="NAME">fileName</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
239
+ <span class='line'>232</span> </span><span class="PUNC">}</span><span class="WHIT">
240
+ <span class='line'>233</span>
241
+ <span class='line'>234</span> </span><span class="PUNC">}</span><span class="WHIT">
242
+ <span class='line'>235</span> </span><span class="KEYW">throw</span><span class="PUNC">(</span><span class="NAME">e</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
243
+ <span class='line'>236</span> </span><span class="PUNC">}</span><span class="WHIT">
244
+ <span class='line'>237</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
245
+ <span class='line'>238</span> </span><span class="NAME">onFailure</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
246
+ <span class='line'>239</span> </span><span class="NAME">rio.log</span><span class="PUNC">(</span><span class="STRN">"Failed loading file: "</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">path</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
247
+ <span class='line'>240</span> </span><span class="PUNC">}</span><span class="WHIT">
248
+ <span class='line'>241</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
249
+ <span class='line'>242</span> </span><span class="PUNC">}</span><span class="WHIT">
250
+ <span class='line'>243</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">options.track</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT"> </span><span class="NAME">rio.boot.loadedFiles.push</span><span class="PUNC">(</span><span class="NAME">fileName</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
251
+ <span class='line'>244</span> </span><span class="PUNC">}</span><span class="WHIT">
252
+ <span class='line'>245</span> </span><span class="PUNC">}</span><span class="WHIT">
253
+ <span class='line'>246</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
254
+ <span class='line'>247</span>
255
+ <span class='line'>248</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">rio.boot.bootCompressed</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
256
+ <span class='line'>249</span> </span><span class="COMM">// rio.require(rio.boot.appRoot + "prototype/compressed/prototype", { force: true });</span><span class="WHIT">
257
+ <span class='line'>250</span> </span><span class="NAME">rio.require</span><span class="PUNC">(</span><span class="NAME">rio.boot.rioPath</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">"compressed/rio"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT"> </span><span class="NAME">force</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
258
+ <span class='line'>251</span> </span><span class="NAME">rio.require</span><span class="PUNC">(</span><span class="NAME">rio.boot.appRoot</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">"apps/compressed/"</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">rio.boot.appName</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT"> </span><span class="NAME">force</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
259
+ <span class='line'>252</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">rio.boot.environment</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">"development"</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
260
+ <span class='line'>253</span> </span><span class="NAME">rio.require</span><span class="PUNC">(</span><span class="NAME">rio.boot.rioPath</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">"rio_development_concat"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT"> </span><span class="NAME">force</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
261
+ <span class='line'>254</span> </span><span class="PUNC">}</span><span class="WHIT">
262
+ <span class='line'>255</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
263
+ <span class='line'>256</span> </span><span class="KEYW">try</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
264
+ <span class='line'>257</span> </span><span class="NAME">rio.require</span><span class="PUNC">(</span><span class="NAME">rio.boot.appRoot</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">"prototype/prototype_concat"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT"> </span><span class="NAME">track</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
265
+ <span class='line'>258</span> </span><span class="NAME">rio.require</span><span class="PUNC">(</span><span class="NAME">rio.boot.rioPath</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">"rio_concat"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT"> </span><span class="NAME">track</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
266
+ <span class='line'>259</span> </span><span class="NAME">rio.require</span><span class="PUNC">(</span><span class="NAME">rio.boot.appRoot</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">"apps/"</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">rio.boot.appName</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">"_concat"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT"> </span><span class="NAME">track</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
267
+ <span class='line'>260</span> </span><span class="NAME">rio.require</span><span class="PUNC">(</span><span class="NAME">rio.boot.appRoot</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">"apps/"</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">rio.boot.appName</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
268
+ <span class='line'>261</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">catch</span><span class="PUNC">(</span><span class="NAME">e</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
269
+ <span class='line'>262</span> </span><span class="COMM">// Let the errors print on load</span><span class="WHIT">
270
+ <span class='line'>263</span> </span><span class="PUNC">}</span><span class="WHIT">
271
+ <span class='line'>264</span> </span><span class="PUNC">}</span><span class="WHIT">
272
+ <span class='line'>265</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">rio.environment.autoConcatCss</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
273
+ <span class='line'>266</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">rio.boot.bootCompressed</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
274
+ <span class='line'>267</span> </span><span class="NAME">document.write</span><span class="PUNC">(</span><span class="STRN">'&lt;script type="text/javascript">'</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">'rio.Application.injectCss();'</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">'&lt;/script>'</span><span class="PUNC">)</span><span class="WHIT">
275
+ <span class='line'>268</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
276
+ <span class='line'>269</span> </span><span class="NAME">rio.Application.injectCss</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
277
+ <span class='line'>270</span> </span><span class="PUNC">}</span><span class="WHIT">
278
+ <span class='line'>271</span> </span><span class="PUNC">}</span><span class="WHIT">
279
+ <span class='line'>272</span>
280
+ <span class='line'>273</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">rio.environment.supportSelenium</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
281
+ <span class='line'>274</span> </span><span class="NAME">rio.require</span><span class="PUNC">(</span><span class="NAME">rio.boot.rioPath</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">"event.simulate"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT"> </span><span class="NAME">force</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">noPrefix</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
282
+ <span class='line'>275</span> </span><span class="NAME">rio.require</span><span class="PUNC">(</span><span class="NAME">rio.boot.rioPath</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">"selenium_extensions"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT"> </span><span class="NAME">force</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">noPrefix</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
283
+ <span class='line'>276</span> </span><span class="PUNC">}</span><span class="WHIT">
284
+ <span class='line'>277</span>
285
+ <span class='line'>278</span> </span><span class="NAME">document.observe</span><span class="PUNC">(</span><span class="STRN">'dom:loaded'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
286
+ <span class='line'>279</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">rio.environment.push</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="PUNC">!</span><span class="NAME">rio.push</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
287
+ <span class='line'>280</span> </span><span class="NAME">rio.Push.boot</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
288
+ <span class='line'>281</span> </span><span class="PUNC">}</span><span class="WHIT">
289
+ <span class='line'>282</span>
290
+ <span class='line'>283</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">rio.preloadTemplates</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
291
+ <span class='line'>284</span> </span><span class="NAME">rio.JsTemplate.preload</span><span class="PUNC">(</span><span class="STRN">"apps/"</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">rio.boot.bootCompressed</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="STRN">"compressed/"</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">rio.boot.appName</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">rio.boot.appName</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">"_concat"</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
292
+ <span class='line'>285</span> </span><span class="PUNC">}</span><span class="WHIT">
293
+ <span class='line'>286</span>
294
+ <span class='line'>287</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">rio.environment.failOnBootError</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">rio.boot.errors.length</span><span class="WHIT"> </span><span class="PUNC">></span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
295
+ <span class='line'>288</span> </span><span class="NAME">rio.boot.failBoot</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
296
+ <span class='line'>289</span> </span><span class="KEYW">return</span><span class="PUNC">;</span><span class="WHIT">
297
+ <span class='line'>290</span> </span><span class="PUNC">}</span><span class="WHIT">
298
+ <span class='line'>291</span> </span><span class="KEYW">try</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
299
+ <span class='line'>292</span> </span><span class="NAME">window.initialOptions</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">window.initialOptions</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
300
+ <span class='line'>293</span> </span><span class="NAME">rio.app</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">rio.apps</span><span class="PUNC">[</span><span class="NAME">rio.boot.appName.camelize</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">]</span><span class="PUNC">(</span><span class="NAME">initialOptions</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
301
+ <span class='line'>294</span> </span><span class="NAME">rio.app.launch</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
302
+ <span class='line'>295</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">catch</span><span class="PUNC">(</span><span class="NAME">e</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
303
+ <span class='line'>296</span> </span><span class="NAME">rio.boot.errors.push</span><span class="PUNC">(</span><span class="PUNC">{</span><span class="WHIT"> </span><span class="NAME">e</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">e</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">msg</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">"Failed inititializing or launching application"</span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
304
+ <span class='line'>297</span> </span><span class="NAME">rio.boot.failBoot</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
305
+ <span class='line'>298</span> </span><span class="PUNC">}</span><span class="WHIT">
306
+ <span class='line'>299</span> </span><span class="PUNC">}</span><span class="PUNC">.</span><span class="NAME">bind</span><span class="PUNC">(</span><span class="KEYW">this</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
307
+ <span class='line'>300</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
308
+ <span class='line'>301</span> </span></pre></body></html>
@@ -0,0 +1,103 @@
1
+ <html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"> <style>
2
+ .KEYW {color: #933;}
3
+ .COMM {color: #bbb; font-style: italic;}
4
+ .NUMB {color: #393;}
5
+ .STRN {color: #393;}
6
+ .REGX {color: #339;}
7
+ .line {border-right: 1px dotted #666; color: #666; font-style: normal;}
8
+ </style></head><body><pre><span class='line'> 1</span> <span class="NAME">rio.Clipboard</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
9
+ <span class='line'> 2</span> </span><span class="COMM">/*
10
+ <span class='line'> 3</span> Only call copy on the platform specific keydown event scenario.
11
+ <span class='line'> 4</span>
12
+ <span class='line'> 5</span> Mac: CMD + c
13
+ <span class='line'> 6</span> Win: CTRL + c
14
+ <span class='line'> 7</span> */</span><span class="WHIT">
15
+ <span class='line'> 8</span> </span><span class="NAME">copy</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">val</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">afterCopy</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
16
+ <span class='line'> 9</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">Prototype.Browser.WebKit</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
17
+ <span class='line'> 10</span> </span><span class="NAME">this.copyToClipboardForWebKit</span><span class="PUNC">(</span><span class="NAME">val</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
18
+ <span class='line'> 11</span> </span><span class="NAME">afterCopy.defer</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
19
+ <span class='line'> 12</span> </span><span class="KEYW">return</span><span class="PUNC">;</span><span class="WHIT">
20
+ <span class='line'> 13</span> </span><span class="PUNC">}</span><span class="WHIT">
21
+ <span class='line'> 14</span>
22
+ <span class='line'> 15</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">clipboard</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.html</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
23
+ <span class='line'> 16</span>
24
+ <span class='line'> 17</span> </span><span class="NAME">clipboard.value</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">val</span><span class="PUNC">;</span><span class="WHIT">
25
+ <span class='line'> 18</span> </span><span class="NAME">clipboard.setSelectionRange</span><span class="PUNC">(</span><span class="NUMB">0</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">clipboard.value.length</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
26
+ <span class='line'> 19</span> </span><span class="NAME">clipboard.focus</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
27
+ <span class='line'> 20</span>
28
+ <span class='line'> 21</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">keyObserver</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">e</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
29
+ <span class='line'> 22</span> </span><span class="NAME">clipboard.stopObserving</span><span class="PUNC">(</span><span class="STRN">"keyup"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
30
+ <span class='line'> 23</span> </span><span class="NAME">clipboard.stopObserving</span><span class="PUNC">(</span><span class="STRN">"keydown"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
31
+ <span class='line'> 24</span> </span><span class="NAME">clipboard.stopObserving</span><span class="PUNC">(</span><span class="STRN">"keypress"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
32
+ <span class='line'> 25</span>
33
+ <span class='line'> 26</span> </span><span class="NAME">afterCopy.defer</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
34
+ <span class='line'> 27</span> </span><span class="PUNC">}</span><span class="PUNC">.</span><span class="NAME">bindAsEventListener</span><span class="PUNC">(</span><span class="KEYW">this</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
35
+ <span class='line'> 28</span>
36
+ <span class='line'> 29</span> </span><span class="NAME">clipboard.observe</span><span class="PUNC">(</span><span class="STRN">"keyup"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">keyObserver</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
37
+ <span class='line'> 30</span> </span><span class="NAME">clipboard.observe</span><span class="PUNC">(</span><span class="STRN">"keydown"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">keyObserver</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
38
+ <span class='line'> 31</span> </span><span class="NAME">clipboard.observe</span><span class="PUNC">(</span><span class="STRN">"keypress"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">keyObserver</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
39
+ <span class='line'> 32</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
40
+ <span class='line'> 33</span>
41
+ <span class='line'> 34</span> </span><span class="NAME">copyToClipboardForWebKit</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">textToCopy</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
42
+ <span class='line'> 35</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">clipDoc</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.clipboardDoc</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
43
+ <span class='line'> 36</span>
44
+ <span class='line'> 37</span> </span><span class="COMM">// Get the clipboard container (input box) and set its contents</span><span class="WHIT">
45
+ <span class='line'> 38</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">container</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">clipDoc.getElementById</span><span class="PUNC">(</span><span class="STRN">"clipContainer"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
46
+ <span class='line'> 39</span> </span><span class="NAME">container.value</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">textToCopy</span><span class="PUNC">;</span><span class="WHIT">
47
+ <span class='line'> 40</span>
48
+ <span class='line'> 41</span> </span><span class="COMM">// Focus/Select the container containing the text to copy</span><span class="WHIT">
49
+ <span class='line'> 42</span> </span><span class="NAME">container.focus</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
50
+ <span class='line'> 43</span> </span><span class="NAME">container.select</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
51
+ <span class='line'> 44</span>
52
+ <span class='line'> 45</span> </span><span class="NAME">clipDoc.execCommand</span><span class="PUNC">(</span><span class="STRN">"copy"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">""</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
53
+ <span class='line'> 46</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
54
+ <span class='line'> 47</span>
55
+ <span class='line'> 48</span> </span><span class="NAME">clipboardDoc</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
56
+ <span class='line'> 49</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">this._clipFrame</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
57
+ <span class='line'> 50</span> </span><span class="NAME">this._clipFrame</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">rio.Tag.iframe</span><span class="PUNC">(</span><span class="STRN">""</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
58
+ <span class='line'> 51</span> </span><span class="NAME">style</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">"position: absolute; top: -1000px"</span><span class="WHIT">
59
+ <span class='line'> 52</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
60
+ <span class='line'> 53</span> </span><span class="NAME">Element.body</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">insert</span><span class="PUNC">(</span><span class="NAME">this._clipFrame</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
61
+ <span class='line'> 54</span>
62
+ <span class='line'> 55</span> </span><span class="COMM">// Insert an input box and switch it to design mode</span><span class="WHIT">
63
+ <span class='line'> 56</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">clipDoc</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this._clipFrame.contentDocument</span><span class="PUNC">;</span><span class="WHIT">
64
+ <span class='line'> 57</span> </span><span class="NAME">clipDoc.body.innerHTML</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="STRN">"&lt;textarea id='clipContainer'/>"</span><span class="PUNC">;</span><span class="WHIT">
65
+ <span class='line'> 58</span> </span><span class="NAME">clipDoc.designMode</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="STRN">"On"</span><span class="PUNC">;</span><span class="WHIT">
66
+ <span class='line'> 59</span> </span><span class="NAME">clipDoc.body.contentEditable</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
67
+ <span class='line'> 60</span> </span><span class="PUNC">}</span><span class="WHIT">
68
+ <span class='line'> 61</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this._clipFrame.contentDocument</span><span class="PUNC">;</span><span class="WHIT">
69
+ <span class='line'> 62</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
70
+ <span class='line'> 63</span>
71
+ <span class='line'> 64</span> </span><span class="NAME">paste</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">callback</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
72
+ <span class='line'> 65</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">clipboard</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.html</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
73
+ <span class='line'> 66</span>
74
+ <span class='line'> 67</span> </span><span class="NAME">clipboard.value</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="STRN">""</span><span class="PUNC">;</span><span class="WHIT">
75
+ <span class='line'> 68</span> </span><span class="NAME">clipboard.focus</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
76
+ <span class='line'> 69</span>
77
+ <span class='line'> 70</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">keyObserver</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
78
+ <span class='line'> 71</span> </span><span class="NAME">clipboard.stopObserving</span><span class="PUNC">(</span><span class="STRN">"keyup"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
79
+ <span class='line'> 72</span> </span><span class="NAME">clipboard.stopObserving</span><span class="PUNC">(</span><span class="STRN">"keydown"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
80
+ <span class='line'> 73</span> </span><span class="NAME">clipboard.stopObserving</span><span class="PUNC">(</span><span class="STRN">"keypress"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
81
+ <span class='line'> 74</span>
82
+ <span class='line'> 75</span> </span><span class="PUNC">(</span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
83
+ <span class='line'> 76</span> </span><span class="NAME">callback</span><span class="PUNC">(</span><span class="NAME">clipboard.value</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
84
+ <span class='line'> 77</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">defer</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
85
+ <span class='line'> 78</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
86
+ <span class='line'> 79</span>
87
+ <span class='line'> 80</span> </span><span class="NAME">clipboard.observe</span><span class="PUNC">(</span><span class="STRN">"keyup"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">keyObserver</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
88
+ <span class='line'> 81</span> </span><span class="NAME">clipboard.observe</span><span class="PUNC">(</span><span class="STRN">"keydown"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">keyObserver</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
89
+ <span class='line'> 82</span> </span><span class="NAME">clipboard.observe</span><span class="PUNC">(</span><span class="STRN">"keypress"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">keyObserver</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
90
+ <span class='line'> 83</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
91
+ <span class='line'> 84</span>
92
+ <span class='line'> 85</span> </span><span class="NAME">html</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
93
+ <span class='line'> 86</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">this._html</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
94
+ <span class='line'> 87</span> </span><span class="NAME">this._html</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">rio.Tag.textarea</span><span class="PUNC">(</span><span class="STRN">""</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
95
+ <span class='line'> 88</span>
96
+ <span class='line'> 89</span> </span><span class="NAME">Element.body</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">insert</span><span class="PUNC">(</span><span class="NAME">rio.Tag.div</span><span class="PUNC">(</span><span class="NAME">this._html</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
97
+ <span class='line'> 90</span> </span><span class="NAME">style</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">"position: absolute; top: -10px; overflow: hidden; height:1px;"</span><span class="WHIT">
98
+ <span class='line'> 91</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
99
+ <span class='line'> 92</span> </span><span class="PUNC">}</span><span class="WHIT">
100
+ <span class='line'> 93</span>
101
+ <span class='line'> 94</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this._html</span><span class="PUNC">;</span><span class="WHIT">
102
+ <span class='line'> 95</span> </span><span class="PUNC">}</span><span class="WHIT">
103
+ <span class='line'> 96</span> </span><span class="PUNC">}</span><span class="PUNC">;</span></pre></body></html>
@@ -0,0 +1,53 @@
1
+ <html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"> <style>
2
+ .KEYW {color: #933;}
3
+ .COMM {color: #bbb; font-style: italic;}
4
+ .NUMB {color: #393;}
5
+ .STRN {color: #393;}
6
+ .REGX {color: #339;}
7
+ .line {border-right: 1px dotted #666; color: #666; font-style: normal;}
8
+ </style></head><body><pre><span class='line'> 1</span> <span class="NAME">rio.CollectionEntity</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
9
+ <span class='line'> 2</span> </span><span class="NAME">create</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">options</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
10
+ <span class='line'> 3</span> </span><span class="NAME">options</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Object.extend</span><span class="PUNC">(</span><span class="PUNC">{</span><span class="WHIT">
11
+ <span class='line'> 4</span> </span><span class="NAME">values</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="PUNC">]</span><span class="PUNC">,</span><span class="WHIT">
12
+ <span class='line'> 5</span> </span><span class="NAME">condition</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
13
+ <span class='line'> 6</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">options</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
14
+ <span class='line'> 7</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">collectionEntity</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">$A</span><span class="PUNC">(</span><span class="NAME">options.values</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
15
+ <span class='line'> 8</span>
16
+ <span class='line'> 9</span> </span><span class="NAME">collectionEntity.getModel</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
17
+ <span class='line'> 10</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">options.model</span><span class="PUNC">;</span><span class="WHIT">
18
+ <span class='line'> 11</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
19
+ <span class='line'> 12</span>
20
+ <span class='line'> 13</span> </span><span class="NAME">collectionEntity.add</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">val</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
21
+ <span class='line'> 14</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">val.__model</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NAME">this.getModel</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="PUNC">!</span><span class="NAME">this.include</span><span class="PUNC">(</span><span class="NAME">val</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">options.condition</span><span class="PUNC">(</span><span class="NAME">val</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
22
+ <span class='line'> 15</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this.push</span><span class="PUNC">(</span><span class="NAME">val</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
23
+ <span class='line'> 16</span> </span><span class="PUNC">}</span><span class="WHIT">
24
+ <span class='line'> 17</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
25
+ <span class='line'> 18</span>
26
+ <span class='line'> 19</span> </span><span class="NAME">collectionEntity.update</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">val</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
27
+ <span class='line'> 20</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">index</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.indexOf</span><span class="PUNC">(</span><span class="NAME">val</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
28
+ <span class='line'> 21</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">val.__model</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NAME">this.getModel</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">options.condition</span><span class="PUNC">(</span><span class="NAME">val</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
29
+ <span class='line'> 22</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">index</span><span class="WHIT"> </span><span class="PUNC">&lt;</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
30
+ <span class='line'> 23</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">val.__destroying</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
31
+ <span class='line'> 24</span> </span><span class="NAME">this.push</span><span class="PUNC">(</span><span class="NAME">val</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
32
+ <span class='line'> 25</span> </span><span class="PUNC">}</span><span class="WHIT">
33
+ <span class='line'> 26</span> </span><span class="PUNC">}</span><span class="WHIT">
34
+ <span class='line'> 27</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
35
+ <span class='line'> 28</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">index</span><span class="WHIT"> </span><span class="PUNC">>=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
36
+ <span class='line'> 29</span> </span><span class="NAME">this.splice</span><span class="PUNC">(</span><span class="NAME">index</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NUMB">1</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
37
+ <span class='line'> 30</span> </span><span class="PUNC">}</span><span class="WHIT">
38
+ <span class='line'> 31</span> </span><span class="PUNC">}</span><span class="WHIT">
39
+ <span class='line'> 32</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
40
+ <span class='line'> 33</span>
41
+ <span class='line'> 34</span> </span><span class="NAME">collectionEntity.remove</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">val</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
42
+ <span class='line'> 35</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">this.include</span><span class="PUNC">(</span><span class="NAME">val</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
43
+ <span class='line'> 36</span> </span><span class="NAME">this.splice</span><span class="PUNC">(</span><span class="NAME">this.indexOf</span><span class="PUNC">(</span><span class="NAME">val</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NUMB">1</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
44
+ <span class='line'> 37</span> </span><span class="PUNC">}</span><span class="WHIT">
45
+ <span class='line'> 38</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
46
+ <span class='line'> 39</span>
47
+ <span class='line'> 40</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">collectionEntity</span><span class="PUNC">;</span><span class="WHIT">
48
+ <span class='line'> 41</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
49
+ <span class='line'> 42</span>
50
+ <span class='line'> 43</span> </span><span class="NAME">toString</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
51
+ <span class='line'> 44</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="STRN">"CollectionEntity"</span><span class="PUNC">;</span><span class="WHIT">
52
+ <span class='line'> 45</span> </span><span class="PUNC">}</span><span class="WHIT">
53
+ <span class='line'> 46</span> </span><span class="PUNC">}</span><span class="PUNC">;</span></pre></body></html>