<html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"> <style> .KEYW {color: #933;} .COMM {color: #bbb; font-style: italic;} .NUMB {color: #393;} .STRN {color: #393;} .REGX {color: #339;} .line {border-right: 1px dotted #666; color: #666; font-style: normal;} </style></head><body><pre><span class='line'> 1</span> <span class="COMM">/** <span class='line'> 2</span> iiii jjjj <span class='line'> 3</span> i::::i j::::j <span class='line'> 4</span> iiii jjjj <span class='line'> 5</span> <span class='line'> 6</span> rrrrr rrrrrrrrr iiiiiii ooooooooooo jjjjjjj ssssssssss <span class='line'> 7</span> r::::rrr:::::::::r i:::::i oo:::::::::::oo :::::: j:::::j ss::::::::::s <span class='line'> 8</span> r:::::::::::::::::r i::::i o:::::::::::::::o :::::: j::::jss:::::::::::::s <span class='line'> 9</span> rr::::::rrrrr::::::ri::::i o:::::ooooo:::::o :::::: j::::js::::::ssss:::::s <span class='line'> 10</span> r:::::r r:::::ri::::i o::::o o::::o j::::j s:::::s ssssss <span class='line'> 11</span> r:::::r rrrrrrri::::i o::::o o::::o j::::j s::::::s <span class='line'> 12</span> r:::::r i::::i o::::o o::::o j::::j s::::::s <span class='line'> 13</span> r:::::r i::::i o::::o o::::o :::::: j::::jssssss s:::::s <span class='line'> 14</span> r:::::r i::::::io:::::ooooo:::::o :::::: j::::js:::::ssss::::::s <span class='line'> 15</span> r:::::r i::::::io:::::::::::::::o :::::: j::::js::::::::::::::s <span class='line'> 16</span> r:::::r i::::::i oo:::::::::::oo j::::j s:::::::::::ss <span class='line'> 17</span> rrrrrrr iiiiiiii ooooooooooo j::::j sssssssssss <span class='line'> 18</span> j::::j <span class='line'> 19</span> jjjj j::::j <span class='line'> 20</span> j::::jj j:::::j <span class='line'> 21</span> j::::::jjj::::::j <span class='line'> 22</span> jj::::::::::::j <span class='line'> 23</span> jjj::::::jjj <span class='line'> 24</span> jjjjjj <span class='line'> 25</span> <span class='line'> 26</span> <span class='line'> 27</span> @name rio <span class='line'> 28</span> @namespace <span class='line'> 29</span> <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 <span class='line'> 31</span> namespaces. <span class='line'> 32</span> <span class='line'> 33</span> <br /> <span class='line'> 34</span> <span class='line'> 35</span> <h2>Namespaces</h2> <span class='line'> 36</span> <span class='line'> 37</span> <ul> <span class='line'> 38</span> <li>apps - contains instances of rio.Application</li> <span class='line'> 39</span> <li>components - contains instances of rio.Component</li> <span class='line'> 40</span> <li>models - contains instances of rio.Model</li> <span class='line'> 41</span> <li>pages - contains instances of rio.Page</li> <span class='line'> 42</span> <li>environment - configuration for the current environment</li> <span class='line'> 43</span> <li>environments - configurations varying by environment</li> <span class='line'> 44</span> <li>console - stuff related to the development console</li> <span class='line'> 45</span> <li>boot - configuration related to the application boot process</li> <span class='line'> 46</span> </ul> <span class='line'> 47</span> <span class='line'> 48</span> <h2>Classes</h2> <span class='line'> 49</span> <span class='line'> 50</span> <ul> <span class='line'> 51</span> <li>AIM - manages AJAX file uploads</li> <span class='line'> 52</span> <li>Application - root of application instances</li> <span class='line'> 53</span> <li>Attr - root of most rio classes (Application, Component, Model, Page)</li> <span class='line'> 54</span> <li>Binding - represents a bindable attribute</li> <span class='line'> 55</span> <li>Tag - a collection of methods for building HTML tags</li> <span class='line'> 56</span> <li>Utils - a collection of random helper methods</li> <span class='line'> 57</span> </ul> <span class='line'> 58</span> <span class='line'> 59</span> <h2>Methods</h2> <span class='line'> 60</span> <ul> <span class='line'> 61</span> <li>log - adds a log message to the rio console</li> <span class='line'> 62</span> </ul> <span class='line'> 63</span> <span class='line'> 64</span> <h2>Fields</h2> <span class='line'> 65</span> <ul> <span class='line'> 66</span> <li>app - the currently running application instance</li> <span class='line'> 67</span> </ul> <span class='line'> 68</span> <span class='line'> 69</span> @author Jason Tillery <span class='line'> 70</span> @copyright 2008-2009 Thinklink LLC <span class='line'> 71</span> */</span><span class="WHIT"> <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"> <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"> <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"> <span class='line'> 75</span> <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"> <span class='line'> 77</span> <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"> <span class='line'> 79</span> <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"> <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"> <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"> <span class='line'> 83</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT"> <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"> <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"> <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"> <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"> <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"> <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"> <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"> <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"> <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"> <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"> <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"> <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"> <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"> <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"> <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"> <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"> <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"> <span class='line'>101</span> </span><span class="PUNC">]</span><span class="PUNC">,</span><span class="WHIT"> <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"> <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"> <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"> <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"> <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"> <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"> <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"> <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"> <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"> <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"> <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"> <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"> <span class='line'>114</span> <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"> <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"> <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"> <span class='line'>118</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT"> <span class='line'>119</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT"> <span class='line'>120</span> <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"> <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"> <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"> <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"> <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"> <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"> <span class='line'>127</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT"> <span class='line'>128</span> <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"> <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"> <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"> <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"> <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"> <span class='line'>134</span> </span><span class="PUNC">}</span><span class="WHIT"> <span class='line'>135</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT"> <span class='line'>136</span> <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"> <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"> <span class='line'>139</span> <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">"<h1 style='font-size: 24px; color: #670800;'>Boot failed</h1>"</span><span class="PUNC">;</span><span class="WHIT"> <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">"<style>.errorLine{font-size:16px; padding:0px 2px; background-color:yellow}</style>"</span><span class="PUNC">;</span><span class="WHIT"> <span class='line'>142</span> <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"> <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"> <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">"<br /><br />"</span><span class="PUNC">;</span><span class="WHIT"> <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">"<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">"<br /><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">"</p>"</span><span class="PUNC">;</span><span class="WHIT"> <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">"<br />"</span><span class="PUNC">;</span><span class="WHIT"> <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"> <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"> <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">"<br />"</span><span class="PUNC">;</span><span class="WHIT"> <span class='line'>151</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT"> <span class='line'>152</span> </span><span class="PUNC">}</span><span class="WHIT"> <span class='line'>153</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT"> <span class='line'>154</span> <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">"<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">"</div>"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT"> <span class='line'>156</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT"> <span class='line'>157</span> <span class='line'>158</span> </span><span class="NAME">abort</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 class='line'>159</span> </span><span class="NAME">rio.boot.abortBoot</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"> <span class='line'>160</span> </span><span class="PUNC">}</span><span class="WHIT"> <span class='line'>161</span> </span><span class="PUNC">}</span><span class="WHIT"> <span class='line'>162</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT"> <span class='line'>163</span> <span class='line'>164</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"> <span class='line'>165</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"> <span class='line'>166</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"> <span class='line'>167</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"> <span class='line'>168</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"> <span class='line'>169</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"> <span class='line'>170</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"> <span class='line'>171</span> </span><span class="PUNC">}</span><span class="WHIT"> <span class='line'>172</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT"> <span class='line'>173</span> <span class='line'>174</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"> <span class='line'>175</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"> <span class='line'>176</span> <span class='line'>177</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"> <span class='line'>178</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"> <span class='line'>179</span> </span><span class="PUNC">}</span><span class="WHIT"> <span class='line'>180</span> <span class='line'>181</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"> <span class='line'>182</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"> <span class='line'>183</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"> <span class='line'>184</span> </span><span class="NAME">track</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="WHIT"> <span class='line'>185</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"> <span class='line'>186</span> <span class='line'>187</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"> <span class='line'>188</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"> <span class='line'>189</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"> <span class='line'>190</span> </span><span class="NAME">document.write</span><span class="PUNC">(</span><span class="STRN">'<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">'"></script>'</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT"> <span class='line'>191</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"> <span class='line'>192</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"> <span class='line'>193</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"> <span class='line'>194</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"> <span class='line'>195</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"> <span class='line'>196</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"> <span class='line'>197</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"> <span class='line'>198</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"> <span class='line'>199</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"> <span class='line'>200</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"> <span class='line'>201</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"> <span class='line'>202</span> </span><span class="KEYW">try</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT"> <span class='line'>203</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"> <span class='line'>204</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"> <span class='line'>205</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"> <span class='line'>206</span> <span class='line'>207</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"> <span class='line'>208</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"> <span class='line'>209</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"> <span class='line'>210</span> </span><span class="PUNC">}</span><span class="WHIT"> <span class='line'>211</span> <span class='line'>212</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"> <span class='line'>213</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"> <span class='line'>214</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"> <span class='line'>215</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"> <span class='line'>216</span> </span><span class="PUNC">}</span><span class="WHIT"> <span class='line'>217</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT"> <span class='line'>218</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT"> <span class='line'>219</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"> <span class='line'>220</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"> <span class='line'>221</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"> <span class='line'>222</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"> <span class='line'>223</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"> <span class='line'>224</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"> <span class='line'>225</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"> <span class='line'>226</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"> <span class='line'>227</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"> <span class='line'>228</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"> <span class='line'>229</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT"> <span class='line'>230</span> </span><span class="PUNC">}</span><span class="WHIT"> <span class='line'>231</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT"> <span class='line'>232</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"> <span class='line'>233</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"> <span class='line'>234</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"> <span class='line'>235</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"> <span class='line'>236</span> </span><span class="PUNC">}</span><span class="WHIT"> <span class='line'>237</span> <span class='line'>238</span> </span><span class="PUNC">}</span><span class="WHIT"> <span class='line'>239</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"> <span class='line'>240</span> </span><span class="PUNC">}</span><span class="WHIT"> <span class='line'>241</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT"> <span class='line'>242</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"> <span class='line'>243</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"> <span class='line'>244</span> </span><span class="PUNC">}</span><span class="WHIT"> <span class='line'>245</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT"> <span class='line'>246</span> </span><span class="PUNC">}</span><span class="WHIT"> <span class='line'>247</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"> <span class='line'>248</span> </span><span class="PUNC">}</span><span class="WHIT"> <span class='line'>249</span> </span><span class="PUNC">}</span><span class="WHIT"> <span class='line'>250</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT"> <span class='line'>251</span> <span class='line'>252</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"> <span class='line'>253</span> </span><span class="COMM">// rio.require(rio.boot.appRoot + "prototype/compressed/prototype", { force: true });</span><span class="WHIT"> <span class='line'>254</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"> <span class='line'>255</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"> <span class='line'>256</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"> <span class='line'>257</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"> <span class='line'>258</span> </span><span class="PUNC">}</span><span class="WHIT"> <span class='line'>259</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"> <span class='line'>260</span> </span><span class="KEYW">try</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT"> <span class='line'>261</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"> <span class='line'>262</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"> <span class='line'>263</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"> <span class='line'>264</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"> <span class='line'>265</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"> <span class='line'>266</span> </span><span class="COMM">// Let the errors print on load</span><span class="WHIT"> <span class='line'>267</span> </span><span class="PUNC">}</span><span class="WHIT"> <span class='line'>268</span> </span><span class="PUNC">}</span><span class="WHIT"> <span class='line'>269</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"> <span class='line'>270</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"> <span class='line'>271</span> </span><span class="NAME">document.write</span><span class="PUNC">(</span><span class="STRN">'<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">'</script>'</span><span class="PUNC">)</span><span class="WHIT"> <span class='line'>272</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"> <span class='line'>273</span> </span><span class="NAME">rio.Application.injectCss</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT"> <span class='line'>274</span> </span><span class="PUNC">}</span><span class="WHIT"> <span class='line'>275</span> </span><span class="PUNC">}</span><span class="WHIT"> <span class='line'>276</span> <span class='line'>277</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"> <span class='line'>278</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"> <span class='line'>279</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"> <span class='line'>280</span> </span><span class="PUNC">}</span><span class="WHIT"> <span class='line'>281</span> <span class='line'>282</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"> <span class='line'>283</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"> <span class='line'>284</span> </span><span class="NAME">rio.Push.boot</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT"> <span class='line'>285</span> </span><span class="PUNC">}</span><span class="WHIT"> <span class='line'>286</span> <span class='line'>287</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"> <span class='line'>288</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"> <span class='line'>289</span> </span><span class="PUNC">}</span><span class="WHIT"> <span class='line'>290</span> <span class='line'>291</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"> <span class='line'>292</span> </span><span class="NAME">rio.boot.failBoot</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT"> <span class='line'>293</span> </span><span class="KEYW">return</span><span class="PUNC">;</span><span class="WHIT"> <span class='line'>294</span> </span><span class="PUNC">}</span><span class="WHIT"> <span class='line'>295</span> </span><span class="KEYW">try</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT"> <span class='line'>296</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"> <span class='line'>297</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"> <span class='line'>298</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">rio.boot.abortBoot</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> <span class='line'>299</span> </span><span class="NAME">rio.app.launch</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT"> <span class='line'>300</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"> <span class='line'>301</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"> <span class='line'>302</span> </span><span class="NAME">rio.boot.failBoot</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT"> <span class='line'>303</span> </span><span class="PUNC">}</span><span class="WHIT"> <span class='line'>304</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"> <span class='line'>305</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"> <span class='line'>306</span> </span></pre></body></html>