riojs 0.0.0 → 0.0.1
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.
- data/VERSION +1 -1
- data/install/lib/tasks/rio.rake +1 -0
- data/install/script/rio_server +10 -5
- data/lib/rio/autospec.rb +1 -0
- data/lib/rio/path.rb +2 -1
- data/lib/rio/rio_file_controller.rb +1 -1
- data/lib/rio/rio_on_rails.rb +3 -1
- data/lib/rio/rio_proxy_controller.rb +1 -1
- data/lib/rio/rio_push_controller.rb +2 -2
- data/lib/rio/rio_spec_controller.rb +1 -1
- data/lib/riojs.rb +2 -0
- data/public/javascripts/components/list_view.js +5 -2
- data/public/javascripts/components/toggle_button.js +1 -0
- data/public/javascripts/lib/application.js +8 -1
- data/public/javascripts/lib/boot.js +5 -0
- data/public/javascripts/lib/console/components/console.js +1 -1
- data/public/javascripts/lib/console/docs/files.html +1 -1
- data/public/javascripts/lib/console/docs/index.html +1 -1
- data/public/javascripts/lib/console/docs/symbols/Object.html +1 -1
- data/public/javascripts/lib/console/docs/symbols/_global_.html +1 -1
- data/public/javascripts/lib/console/docs/symbols/rio.Application.html +44 -1
- data/public/javascripts/lib/console/docs/symbols/rio.Attr.html +1 -1
- data/public/javascripts/lib/console/docs/symbols/rio.Binding.html +1 -1
- data/public/javascripts/lib/console/docs/symbols/rio.Component.html +1 -1
- data/public/javascripts/lib/console/docs/symbols/rio.Cookie.html +1 -1
- data/public/javascripts/lib/console/docs/symbols/rio.DelayedTask#initialize.html +1 -1
- data/public/javascripts/lib/console/docs/symbols/rio.DelayedTask.html +1 -1
- data/public/javascripts/lib/console/docs/symbols/rio.JsTemplate.html +1 -1
- data/public/javascripts/lib/console/docs/symbols/rio.Juggernaut.html +1 -1
- data/public/javascripts/lib/console/docs/symbols/rio.Model.html +1 -1
- data/public/javascripts/lib/console/docs/symbols/rio.Page.html +1 -1
- data/public/javascripts/lib/console/docs/symbols/rio.Utils.html +1 -1
- data/public/javascripts/lib/console/docs/symbols/rio.html +1 -1
- data/public/javascripts/lib/console/docs/symbols/src/public_javascripts_lib_application.js.html +217 -210
- data/public/javascripts/lib/console/docs/symbols/src/public_javascripts_lib_boot.js.html +149 -144
- data/public/javascripts/lib/console/docs/symbols/src/public_javascripts_lib_model.js.html +604 -603
- data/public/javascripts/lib/model.js +2 -1
- data/public/javascripts/specs/lib/model_spec.js +10 -0
- metadata +2 -2
@@ -160,149 +160,154 @@
|
|
160
160
|
<span class='line'>153</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
161
161
|
<span class='line'>154</span>
|
162
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">"<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">
|
163
|
-
<span class='line'>156</span> </span><span class="PUNC">}</span><span class="WHIT">
|
164
|
-
<span class='line'>157</span>
|
165
|
-
<span class='line'>158</span>
|
166
|
-
<span class='line'>159</span>
|
167
|
-
<span class='line'>160</span>
|
168
|
-
<span class='line'>161</span> </span><span class="
|
169
|
-
<span class='line'>162</span>
|
170
|
-
<span class='line'>163</span>
|
171
|
-
<span class='line'>164</span>
|
172
|
-
<span class='line'>165</span>
|
173
|
-
<span class='line'>166</span>
|
174
|
-
<span class='line'>167</span>
|
175
|
-
<span class='line'>168</span>
|
176
|
-
<span class='line'>169</span>
|
177
|
-
<span class='line'>170</span>
|
178
|
-
<span class='line'>171</span>
|
179
|
-
<span class='line'>172</span>
|
180
|
-
<span class='line'>173</span>
|
181
|
-
<span class='line'>174</span>
|
182
|
-
<span class='line'>175</span> </span><span class="PUNC">
|
183
|
-
<span class='line'>176</span>
|
184
|
-
<span class='line'>177</span> </span><span class="
|
185
|
-
<span class='line'>178</span> </span><span class="NAME">
|
186
|
-
<span class='line'>179</span>
|
187
|
-
<span class='line'>180</span>
|
188
|
-
<span class='line'>181</span>
|
189
|
-
<span class='line'>182</span>
|
190
|
-
<span class='line'>183</span>
|
191
|
-
<span class='line'>184</span> </span><span class="
|
192
|
-
<span class='line'>185</span>
|
193
|
-
<span class='line'>186</span>
|
194
|
-
<span class='line'>187</span>
|
195
|
-
<span class='line'>188</span>
|
196
|
-
<span class='line'>189</span>
|
197
|
-
<span class='line'>190</span> </span><span class="PUNC">
|
198
|
-
<span class='line'>191</span>
|
199
|
-
<span class='line'>192</span>
|
200
|
-
<span class='line'>193</span>
|
201
|
-
<span class='line'>194</span>
|
202
|
-
<span class='line'>195</span>
|
203
|
-
<span class='line'>196</span>
|
204
|
-
<span class='line'>197</span> </span><span class="NAME">
|
205
|
-
<span class='line'>198</span>
|
206
|
-
<span class='line'>199</span>
|
207
|
-
<span class='line'>200</span>
|
208
|
-
<span class='line'>201</span>
|
209
|
-
<span class='line'>202</span>
|
210
|
-
<span class='line'>203</span> </span><span class="
|
211
|
-
<span class='line'>204</span>
|
212
|
-
<span class='line'>205</span>
|
213
|
-
<span class='line'>206</span>
|
214
|
-
<span class='line'>207</span>
|
215
|
-
<span class='line'>208</span> </span><span class="KEYW">
|
216
|
-
<span class='line'>209</span> </span><span class="NAME">rio.
|
217
|
-
<span class='line'>210</span>
|
218
|
-
<span class='line'>211</span>
|
219
|
-
<span class='line'>212</span>
|
220
|
-
<span class='line'>213</span> </span><span class="PUNC">
|
221
|
-
<span class='line'>214</span>
|
222
|
-
<span class='line'>215</span>
|
223
|
-
<span class='line'>216</span>
|
224
|
-
<span class='line'>217</span>
|
225
|
-
<span class='line'>218</span>
|
226
|
-
<span class='line'>219</span>
|
227
|
-
<span class='line'>220</span>
|
228
|
-
<span class='line'>221</span> </span><span class="NAME">
|
229
|
-
<span class='line'>222</span>
|
230
|
-
<span class='line'>223</span>
|
231
|
-
<span class='line'>224</span>
|
232
|
-
<span class='line'>225</span>
|
233
|
-
<span class='line'>226</span>
|
234
|
-
<span class='line'>227</span>
|
235
|
-
<span class='line'>228</span>
|
236
|
-
<span class='line'>229</span>
|
237
|
-
<span class='line'>230</span>
|
238
|
-
<span class='line'>231</span> </span><span class="
|
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>
|
242
|
-
<span class='line'>235</span>
|
243
|
-
<span class='line'>236</span>
|
244
|
-
<span class='line'>237</span>
|
245
|
-
<span class='line'>238</span>
|
246
|
-
<span class='line'>239</span>
|
247
|
-
<span class='line'>240</span>
|
248
|
-
<span class='line'>241</span>
|
249
|
-
<span class='line'>242</span>
|
250
|
-
<span class='line'>243</span>
|
251
|
-
<span class='line'>244</span>
|
252
|
-
<span class='line'>245</span>
|
253
|
-
<span class='line'>246</span>
|
254
|
-
<span class='line'>247</span>
|
255
|
-
<span class='line'>248</span>
|
256
|
-
<span class='line'>249</span> </span><span class="
|
257
|
-
<span class='line'>250</span>
|
258
|
-
<span class='line'>251</span>
|
259
|
-
<span class='line'>252</span>
|
260
|
-
<span class='line'>253</span>
|
261
|
-
<span class='line'>254</span> </span><span class="PUNC">}</span><span class="WHIT">
|
262
|
-
<span class='line'>255</span>
|
263
|
-
<span class='line'>256</span> </span><span class="KEYW">
|
264
|
-
<span class='line'>257</span> </span><span class="NAME">rio.require</span><span class="PUNC">(</span><span class="NAME">rio.boot.
|
265
|
-
<span class='line'>258</span>
|
266
|
-
<span class='line'>259</span>
|
267
|
-
<span class='line'>260</span>
|
268
|
-
<span class='line'>261</span>
|
269
|
-
<span class='line'>262</span> </span><span class="
|
270
|
-
<span class='line'>263</span>
|
271
|
-
<span class='line'>264</span>
|
272
|
-
<span class='line'>265</span>
|
273
|
-
<span class='line'>266</span>
|
274
|
-
<span class='line'>267</span>
|
275
|
-
<span class='line'>268</span>
|
276
|
-
<span class='line'>269</span>
|
277
|
-
<span class='line'>270</span> </span><span class="PUNC">
|
278
|
-
<span class='line'>271</span>
|
279
|
-
<span class='line'>272</span>
|
280
|
-
<span class='line'>273</span>
|
281
|
-
<span class='line'>274</span> </span><span class="
|
282
|
-
<span class='line'>275</span>
|
283
|
-
<span class='line'>276</span>
|
284
|
-
<span class='line'>277</span>
|
285
|
-
<span class='line'>278</span>
|
286
|
-
<span class='line'>279</span> </span><span class="
|
287
|
-
<span class='line'>280</span>
|
288
|
-
<span class='line'>281</span>
|
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.
|
291
|
-
<span class='line'>284</span> </span><span class="NAME">rio.
|
163
|
+
<span class='line'>156</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
164
|
+
<span class='line'>157</span>
|
165
|
+
<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">
|
166
|
+
<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">
|
167
|
+
<span class='line'>160</span> </span><span class="PUNC">}</span><span class="WHIT">
|
168
|
+
<span class='line'>161</span> </span><span class="PUNC">}</span><span class="WHIT">
|
169
|
+
<span class='line'>162</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
170
|
+
<span class='line'>163</span>
|
171
|
+
<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">
|
172
|
+
<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">
|
173
|
+
<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">
|
174
|
+
<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">
|
175
|
+
<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">
|
176
|
+
<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">
|
177
|
+
<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">
|
178
|
+
<span class='line'>171</span> </span><span class="PUNC">}</span><span class="WHIT">
|
179
|
+
<span class='line'>172</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
180
|
+
<span class='line'>173</span>
|
181
|
+
<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">
|
182
|
+
<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">
|
183
|
+
<span class='line'>176</span>
|
184
|
+
<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">
|
185
|
+
<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">
|
186
|
+
<span class='line'>179</span> </span><span class="PUNC">}</span><span class="WHIT">
|
187
|
+
<span class='line'>180</span>
|
188
|
+
<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">
|
189
|
+
<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">
|
190
|
+
<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">
|
191
|
+
<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">
|
192
|
+
<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">
|
193
|
+
<span class='line'>186</span>
|
194
|
+
<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">
|
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.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">
|
196
|
+
<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">
|
197
|
+
<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">
|
198
|
+
<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">
|
199
|
+
<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">
|
200
|
+
<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">
|
201
|
+
<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">
|
202
|
+
<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">
|
203
|
+
<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">
|
204
|
+
<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">
|
205
|
+
<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">
|
206
|
+
<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">
|
207
|
+
<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">
|
208
|
+
<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">
|
209
|
+
<span class='line'>202</span> </span><span class="KEYW">try</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
210
|
+
<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">
|
211
|
+
<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">
|
212
|
+
<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">
|
213
|
+
<span class='line'>206</span>
|
214
|
+
<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">
|
215
|
+
<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">
|
216
|
+
<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">
|
217
|
+
<span class='line'>210</span> </span><span class="PUNC">}</span><span class="WHIT">
|
218
|
+
<span class='line'>211</span>
|
219
|
+
<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">
|
220
|
+
<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">
|
221
|
+
<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">
|
222
|
+
<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">
|
223
|
+
<span class='line'>216</span> </span><span class="PUNC">}</span><span class="WHIT">
|
224
|
+
<span class='line'>217</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
225
|
+
<span class='line'>218</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
226
|
+
<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">
|
227
|
+
<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">
|
228
|
+
<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">
|
229
|
+
<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">
|
230
|
+
<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">
|
231
|
+
<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">
|
232
|
+
<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">
|
233
|
+
<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">
|
234
|
+
<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">
|
235
|
+
<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">
|
236
|
+
<span class='line'>229</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
237
|
+
<span class='line'>230</span> </span><span class="PUNC">}</span><span class="WHIT">
|
238
|
+
<span class='line'>231</span> </span><span class="PUNC">}</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"> </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">
|
240
|
+
<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">
|
241
|
+
<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">
|
242
|
+
<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">
|
243
|
+
<span class='line'>236</span> </span><span class="PUNC">}</span><span class="WHIT">
|
244
|
+
<span class='line'>237</span>
|
245
|
+
<span class='line'>238</span> </span><span class="PUNC">}</span><span class="WHIT">
|
246
|
+
<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">
|
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="WHIT">
|
249
|
+
<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">
|
250
|
+
<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">
|
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="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
253
|
+
<span class='line'>246</span> </span><span class="PUNC">}</span><span class="WHIT">
|
254
|
+
<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">
|
255
|
+
<span class='line'>248</span> </span><span class="PUNC">}</span><span class="WHIT">
|
256
|
+
<span class='line'>249</span> </span><span class="PUNC">}</span><span class="WHIT">
|
257
|
+
<span class='line'>250</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
258
|
+
<span class='line'>251</span>
|
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.bootCompressed</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="COMM">// rio.require(rio.boot.appRoot + "prototype/compressed/prototype", { force: true });</span><span class="WHIT">
|
261
|
+
<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">
|
262
|
+
<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">
|
263
|
+
<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">
|
264
|
+
<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">
|
265
|
+
<span class='line'>258</span> </span><span class="PUNC">}</span><span class="WHIT">
|
266
|
+
<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">
|
267
|
+
<span class='line'>260</span> </span><span class="KEYW">try</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
268
|
+
<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">
|
269
|
+
<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">
|
270
|
+
<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">
|
271
|
+
<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">
|
272
|
+
<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">
|
273
|
+
<span class='line'>266</span> </span><span class="COMM">// Let the errors print on load</span><span class="WHIT">
|
274
|
+
<span class='line'>267</span> </span><span class="PUNC">}</span><span class="WHIT">
|
275
|
+
<span class='line'>268</span> </span><span class="PUNC">}</span><span class="WHIT">
|
276
|
+
<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">
|
277
|
+
<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">
|
278
|
+
<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">
|
279
|
+
<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">
|
280
|
+
<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">
|
281
|
+
<span class='line'>274</span> </span><span class="PUNC">}</span><span class="WHIT">
|
282
|
+
<span class='line'>275</span> </span><span class="PUNC">}</span><span class="WHIT">
|
283
|
+
<span class='line'>276</span>
|
284
|
+
<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">
|
285
|
+
<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">
|
286
|
+
<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">
|
287
|
+
<span class='line'>280</span> </span><span class="PUNC">}</span><span class="WHIT">
|
288
|
+
<span class='line'>281</span>
|
289
|
+
<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">
|
290
|
+
<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">
|
291
|
+
<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">
|
292
292
|
<span class='line'>285</span> </span><span class="PUNC">}</span><span class="WHIT">
|
293
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.
|
295
|
-
<span class='line'>288</span> </span><span class="NAME">rio.
|
296
|
-
<span class='line'>289</span>
|
297
|
-
<span class='line'>290</span>
|
298
|
-
<span class='line'>291</span> </span><span class="KEYW">
|
299
|
-
<span class='line'>292</span> </span><span class="NAME">
|
300
|
-
<span class='line'>293</span> </span><span class="
|
301
|
-
<span class='line'>294</span>
|
302
|
-
<span class='line'>295</span> </span><span class="
|
303
|
-
<span class='line'>296</span> </span><span class="NAME">
|
304
|
-
<span class='line'>297</span> </span><span class="NAME">rio.boot.
|
305
|
-
<span class='line'>298</span>
|
306
|
-
<span class='line'>299</span>
|
307
|
-
<span class='line'>300</span>
|
308
|
-
<span class='line'>301</span> </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.preloadTemplates</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.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">
|
296
|
+
<span class='line'>289</span> </span><span class="PUNC">}</span><span class="WHIT">
|
297
|
+
<span class='line'>290</span>
|
298
|
+
<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">
|
299
|
+
<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">
|
300
|
+
<span class='line'>293</span> </span><span class="KEYW">return</span><span class="PUNC">;</span><span class="WHIT">
|
301
|
+
<span class='line'>294</span> </span><span class="PUNC">}</span><span class="WHIT">
|
302
|
+
<span class='line'>295</span> </span><span class="KEYW">try</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
303
|
+
<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">
|
304
|
+
<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">
|
305
|
+
<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">
|
306
|
+
<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">
|
307
|
+
<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">
|
308
|
+
<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">
|
309
|
+
<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">
|
310
|
+
<span class='line'>303</span> </span><span class="PUNC">}</span><span class="WHIT">
|
311
|
+
<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">
|
312
|
+
<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">
|
313
|
+
<span class='line'>306</span> </span></pre></body></html>
|
@@ -468,607 +468,608 @@
|
|
468
468
|
<span class='line'>461</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">
|
469
469
|
<span class='line'>462</span> </span><span class="NAME">entity</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">model</span><span class="PUNC">(</span><span class="NAME">model._filterAndProcessJson</span><span class="PUNC">(</span><span class="NAME">response.responseJSON</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
470
470
|
<span class='line'>463</span> </span><span class="NAME">options.onSuccess</span><span class="PUNC">(</span><span class="NAME">entity</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
471
|
-
<span class='line'>464</span> </span><span class="PUNC">}</span><span class="WHIT">
|
472
|
-
<span class='line'>465</span>
|
473
|
-
<span class='line'>466</span> </span><span class="
|
474
|
-
<span class='line'>467</span>
|
475
|
-
<span class='line'>468</span>
|
476
|
-
<span class='line'>469</span>
|
477
|
-
<span class='line'>470</span>
|
478
|
-
<span class='line'>471</span>
|
479
|
-
<span class='line'>472</span>
|
480
|
-
<span class='line'>473</span> </span><span class="
|
481
|
-
<span class='line'>474</span>
|
482
|
-
<span class='line'>475</span>
|
483
|
-
<span class='line'>476</span>
|
484
|
-
<span class='line'>477</span> </span><span class="NAME">
|
485
|
-
<span class='line'>478</span>
|
486
|
-
<span class='line'>479</span>
|
487
|
-
<span class='line'>480</span>
|
488
|
-
<span class='line'>481</span>
|
489
|
-
<span class='line'>482</span> </span><span class="KEYW">
|
490
|
-
<span class='line'>483</span>
|
491
|
-
<span class='line'>484</span>
|
492
|
-
<span class='line'>485</span>
|
493
|
-
<span class='line'>486</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">
|
494
|
-
<span class='line'>487</span> </span><span class="
|
495
|
-
<span class='line'>488</span> </span><span class="COMM">//
|
496
|
-
<span class='line'>489</span> </span><span class="COMM">//
|
497
|
-
<span class='line'>490</span> </span><span class="
|
498
|
-
<span class='line'>491</span>
|
499
|
-
<span class='line'>492</span>
|
500
|
-
<span class='line'>493</span> </span><span class="NAME">
|
501
|
-
<span class='line'>494</span> </span><span class="NAME">
|
502
|
-
<span class='line'>495</span>
|
503
|
-
<span class='line'>496</span> </span><span class="
|
504
|
-
<span class='line'>497</span>
|
505
|
-
<span class='line'>498</span>
|
506
|
-
<span class='line'>499</span>
|
507
|
-
<span class='line'>500</span>
|
508
|
-
<span class='line'>501</span>
|
509
|
-
<span class='line'>502</span>
|
510
|
-
<span class='line'>503</span> </span><span class="
|
511
|
-
<span class='line'>504</span>
|
512
|
-
<span class='line'>505</span>
|
471
|
+
<span class='line'>464</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
472
|
+
<span class='line'>465</span> </span><span class="NAME">onFailure</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">options.onFailure</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">Prototype.emptyFunction</span><span class="WHIT">
|
473
|
+
<span class='line'>466</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
474
|
+
<span class='line'>467</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">asynchronous</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
475
|
+
<span class='line'>468</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">entity</span><span class="PUNC">;</span><span class="WHIT">
|
476
|
+
<span class='line'>469</span> </span><span class="PUNC">}</span><span class="WHIT">
|
477
|
+
<span class='line'>470</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
478
|
+
<span class='line'>471</span>
|
479
|
+
<span class='line'>472</span> </span><span class="NAME">findAll</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">
|
480
|
+
<span class='line'>473</span> </span><span class="NAME">options</span><span class="WHIT"> </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="WHIT">
|
481
|
+
<span class='line'>474</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">asynchronous</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">options.asynchronous</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NAME">undefined</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">options.asynchronous</span><span class="PUNC">;</span><span class="WHIT">
|
482
|
+
<span class='line'>475</span>
|
483
|
+
<span class='line'>476</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">options.onSuccess</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">
|
484
|
+
<span class='line'>477</span> </span><span class="NAME">asynchronous</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
485
|
+
<span class='line'>478</span> </span><span class="NAME">options.onSuccess</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Prototype.emptyFunction</span><span class="PUNC">;</span><span class="WHIT">
|
486
|
+
<span class='line'>479</span> </span><span class="PUNC">}</span><span class="WHIT">
|
487
|
+
<span class='line'>480</span>
|
488
|
+
<span class='line'>481</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">idField</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">options.parameters</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">detect</span><span class="PUNC">(</span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">parameter</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
489
|
+
<span class='line'>482</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">val</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">options.parameters</span><span class="PUNC">[</span><span class="NAME">parameter</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
490
|
+
<span class='line'>483</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">val</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">val.temporary</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">val.temporary</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
491
|
+
<span class='line'>484</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
492
|
+
<span class='line'>485</span>
|
493
|
+
<span class='line'>486</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">urlToUse</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">options.url</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">this.url</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
494
|
+
<span class='line'>487</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">parameters</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.Parameters</span><span class="PUNC">(</span><span class="NAME">options.parameters</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><span class="NAME">options.nonAjaxParameters</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
495
|
+
<span class='line'>488</span> </span><span class="COMM">// Assume that there are no entities yet (since a param is unreified)</span><span class="WHIT">
|
496
|
+
<span class='line'>489</span> </span><span class="COMM">// New entities will be added to the collectionEntity as they are created or broadcast</span><span class="WHIT">
|
497
|
+
<span class='line'>490</span> </span><span class="COMM">// If this poses a problem, we can always schedule a find for after reification and then reconcile the CE's</span><span class="WHIT">
|
498
|
+
<span class='line'>491</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">idField</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
499
|
+
<span class='line'>492</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">rio.CollectionEntity.create</span><span class="PUNC">(</span><span class="PUNC">{</span><span class="WHIT">
|
500
|
+
<span class='line'>493</span> </span><span class="NAME">model</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">model</span><span class="PUNC">,</span><span class="WHIT">
|
501
|
+
<span class='line'>494</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">
|
502
|
+
<span class='line'>495</span> </span><span class="NAME">condition</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">parameters.conditionFunction</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT">
|
503
|
+
<span class='line'>496</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
504
|
+
<span class='line'>497</span> </span><span class="NAME">this.putCollectionEntity</span><span class="PUNC">(</span><span class="NAME">urlToUse</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">Object.toJSON</span><span class="PUNC">(</span><span class="NAME">parameters.ajaxParameters</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">collectionEntity</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
505
|
+
<span class='line'>498</span>
|
506
|
+
<span class='line'>499</span> </span><span class="NAME">Object.values</span><span class="PUNC">(</span><span class="NAME">model._identityCache</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">entity</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
507
|
+
<span class='line'>500</span> </span><span class="NAME">collectionEntity.add</span><span class="PUNC">(</span><span class="NAME">entity</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
508
|
+
<span class='line'>501</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
509
|
+
<span class='line'>502</span>
|
510
|
+
<span class='line'>503</span> </span><span class="NAME">options.onSuccess</span><span class="PUNC">(</span><span class="NAME">collectionEntity</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
511
|
+
<span class='line'>504</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">collectionEntity</span><span class="PUNC">;</span><span class="WHIT">
|
512
|
+
<span class='line'>505</span> </span><span class="PUNC">}</span><span class="WHIT">
|
513
513
|
<span class='line'>506</span>
|
514
|
-
<span class='line'>507</span>
|
515
|
-
<span class='line'>508</span>
|
516
|
-
<span class='line'>509</span> </span><span class="NAME">found.
|
517
|
-
<span class='line'>510</span> </span><span class="NAME">
|
518
|
-
<span class='line'>511</span> </span><span class="
|
519
|
-
<span class='line'>512</span>
|
520
|
-
<span class='line'>513</span>
|
521
|
-
<span class='line'>514</span>
|
522
|
-
<span class='line'>515</span>
|
523
|
-
<span class='line'>516</span>
|
524
|
-
<span class='line'>517</span>
|
525
|
-
<span class='line'>518</span>
|
526
|
-
<span class='line'>519</span> </span><span class="
|
527
|
-
<span class='line'>520</span>
|
528
|
-
<span class='line'>521</span>
|
529
|
-
<span class='line'>522</span> </span><span class="NAME">
|
530
|
-
<span class='line'>523</span> </span><span class="NAME">
|
531
|
-
<span class='line'>524</span> </span><span class="NAME">
|
532
|
-
<span class='line'>525</span> </span><span class="NAME">
|
533
|
-
<span class='line'>526</span>
|
534
|
-
<span class='line'>527</span> </span><span class="NAME">results.
|
535
|
-
<span class='line'>528</span> </span><span class="NAME">
|
536
|
-
<span class='line'>529</span>
|
537
|
-
<span class='line'>530</span>
|
538
|
-
<span class='line'>531</span>
|
539
|
-
<span class='line'>532</span> </span><span class="
|
540
|
-
<span class='line'>533</span>
|
541
|
-
<span class='line'>534</span>
|
542
|
-
<span class='line'>535</span>
|
543
|
-
<span class='line'>536</span>
|
544
|
-
<span class='line'>537</span>
|
545
|
-
<span class='line'>538</span> </span><span class="NAME">
|
546
|
-
<span class='line'>539</span>
|
547
|
-
<span class='line'>540</span> </span><span class="KEYW">
|
548
|
-
<span class='line'>541</span>
|
549
|
-
<span class='line'>542</span> </span><span class="NAME">
|
550
|
-
<span class='line'>543</span>
|
551
|
-
<span class='line'>544</span> </span><span class="
|
552
|
-
<span class='line'>545</span> </span><span class="NAME">options.
|
553
|
-
<span class='line'>546</span> </span><span class="NAME">options.
|
554
|
-
<span class='line'>547</span>
|
555
|
-
<span class='line'>548</span>
|
556
|
-
<span class='line'>549</span>
|
557
|
-
<span class='line'>550</span>
|
558
|
-
<span class='line'>551</span> </span><span class="NAME">this.
|
559
|
-
<span class='line'>552</span>
|
560
|
-
<span class='line'>553</span>
|
561
|
-
<span class='line'>554</span>
|
562
|
-
<span class='line'>555</span>
|
563
|
-
<span class='line'>556</span>
|
564
|
-
<span class='line'>557</span>
|
565
|
-
<span class='line'>558</span> </span><span class="
|
566
|
-
<span class='line'>559</span> </span><span class="NAME">
|
567
|
-
<span class='line'>560</span>
|
568
|
-
<span class='line'>561</span> </span><span class="NAME">
|
569
|
-
<span class='line'>562</span> </span><span class="NAME">
|
570
|
-
<span class='line'>563</span>
|
571
|
-
<span class='line'>564</span>
|
572
|
-
<span class='line'>565</span>
|
573
|
-
<span class='line'>566</span>
|
574
|
-
<span class='line'>567</span> </span><span class="
|
575
|
-
<span class='line'>568</span>
|
576
|
-
<span class='line'>569</span>
|
577
|
-
<span class='line'>570</span>
|
578
|
-
<span class='line'>571</span>
|
579
|
-
<span class='line'>572</span>
|
580
|
-
<span class='line'>573</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">
|
581
|
-
<span class='line'>574</span> </span><span class="KEYW">
|
582
|
-
<span class='line'>575</span>
|
583
|
-
<span class='line'>576</span> </span><span class="NAME">
|
584
|
-
<span class='line'>577</span>
|
585
|
-
<span class='line'>578</span>
|
586
|
-
<span class='line'>579</span>
|
587
|
-
<span class='line'>580</span> </span><span class="
|
588
|
-
<span class='line'>581</span> </span><span class="NAME">this.
|
589
|
-
<span class='line'>582</span>
|
590
|
-
<span class='line'>583</span>
|
591
|
-
<span class='line'>584</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">
|
592
|
-
<span class='line'>585</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">
|
593
|
-
<span class='line'>586</span>
|
594
|
-
<span class='line'>587</span>
|
595
|
-
<span class='line'>588</span>
|
596
|
-
<span class='line'>589</span>
|
597
|
-
<span class='line'>590</span>
|
598
|
-
<span class='line'>591</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">
|
599
|
-
<span class='line'>592</span>
|
600
|
-
<span class='line'>593</span>
|
601
|
-
<span class='line'>594</span> </span><span class="
|
602
|
-
<span class='line'>595</span>
|
603
|
-
<span class='line'>596</span> </span><span class="NAME">
|
604
|
-
<span class='line'>597</span> </span><span class="
|
605
|
-
<span class='line'>598</span>
|
606
|
-
<span class='line'>599</span> </span><span class="
|
607
|
-
<span class='line'>600</span>
|
608
|
-
<span class='line'>601</span>
|
609
|
-
<span class='line'>602</span>
|
610
|
-
<span class='line'>603</span>
|
611
|
-
<span class='line'>604</span>
|
612
|
-
<span class='line'>605</span>
|
613
|
-
<span class='line'>606</span>
|
614
|
-
<span class='line'>607</span> </span><span class="
|
615
|
-
<span class='line'>608</span>
|
616
|
-
<span class='line'>609</span>
|
617
|
-
<span class='line'>610</span>
|
618
|
-
<span class='line'>611</span>
|
619
|
-
<span class='line'>612</span>
|
620
|
-
<span class='line'>613</span>
|
621
|
-
<span class='line'>614</span>
|
622
|
-
<span class='line'>615</span> </span><span class="NAME">
|
623
|
-
<span class='line'>616</span> </span><span class="
|
624
|
-
<span class='line'>617</span> </span><span class="KEYW">
|
625
|
-
<span class='line'>618</span>
|
626
|
-
<span class='line'>619</span>
|
627
|
-
<span class='line'>620</span>
|
628
|
-
<span class='line'>621</span>
|
629
|
-
<span class='line'>622</span>
|
630
|
-
<span class='line'>623</span>
|
631
|
-
<span class='line'>624</span>
|
632
|
-
<span class='line'>625</span>
|
633
|
-
<span class='line'>626</span>
|
634
|
-
<span class='line'>627</span>
|
635
|
-
<span class='line'>628</span> </span><span class="
|
636
|
-
<span class='line'>629</span>
|
637
|
-
<span class='line'>630</span>
|
638
|
-
<span class='line'>631</span>
|
639
|
-
<span class='line'>632</span>
|
640
|
-
<span class='line'>633</span>
|
641
|
-
<span class='line'>634</span>
|
642
|
-
<span class='line'>635</span>
|
643
|
-
<span class='line'>636</span> </span><span class="NAME">results</span><span class="
|
644
|
-
<span class='line'>637</span> </span><span class="
|
645
|
-
<span class='line'>638</span>
|
646
|
-
<span class='line'>639</span>
|
647
|
-
<span class='line'>640</span>
|
648
|
-
<span class='line'>641</span>
|
649
|
-
<span class='line'>642</span> </span><span class="
|
650
|
-
<span class='line'>643</span>
|
651
|
-
<span class='line'>644</span>
|
652
|
-
<span class='line'>645</span>
|
653
|
-
<span class='line'>646</span>
|
654
|
-
<span class='line'>647</span>
|
655
|
-
<span class='line'>648</span> </span><span class="COMM">//
|
656
|
-
<span class='line'>649</span> </span><span class="
|
657
|
-
<span class='line'>650</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">
|
658
|
-
<span class='line'>651</span> </span><span class="KEYW">
|
659
|
-
<span class='line'>652</span>
|
660
|
-
<span class='line'>653</span>
|
661
|
-
<span class='line'>654</span>
|
662
|
-
<span class='line'>655</span>
|
663
|
-
<span class='line'>656</span> </span><span class="KEYW">
|
664
|
-
<span class='line'>657</span> </span><span class="KEYW">
|
665
|
-
<span class='line'>658</span>
|
666
|
-
<span class='line'>659</span> </span><span class="
|
667
|
-
<span class='line'>660</span> </span><span class="
|
668
|
-
<span class='line'>661</span>
|
669
|
-
<span class='line'>662</span>
|
670
|
-
<span class='line'>663</span>
|
671
|
-
<span class='line'>664</span>
|
672
|
-
<span class='line'>665</span>
|
673
|
-
<span class='line'>666</span> </span><span class="NAME">
|
674
|
-
<span class='line'>667</span> </span><span class="NAME">
|
675
|
-
<span class='line'>668</span>
|
676
|
-
<span class='line'>669</span> </span><span class="
|
677
|
-
<span class='line'>670</span>
|
678
|
-
<span class='line'>671</span> </span><span class="
|
679
|
-
<span class='line'>672</span> </span><span class="
|
680
|
-
<span class='line'>673</span> </span><span class="KEYW">
|
681
|
-
<span class='line'>674</span>
|
682
|
-
<span class='line'>675</span> </span><span class="
|
683
|
-
<span class='line'>676</span> </span><span class="
|
684
|
-
<span class='line'>677</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">
|
685
|
-
<span class='line'>678</span> </span><span class="KEYW">
|
686
|
-
<span class='line'>679</span>
|
687
|
-
<span class='line'>680</span>
|
688
|
-
<span class='line'>681</span> </span><span class="KEYW">
|
689
|
-
<span class='line'>682</span>
|
690
|
-
<span class='line'>683</span>
|
691
|
-
<span class='line'>684</span>
|
692
|
-
<span class='line'>685</span>
|
693
|
-
<span class='line'>686</span>
|
694
|
-
<span class='line'>687</span>
|
695
|
-
<span class='line'>688</span> </span><span class="
|
696
|
-
<span class='line'>689</span>
|
697
|
-
<span class='line'>690</span>
|
698
|
-
<span class='line'>691</span>
|
699
|
-
<span class='line'>692</span>
|
700
|
-
<span class='line'>693</span>
|
701
|
-
<span class='line'>694</span>
|
702
|
-
<span class='line'>695</span> </span><span class="PUNC">
|
703
|
-
<span class='line'>696</span>
|
704
|
-
<span class='line'>697</span> </span><span class="COMM">//
|
705
|
-
<span class='line'>698</span> </span><span class="COMM">//
|
706
|
-
<span class='line'>699</span> </span><span class="COMM">//
|
707
|
-
<span class='line'>700</span> </span><span class="
|
708
|
-
<span class='line'>701</span>
|
709
|
-
<span class='line'>702</span> </span><span class="
|
710
|
-
<span class='line'>703</span>
|
711
|
-
<span class='line'>704</span>
|
712
|
-
<span class='line'>705</span>
|
713
|
-
<span class='line'>706</span>
|
714
|
-
<span class='line'>707</span>
|
715
|
-
<span class='line'>708</span>
|
716
|
-
<span class='line'>709</span>
|
717
|
-
<span class='line'>710</span>
|
718
|
-
<span class='line'>711</span>
|
719
|
-
<span class='line'>712</span>
|
720
|
-
<span class='line'>713</span>
|
721
|
-
<span class='line'>714</span>
|
722
|
-
<span class='line'>715</span>
|
723
|
-
<span class='line'>716</span>
|
724
|
-
<span class='line'>717</span> </span><span class="KEYW">
|
725
|
-
<span class='line'>718</span>
|
726
|
-
<span class='line'>719</span>
|
727
|
-
<span class='line'>720</span>
|
728
|
-
<span class='line'>721</span>
|
729
|
-
<span class='line'>722</span> </span><span class="KEYW">
|
730
|
-
<span class='line'>723</span>
|
731
|
-
<span class='line'>724</span>
|
732
|
-
<span class='line'>725</span> </span><span class="
|
733
|
-
<span class='line'>726</span> </span><span class="NAME">this.
|
734
|
-
<span class='line'>727</span>
|
735
|
-
<span class='line'>728</span>
|
736
|
-
<span class='line'>729</span>
|
737
|
-
<span class='line'>730</span>
|
738
|
-
<span class='line'>731</span> </span><span class="KEYW">
|
739
|
-
<span class='line'>732</span>
|
740
|
-
<span class='line'>733</span>
|
741
|
-
<span class='line'>734</span>
|
742
|
-
<span class='line'>735</span> </span><span class="NAME">
|
743
|
-
<span class='line'>736</span>
|
744
|
-
<span class='line'>737</span>
|
745
|
-
<span class='line'>738</span>
|
746
|
-
<span class='line'>739</span>
|
747
|
-
<span class='line'>740</span>
|
748
|
-
<span class='line'>741</span> </span><span class="KEYW">
|
749
|
-
<span class='line'>742</span>
|
750
|
-
<span class='line'>743</span>
|
751
|
-
<span class='line'>744</span>
|
752
|
-
<span class='line'>745</span>
|
753
|
-
<span class='line'>746</span>
|
754
|
-
<span class='line'>747</span>
|
755
|
-
<span class='line'>748</span> </span><span class="KEYW">
|
756
|
-
<span class='line'>749</span>
|
757
|
-
<span class='line'>750</span>
|
758
|
-
<span class='line'>751</span>
|
759
|
-
<span class='line'>752</span>
|
760
|
-
<span class='line'>753</span>
|
761
|
-
<span class='line'>754</span>
|
762
|
-
<span class='line'>755</span>
|
763
|
-
<span class='line'>756</span>
|
764
|
-
<span class='line'>757</span>
|
765
|
-
<span class='line'>758</span>
|
766
|
-
<span class='line'>759</span>
|
767
|
-
<span class='line'>760</span>
|
768
|
-
<span class='line'>761</span>
|
769
|
-
<span class='line'>762</span>
|
770
|
-
<span class='line'>763</span>
|
771
|
-
<span class='line'>764</span>
|
772
|
-
<span class='line'>765</span>
|
773
|
-
<span class='line'>766</span>
|
774
|
-
<span class='line'>767</span>
|
775
|
-
<span class='line'>768</span>
|
776
|
-
<span class='line'>769</span>
|
777
|
-
<span class='line'>770</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">
|
778
|
-
<span class='line'>771</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">
|
779
|
-
<span class='line'>772</span>
|
780
|
-
<span class='line'>773</span> </span><span class="NAME">
|
781
|
-
<span class='line'>774</span> </span><span class="NAME">
|
782
|
-
<span class='line'>775</span>
|
783
|
-
<span class='line'>776</span>
|
784
|
-
<span class='line'>777</span>
|
785
|
-
<span class='line'>778</span>
|
786
|
-
<span class='line'>779</span> </span><span class="NAME">
|
787
|
-
<span class='line'>780</span> </span><span class="NAME">
|
788
|
-
<span class='line'>781</span> </span><span class="NAME">
|
789
|
-
<span class='line'>782</span> </span><span class="NAME">
|
790
|
-
<span class='line'>783</span>
|
791
|
-
<span class='line'>784</span> </span><span class="NAME">
|
792
|
-
<span class='line'>785</span>
|
793
|
-
<span class='line'>786</span>
|
794
|
-
<span class='line'>787</span>
|
795
|
-
<span class='line'>788</span>
|
796
|
-
<span class='line'>789</span>
|
797
|
-
<span class='line'>790</span>
|
798
|
-
<span class='line'>791</span>
|
799
|
-
<span class='line'>792</span>
|
800
|
-
<span class='line'>793</span>
|
801
|
-
<span class='line'>794</span>
|
802
|
-
<span class='line'>795</span>
|
803
|
-
<span class='line'>796</span>
|
804
|
-
<span class='line'>797</span>
|
805
|
-
<span class='line'>798</span>
|
806
|
-
<span class='line'>799</span> </span><span class="KEYW">
|
807
|
-
<span class='line'>800</span>
|
808
|
-
<span class='line'>801</span>
|
809
|
-
<span class='line'>802</span>
|
810
|
-
<span class='line'>803</span>
|
811
|
-
<span class='line'>804</span>
|
812
|
-
<span class='line'>805</span>
|
813
|
-
<span class='line'>806</span>
|
814
|
-
<span class='line'>807</span>
|
815
|
-
<span class='line'>808</span>
|
816
|
-
<span class='line'>809</span> </span><span class="KEYW">
|
817
|
-
<span class='line'>810</span>
|
818
|
-
<span class='line'>811</span>
|
819
|
-
<span class='line'>812</span> </span><span class="
|
820
|
-
<span class='line'>813</span>
|
821
|
-
<span class='line'>814</span>
|
822
|
-
<span class='line'>815</span>
|
823
|
-
<span class='line'>816</span>
|
824
|
-
<span class='line'>817</span>
|
825
|
-
<span class='line'>818</span>
|
826
|
-
<span class='line'>819</span>
|
827
|
-
<span class='line'>820</span>
|
828
|
-
<span class='line'>821</span>
|
829
|
-
<span class='line'>822</span>
|
830
|
-
<span class='line'>823</span>
|
831
|
-
<span class='line'>824</span>
|
832
|
-
<span class='line'>825</span>
|
833
|
-
<span class='line'>826</span>
|
834
|
-
<span class='line'>827</span>
|
835
|
-
<span class='line'>828</span>
|
836
|
-
<span class='line'>829</span>
|
837
|
-
<span class='line'>830</span>
|
838
|
-
<span class='line'>831</span>
|
839
|
-
<span class='line'>832</span>
|
840
|
-
<span class='line'>833</span>
|
841
|
-
<span class='line'>834</span>
|
842
|
-
<span class='line'>835</span>
|
843
|
-
<span class='line'>836</span>
|
844
|
-
<span class='line'>837</span>
|
845
|
-
<span class='line'>838</span>
|
846
|
-
<span class='line'>839</span>
|
847
|
-
<span class='line'>840</span>
|
848
|
-
<span class='line'>841</span>
|
849
|
-
<span class='line'>842</span>
|
850
|
-
<span class='line'>843</span> </span><span class="NAME">
|
851
|
-
<span class='line'>844</span>
|
852
|
-
<span class='line'>845</span> </span><span class="
|
853
|
-
<span class='line'>846</span>
|
854
|
-
<span class='line'>847</span> </span><span class="NAME">
|
855
|
-
<span class='line'>848</span> </span><span class="NAME">
|
856
|
-
<span class='line'>849</span>
|
857
|
-
<span class='line'>850</span> </span><span class="NAME">
|
858
|
-
<span class='line'>851</span> </span><span class="
|
859
|
-
<span class='line'>852</span> </span><span class="KEYW">
|
860
|
-
<span class='line'>853</span>
|
861
|
-
<span class='line'>854</span>
|
862
|
-
<span class='line'>855</span> </span><span class="
|
863
|
-
<span class='line'>856</span>
|
864
|
-
<span class='line'>857</span>
|
865
|
-
<span class='line'>858</span>
|
866
|
-
<span class='line'>859</span>
|
867
|
-
<span class='line'>860</span> </span><span class="KEYW">
|
868
|
-
<span class='line'>861</span>
|
869
|
-
<span class='line'>862</span>
|
870
|
-
<span class='line'>863</span>
|
871
|
-
<span class='line'>864</span>
|
872
|
-
<span class='line'>865</span> </span><span class="KEYW">
|
873
|
-
<span class='line'>866</span>
|
874
|
-
<span class='line'>867</span> </span><span class="KEYW">
|
875
|
-
<span class='line'>868</span>
|
876
|
-
<span class='line'>869</span>
|
877
|
-
<span class='line'>870</span>
|
878
|
-
<span class='line'>871</span>
|
879
|
-
<span class='line'>872</span>
|
880
|
-
<span class='line'>873</span>
|
881
|
-
<span class='line'>874</span>
|
882
|
-
<span class='line'>875</span>
|
883
|
-
<span class='line'>876</span>
|
884
|
-
<span class='line'>877</span> </span><span class="KEYW">
|
885
|
-
<span class='line'>878</span>
|
886
|
-
<span class='line'>879</span> </span><span class="KEYW">
|
887
|
-
<span class='line'>880</span>
|
888
|
-
<span class='line'>881</span>
|
889
|
-
<span class='line'>882</span>
|
890
|
-
<span class='line'>883</span>
|
891
|
-
<span class='line'>884</span>
|
892
|
-
<span class='line'>885</span>
|
893
|
-
<span class='line'>886</span>
|
894
|
-
<span class='line'>887</span>
|
895
|
-
<span class='line'>888</span>
|
896
|
-
<span class='line'>889</span> </span><span class="KEYW">
|
897
|
-
<span class='line'>890</span>
|
898
|
-
<span class='line'>891</span> </span><span class="KEYW">
|
899
|
-
<span class='line'>892</span>
|
900
|
-
<span class='line'>893</span>
|
901
|
-
<span class='line'>894</span>
|
902
|
-
<span class='line'>895</span>
|
903
|
-
<span class='line'>896</span>
|
904
|
-
<span class='line'>897</span>
|
905
|
-
<span class='line'>898</span>
|
906
|
-
<span class='line'>899</span>
|
907
|
-
<span class='line'>900</span>
|
908
|
-
<span class='line'>901</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">
|
909
|
-
<span class='line'>902</span> </span><span class="KEYW">
|
910
|
-
<span class='line'>903</span>
|
911
|
-
<span class='line'>904</span>
|
912
|
-
<span class='line'>905</span>
|
913
|
-
<span class='line'>906</span>
|
914
|
-
<span class='line'>907</span>
|
915
|
-
<span class='line'>908</span>
|
916
|
-
<span class='line'>909</span>
|
917
|
-
<span class='line'>910</span>
|
918
|
-
<span class='line'>911</span>
|
919
|
-
<span class='line'>912</span>
|
920
|
-
<span class='line'>913</span>
|
921
|
-
<span class='line'>914</span>
|
922
|
-
<span class='line'>915</span>
|
923
|
-
<span class='line'>916</span>
|
924
|
-
<span class='line'>917</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">
|
925
|
-
<span class='line'>918</span> </span><span class="KEYW">
|
926
|
-
<span class='line'>919</span>
|
927
|
-
<span class='line'>920</span>
|
928
|
-
<span class='line'>921</span>
|
929
|
-
<span class='line'>922</span>
|
930
|
-
<span class='line'>923</span>
|
931
|
-
<span class='line'>924</span>
|
932
|
-
<span class='line'>925</span>
|
933
|
-
<span class='line'>926</span>
|
934
|
-
<span class='line'>927</span>
|
935
|
-
<span class='line'>928</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">
|
936
|
-
<span class='line'>929</span>
|
937
|
-
<span class='line'>930</span>
|
938
|
-
<span class='line'>931</span> </span><span class="
|
939
|
-
<span class='line'>932</span>
|
940
|
-
<span class='line'>933</span>
|
941
|
-
<span class='line'>934</span>
|
942
|
-
<span class='line'>935</span>
|
943
|
-
<span class='line'>936</span> </span><span class="
|
944
|
-
<span class='line'>937</span>
|
945
|
-
<span class='line'>938</span> </span><span class="
|
946
|
-
<span class='line'>939</span> </span><span class="NAME">
|
947
|
-
<span class='line'>940</span>
|
948
|
-
<span class='line'>941</span>
|
949
|
-
<span class='line'>942</span>
|
950
|
-
<span class='line'>943</span>
|
951
|
-
<span class='line'>944</span>
|
952
|
-
<span class='line'>945</span>
|
953
|
-
<span class='line'>946</span>
|
954
|
-
<span class='line'>947</span>
|
955
|
-
<span class='line'>948</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">
|
956
|
-
<span class='line'>949</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">
|
957
|
-
<span class='line'>950</span>
|
958
|
-
<span class='line'>951</span>
|
959
|
-
<span class='line'>952</span>
|
960
|
-
<span class='line'>953</span>
|
961
|
-
<span class='line'>954</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">
|
962
|
-
<span class='line'>955</span>
|
963
|
-
<span class='line'>956</span> </span><span class="NAME">instance
|
964
|
-
<span class='line'>957</span> </span><span class="NAME">instance.
|
965
|
-
<span class='line'>958</span>
|
966
|
-
<span class='line'>959</span> </span><span class="
|
967
|
-
<span class='line'>960</span>
|
968
|
-
<span class='line'>961</span>
|
969
|
-
<span class='line'>962</span>
|
970
|
-
<span class='line'>963</span>
|
971
|
-
<span class='line'>964</span>
|
972
|
-
<span class='line'>965</span>
|
973
|
-
<span class='line'>966</span>
|
974
|
-
<span class='line'>967</span>
|
975
|
-
<span class='line'>968</span>
|
976
|
-
<span class='line'>969</span>
|
977
|
-
<span class='line'>970</span>
|
978
|
-
<span class='line'>971</span>
|
979
|
-
<span class='line'>972</span> </span><span class="KEYW">
|
980
|
-
<span class='line'>973</span>
|
981
|
-
<span class='line'>974</span> </span><span class="COMM"
|
982
|
-
<span class='line'>975</span> </span><span class="COMM"
|
983
|
-
<span class='line'>976</span> </span><span class="COMM">//
|
984
|
-
<span class='line'>977</span> </span><span class="COMM">//
|
985
|
-
<span class='line'>978</span> </span><span class="
|
986
|
-
<span class='line'>979</span>
|
987
|
-
<span class='line'>980</span> </span><span class="KEYW">
|
988
|
-
<span class='line'>981</span>
|
989
|
-
<span class='line'>982</span>
|
990
|
-
<span class='line'>983</span>
|
991
|
-
<span class='line'>984</span>
|
992
|
-
<span class='line'>985</span>
|
993
|
-
<span class='line'>986</span>
|
994
|
-
<span class='line'>987</span>
|
995
|
-
<span class='line'>988</span>
|
996
|
-
<span class='line'>989</span>
|
997
|
-
<span class='line'>990</span>
|
998
|
-
<span class='line'>991</span>
|
999
|
-
<span class='line'>992</span>
|
1000
|
-
<span class='line'>993</span>
|
1001
|
-
<span class='line'>994</span>
|
1002
|
-
<span class='line'>995</span>
|
1003
|
-
<span class='line'>996</span>
|
1004
|
-
<span class='line'>997</span>
|
1005
|
-
<span class='line'>998</span>
|
1006
|
-
<span class='line'>999</span>
|
1007
|
-
<span class='line'>1000</span>
|
1008
|
-
<span class='line'>1001</span>
|
1009
|
-
<span class='line'>1002</span>
|
1010
|
-
<span class='line'>1003</span>
|
1011
|
-
<span class='line'>1004</span>
|
1012
|
-
<span class='line'>1005</span>
|
1013
|
-
<span class='line'>1006</span> </span><span class="NAME">extension.
|
1014
|
-
<span class='line'>1007</span>
|
1015
|
-
<span class='line'>1008</span>
|
1016
|
-
<span class='line'>1009</span>
|
1017
|
-
<span class='line'>1010</span>
|
1018
|
-
<span class='line'>1011</span> </span><span class="NAME">
|
1019
|
-
<span class='line'>1012</span>
|
1020
|
-
<span class='line'>1013</span>
|
1021
|
-
<span class='line'>1014</span>
|
1022
|
-
<span class='line'>1015</span>
|
1023
|
-
<span class='line'>1016</span> </span><span class="NAME">
|
1024
|
-
<span class='line'>1017</span>
|
1025
|
-
<span class='line'>1018</span>
|
1026
|
-
<span class='line'>1019</span>
|
1027
|
-
<span class='line'>1020</span>
|
1028
|
-
<span class='line'>1021</span>
|
1029
|
-
<span class='line'>1022</span> </span><span class="
|
1030
|
-
<span class='line'>1023</span>
|
1031
|
-
<span class='line'>1024</span> </span><span class="KEYW">
|
1032
|
-
<span class='line'>1025</span>
|
1033
|
-
<span class='line'>1026</span> </span><span class="COMM">//
|
1034
|
-
<span class='line'>1027</span> </span><span class="COMM">//
|
1035
|
-
<span class='line'>1028</span> </span><span class="COMM">//
|
1036
|
-
<span class='line'>1029</span>
|
1037
|
-
<span class='line'>1030</span>
|
1038
|
-
<span class='line'>1031</span> </span><span class="
|
1039
|
-
<span class='line'>1032</span> </span><span class="
|
1040
|
-
<span class='line'>1033</span> </span><span class="
|
1041
|
-
<span class='line'>1034</span>
|
1042
|
-
<span class='line'>1035</span>
|
1043
|
-
<span class='line'>1036</span>
|
1044
|
-
<span class='line'>1037</span>
|
1045
|
-
<span class='line'>1038</span>
|
1046
|
-
<span class='line'>1039</span>
|
1047
|
-
<span class='line'>1040</span>
|
1048
|
-
<span class='line'>1041</span>
|
1049
|
-
<span class='line'>1042</span> </span><span class="
|
1050
|
-
<span class='line'>1043</span>
|
1051
|
-
<span class='line'>1044</span>
|
1052
|
-
<span class='line'>1045</span>
|
1053
|
-
<span class='line'>1046</span>
|
1054
|
-
<span class='line'>1047</span>
|
1055
|
-
<span class='line'>1048</span>
|
1056
|
-
<span class='line'>1049</span>
|
1057
|
-
<span class='line'>1050</span>
|
1058
|
-
<span class='line'>1051</span>
|
1059
|
-
<span class='line'>1052</span>
|
1060
|
-
<span class='line'>1053</span> </span><span class="
|
1061
|
-
<span class='line'>1054</span>
|
1062
|
-
<span class='line'>1055</span>
|
1063
|
-
<span class='line'>1056</span> </span><span class="
|
1064
|
-
<span class='line'>1057</span>
|
1065
|
-
<span class='line'>1058</span>
|
1066
|
-
<span class='line'>1059</span>
|
1067
|
-
<span class='line'>1060</span>
|
1068
|
-
<span class='line'>1061</span>
|
1069
|
-
<span class='line'>1062</span>
|
1070
|
-
<span class='line'>1063</span>
|
1071
|
-
<span class='line'>1064</span>
|
1072
|
-
<span class='line'>1065</span>
|
1073
|
-
<span class='line'>1066</span>
|
1074
|
-
<span class='line'>1067</span>
|
514
|
+
<span class='line'>507</span>
|
515
|
+
<span class='line'>508</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">this._collectionEntities</span><span class="PUNC">[</span><span class="NAME">urlToUse</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">Object.toJSON</span><span class="PUNC">(</span><span class="NAME">parameters.ajaxParameters</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><span class="PUNC">{</span><span class="WHIT">
|
516
|
+
<span class='line'>509</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">found</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this._collectionEntities</span><span class="PUNC">[</span><span class="NAME">urlToUse</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">Object.toJSON</span><span class="PUNC">(</span><span class="NAME">parameters.ajaxParameters</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
517
|
+
<span class='line'>510</span> </span><span class="NAME">found.prepare</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
518
|
+
<span class='line'>511</span> </span><span class="NAME">options.onSuccess</span><span class="PUNC">(</span><span class="NAME">found</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
519
|
+
<span class='line'>512</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">asynchronous</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
520
|
+
<span class='line'>513</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">found</span><span class="PUNC">;</span><span class="WHIT">
|
521
|
+
<span class='line'>514</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">
|
522
|
+
<span class='line'>515</span> </span><span class="KEYW">return</span><span class="PUNC">;</span><span class="WHIT">
|
523
|
+
<span class='line'>516</span> </span><span class="PUNC">}</span><span class="WHIT">
|
524
|
+
<span class='line'>517</span> </span><span class="PUNC">}</span><span class="WHIT">
|
525
|
+
<span class='line'>518</span>
|
526
|
+
<span class='line'>519</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">results</span><span class="PUNC">;</span><span class="WHIT">
|
527
|
+
<span class='line'>520</span> </span><span class="NAME">rio.Model._findAllRequests.push</span><span class="PUNC">(</span><span class="WHIT">
|
528
|
+
<span class='line'>521</span> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">Ajax.Request</span><span class="PUNC">(</span><span class="NAME">urlToUse</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
529
|
+
<span class='line'>522</span> </span><span class="NAME">asynchronous</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">asynchronous</span><span class="PUNC">,</span><span class="WHIT">
|
530
|
+
<span class='line'>523</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">
|
531
|
+
<span class='line'>524</span> </span><span class="NAME">evalJSON</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">,</span><span class="WHIT">
|
532
|
+
<span class='line'>525</span> </span><span class="NAME">parameters</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="NAME">conditions</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">Object.toJSON</span><span class="PUNC">(</span><span class="NAME">parameters.ajaxParameters</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
533
|
+
<span class='line'>526</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">
|
534
|
+
<span class='line'>527</span> </span><span class="NAME">results</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this._collectionEntityFromJson</span><span class="PUNC">(</span><span class="NAME">response.responseJSON</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">parameters</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">urlToUse</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
535
|
+
<span class='line'>528</span> </span><span class="NAME">results.prepare</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
536
|
+
<span class='line'>529</span> </span><span class="NAME">options.onSuccess</span><span class="PUNC">(</span><span class="NAME">results</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
537
|
+
<span class='line'>530</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="WHIT">
|
538
|
+
<span class='line'>531</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="WHIT">
|
539
|
+
<span class='line'>532</span> </span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
540
|
+
<span class='line'>533</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">asynchronous</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
541
|
+
<span class='line'>534</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">results</span><span class="PUNC">;</span><span class="WHIT">
|
542
|
+
<span class='line'>535</span> </span><span class="PUNC">}</span><span class="WHIT">
|
543
|
+
<span class='line'>536</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
544
|
+
<span class='line'>537</span>
|
545
|
+
<span class='line'>538</span> </span><span class="NAME">_hasManyAssociations</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
546
|
+
<span class='line'>539</span> </span><span class="NAME">hasMany</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">hasManyName</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
547
|
+
<span class='line'>540</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="PUNC">{</span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
548
|
+
<span class='line'>541</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">Object.isString</span><span class="PUNC">(</span><span class="NAME">hasManyName</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
549
|
+
<span class='line'>542</span> </span><span class="NAME">options</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">hasManyName</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><span class="PUNC">{</span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
550
|
+
<span class='line'>543</span> </span><span class="NAME">hasManyName</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">hasManyName</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
551
|
+
<span class='line'>544</span> </span><span class="PUNC">}</span><span class="WHIT">
|
552
|
+
<span class='line'>545</span> </span><span class="NAME">options.className</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">hasManyName.singularize</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">classize</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
553
|
+
<span class='line'>546</span> </span><span class="NAME">options.foreignKey</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.NAME.toLowerCase</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">"Id"</span><span class="PUNC">;</span><span class="WHIT">
|
554
|
+
<span class='line'>547</span> </span><span class="NAME">options.parameters</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">options.parameters</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">
|
555
|
+
<span class='line'>548</span>
|
556
|
+
<span class='line'>549</span> </span><span class="NAME">this._hasManyAssociations</span><span class="PUNC">[</span><span class="NAME">hasManyName</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">options</span><span class="PUNC">;</span><span class="WHIT">
|
557
|
+
<span class='line'>550</span>
|
558
|
+
<span class='line'>551</span> </span><span class="NAME">this.attrAccessor</span><span class="PUNC">(</span><span class="NAME">hasManyName</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
559
|
+
<span class='line'>552</span> </span><span class="NAME">this.clientOnlyAttr</span><span class="PUNC">(</span><span class="NAME">hasManyName</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
560
|
+
<span class='line'>553</span>
|
561
|
+
<span class='line'>554</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">getName</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="STRN">"get-"</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">hasManyName</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">camelize</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
562
|
+
<span class='line'>555</span>
|
563
|
+
<span class='line'>556</span> </span><span class="NAME">this.prototype</span><span class="PUNC">[</span><span class="NAME">getName</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.prototype</span><span class="PUNC">[</span><span class="NAME">getName</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">wrap</span><span class="PUNC">(</span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">proceed</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
564
|
+
<span class='line'>557</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="KEYW">this</span><span class="PUNC">[</span><span class="STRN">"_"</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">hasManyName</span><span class="PUNC">]</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">
|
565
|
+
<span class='line'>558</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">parameters</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Object.clone</span><span class="PUNC">(</span><span class="NAME">options.parameters</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
566
|
+
<span class='line'>559</span> </span><span class="NAME">parameters</span><span class="PUNC">[</span><span class="NAME">options.foreignKey</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.getId</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
567
|
+
<span class='line'>560</span> </span><span class="NAME">rio.models</span><span class="PUNC">[</span><span class="NAME">options.className</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">findAll</span><span class="PUNC">(</span><span class="PUNC">{</span><span class="WHIT">
|
568
|
+
<span class='line'>561</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">
|
569
|
+
<span class='line'>562</span> </span><span class="NAME">parameters</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">parameters</span><span class="PUNC">,</span><span class="WHIT">
|
570
|
+
<span class='line'>563</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">entities</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
571
|
+
<span class='line'>564</span> </span><span class="KEYW">this</span><span class="PUNC">[</span><span class="STRN">"_"</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">hasManyName</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">entities</span><span class="PUNC">;</span><span class="WHIT">
|
572
|
+
<span class='line'>565</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="WHIT">
|
573
|
+
<span class='line'>566</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
574
|
+
<span class='line'>567</span> </span><span class="PUNC">}</span><span class="WHIT">
|
575
|
+
<span class='line'>568</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">proceed.apply</span><span class="PUNC">(</span><span class="KEYW">this</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">$A</span><span class="PUNC">(</span><span class="NAME">arguments</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">slice</span><span class="PUNC">(</span><span class="NUMB">1</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
576
|
+
<span class='line'>569</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
577
|
+
<span class='line'>570</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
578
|
+
<span class='line'>571</span>
|
579
|
+
<span class='line'>572</span> </span><span class="NAME">belongsTo</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">args</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
580
|
+
<span class='line'>573</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="PUNC">{</span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
581
|
+
<span class='line'>574</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">associationName</span><span class="PUNC">;</span><span class="WHIT">
|
582
|
+
<span class='line'>575</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">Object.isString</span><span class="PUNC">(</span><span class="NAME">args</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
583
|
+
<span class='line'>576</span> </span><span class="NAME">associationName</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">args</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
584
|
+
<span class='line'>577</span> </span><span class="NAME">options</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">args</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><span class="PUNC">{</span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
585
|
+
<span class='line'>578</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">
|
586
|
+
<span class='line'>579</span> </span><span class="NAME">associationName</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">args</span><span class="PUNC">;</span><span class="WHIT">
|
587
|
+
<span class='line'>580</span> </span><span class="PUNC">}</span><span class="WHIT">
|
588
|
+
<span class='line'>581</span> </span><span class="NAME">this.attrAccessor</span><span class="PUNC">(</span><span class="NAME">associationName</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
589
|
+
<span class='line'>582</span> </span><span class="NAME">this.clientOnlyAttr</span><span class="PUNC">(</span><span class="NAME">associationName</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
590
|
+
<span class='line'>583</span>
|
591
|
+
<span class='line'>584</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">className</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">options.className</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">associationName.classize</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
592
|
+
<span class='line'>585</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">foreignKey</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">options.foreignKey</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">associationName</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">"Id"</span><span class="PUNC">;</span><span class="WHIT">
|
593
|
+
<span class='line'>586</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">getName</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="STRN">"get-"</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">associationName</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">camelize</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
594
|
+
<span class='line'>587</span>
|
595
|
+
<span class='line'>588</span> </span><span class="NAME">this.prototype</span><span class="PUNC">[</span><span class="NAME">getName</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.prototype</span><span class="PUNC">[</span><span class="NAME">getName</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">wrap</span><span class="PUNC">(</span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">proceed</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
596
|
+
<span class='line'>589</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="KEYW">this</span><span class="PUNC">[</span><span class="STRN">"_"</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">associationName</span><span class="PUNC">]</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">
|
597
|
+
<span class='line'>590</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">setAssociation</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">
|
598
|
+
<span class='line'>591</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">associationId</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">this</span><span class="PUNC">[</span><span class="STRN">"_"</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">foreignKey</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
599
|
+
<span class='line'>592</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">foundValue</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">rio.models</span><span class="PUNC">[</span><span class="NAME">className</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">find</span><span class="PUNC">(</span><span class="NAME">associationId</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
600
|
+
<span class='line'>593</span> </span><span class="NAME">asynchronous</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="WHIT">
|
601
|
+
<span class='line'>594</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
602
|
+
<span class='line'>595</span> </span><span class="KEYW">this</span><span class="PUNC">[</span><span class="PUNC">(</span><span class="STRN">"set-"</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">associationName</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">camelize</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">]</span><span class="PUNC">(</span><span class="NAME">foundValue</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
603
|
+
<span class='line'>596</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="WHIT">
|
604
|
+
<span class='line'>597</span> </span><span class="NAME">setAssociation</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
605
|
+
<span class='line'>598</span> </span><span class="KEYW">this</span><span class="PUNC">[</span><span class="NAME">foreignKey</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">bind</span><span class="PUNC">(</span><span class="NAME">setAssociation</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
606
|
+
<span class='line'>599</span> </span><span class="PUNC">}</span><span class="WHIT">
|
607
|
+
<span class='line'>600</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">proceed.apply</span><span class="PUNC">(</span><span class="KEYW">this</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">$A</span><span class="PUNC">(</span><span class="NAME">arguments</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">slice</span><span class="PUNC">(</span><span class="NUMB">1</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
608
|
+
<span class='line'>601</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
609
|
+
<span class='line'>602</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
610
|
+
<span class='line'>603</span>
|
611
|
+
<span class='line'>604</span> </span><span class="NAME">_parametersFromJsonParameters</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">params</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
612
|
+
<span class='line'>605</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">rio.Parameters</span><span class="PUNC">(</span><span class="WHIT">
|
613
|
+
<span class='line'>606</span> </span><span class="NAME">Object.keys</span><span class="PUNC">(</span><span class="NAME">params</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">inject</span><span class="PUNC">(</span><span class="PUNC">{</span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">acc</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">p</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
614
|
+
<span class='line'>607</span> </span><span class="NAME">acc</span><span class="PUNC">[</span><span class="NAME">p.camelize</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">params</span><span class="PUNC">[</span><span class="NAME">p</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
615
|
+
<span class='line'>608</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">acc</span><span class="PUNC">;</span><span class="WHIT">
|
616
|
+
<span class='line'>609</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="WHIT">
|
617
|
+
<span class='line'>610</span> </span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
618
|
+
<span class='line'>611</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
619
|
+
<span class='line'>612</span>
|
620
|
+
<span class='line'>613</span> </span><span class="NAME">_processIncludedCollectionEntities</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">json</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
621
|
+
<span class='line'>614</span> </span><span class="KEYW">for</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">=</span><span class="NAME">json.length</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">--</span><span class="PUNC">;</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
622
|
+
<span class='line'>615</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">include</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">json</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
623
|
+
<span class='line'>616</span> </span><span class="NAME">params</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this._parametersFromJsonParameters</span><span class="PUNC">(</span><span class="NAME">include.parameters</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
624
|
+
<span class='line'>617</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">url</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">rio.models</span><span class="PUNC">[</span><span class="NAME">include.className</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">url</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
625
|
+
<span class='line'>618</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">this._collectionEntities</span><span class="PUNC">[</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">Object.toJSON</span><span class="PUNC">(</span><span class="NAME">params.ajaxParameters</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">]</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">
|
626
|
+
<span class='line'>619</span> </span><span class="NAME">rio.models</span><span class="PUNC">[</span><span class="NAME">include.className</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">_collectionEntityFromJson</span><span class="PUNC">(</span><span class="NAME">include.json</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">params</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">url</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
627
|
+
<span class='line'>620</span> </span><span class="PUNC">}</span><span class="WHIT">
|
628
|
+
<span class='line'>621</span> </span><span class="PUNC">}</span><span class="WHIT">
|
629
|
+
<span class='line'>622</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
630
|
+
<span class='line'>623</span>
|
631
|
+
<span class='line'>624</span> </span><span class="NAME">_filterAndProcessJsonWhileAccumulatingCollectionEntities</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">inJson</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
632
|
+
<span class='line'>625</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">inJson._set</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
633
|
+
<span class='line'>626</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">ceFunction</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">
|
634
|
+
<span class='line'>627</span> </span><span class="NAME">model._processIncludedCollectionEntities</span><span class="PUNC">(</span><span class="NAME">inJson._set.include</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
635
|
+
<span class='line'>628</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
636
|
+
<span class='line'>629</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="NAME">rio.Model.filterJson</span><span class="PUNC">(</span><span class="NAME">inJson._set.self</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">ceFunction</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
637
|
+
<span class='line'>630</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">
|
638
|
+
<span class='line'>631</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="NAME">rio.Model.filterJson</span><span class="PUNC">(</span><span class="NAME">inJson</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">Prototype.emptyFunction</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
639
|
+
<span class='line'>632</span> </span><span class="PUNC">}</span><span class="WHIT">
|
640
|
+
<span class='line'>633</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
641
|
+
<span class='line'>634</span>
|
642
|
+
<span class='line'>635</span> </span><span class="NAME">_filterAndProcessJson</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">inJson</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
643
|
+
<span class='line'>636</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">results</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">model._filterAndProcessJsonWhileAccumulatingCollectionEntities</span><span class="PUNC">(</span><span class="NAME">inJson</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
644
|
+
<span class='line'>637</span> </span><span class="NAME">results</span><span class="PUNC">[</span><span class="NUMB">1</span><span class="PUNC">]</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
645
|
+
<span class='line'>638</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">results</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
646
|
+
<span class='line'>639</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
647
|
+
<span class='line'>640</span>
|
648
|
+
<span class='line'>641</span> </span><span class="NAME">_collectionEntityFromJson</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">json</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">parameters</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">url</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
649
|
+
<span class='line'>642</span> </span><span class="COMM">// In case multiple identical queries were made simultaneously</span><span class="WHIT">
|
650
|
+
<span class='line'>643</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">this._collectionEntities</span><span class="PUNC">[</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">Object.toJSON</span><span class="PUNC">(</span><span class="NAME">parameters.ajaxParameters</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><span class="PUNC">{</span><span class="WHIT">
|
651
|
+
<span class='line'>644</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this._collectionEntities</span><span class="PUNC">[</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">Object.toJSON</span><span class="PUNC">(</span><span class="NAME">parameters.ajaxParameters</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
652
|
+
<span class='line'>645</span> </span><span class="PUNC">}</span><span class="WHIT">
|
653
|
+
<span class='line'>646</span>
|
654
|
+
<span class='line'>647</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">results</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">json.map</span><span class="PUNC">(</span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">result</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
655
|
+
<span class='line'>648</span> </span><span class="COMM">// This may cause bugs. It should map the results of _filterAndProcessJsonWhileAccumulatingCollectionEntities</span><span class="WHIT">
|
656
|
+
<span class='line'>649</span> </span><span class="COMM">// and execute them after them map to prevent reification collisions</span><span class="WHIT">
|
657
|
+
<span class='line'>650</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">modelJson</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">model._filterAndProcessJson</span><span class="PUNC">(</span><span class="NAME">result</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
658
|
+
<span class='line'>651</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">fromCache</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.getFromCache</span><span class="PUNC">(</span><span class="NAME">model.id</span><span class="PUNC">(</span><span class="NAME">modelJson.id</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
659
|
+
<span class='line'>652</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">fromCache</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
660
|
+
<span class='line'>653</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">fromCache</span><span class="PUNC">;</span><span class="WHIT">
|
661
|
+
<span class='line'>654</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">
|
662
|
+
<span class='line'>655</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">lazyNew</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">
|
663
|
+
<span class='line'>656</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">fromCache</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.getFromCache</span><span class="PUNC">(</span><span class="NAME">model.id</span><span class="PUNC">(</span><span class="NAME">modelJson.id</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
664
|
+
<span class='line'>657</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">fromCache</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="NAME">fromCache</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
665
|
+
<span class='line'>658</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">model</span><span class="PUNC">(</span><span class="NAME">modelJson</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
666
|
+
<span class='line'>659</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="WHIT">
|
667
|
+
<span class='line'>660</span> </span><span class="NAME">lazyNew.__lazyNew</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">
|
668
|
+
<span class='line'>661</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">lazyNew</span><span class="PUNC">;</span><span class="WHIT">
|
669
|
+
<span class='line'>662</span> </span><span class="PUNC">}</span><span class="WHIT">
|
670
|
+
<span class='line'>663</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">
|
671
|
+
<span class='line'>664</span>
|
672
|
+
<span class='line'>665</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">rio.CollectionEntity.create</span><span class="PUNC">(</span><span class="PUNC">{</span><span class="WHIT">
|
673
|
+
<span class='line'>666</span> </span><span class="NAME">model</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">model</span><span class="PUNC">,</span><span class="WHIT">
|
674
|
+
<span class='line'>667</span> </span><span class="NAME">values</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">results</span><span class="PUNC">,</span><span class="WHIT">
|
675
|
+
<span class='line'>668</span> </span><span class="NAME">condition</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">parameters.conditionFunction</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT">
|
676
|
+
<span class='line'>669</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
677
|
+
<span class='line'>670</span> </span><span class="NAME">collectionEntity.prepare</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">
|
678
|
+
<span class='line'>671</span> </span><span class="NAME">collectionEntity.prepare</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Prototype.emptyFunction</span><span class="PUNC">;</span><span class="WHIT">
|
679
|
+
<span class='line'>672</span> </span><span class="COMM">// prevent the initialization from double adding the entities</span><span class="WHIT">
|
680
|
+
<span class='line'>673</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">oldAdd</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.add</span><span class="PUNC">;</span><span class="WHIT">
|
681
|
+
<span class='line'>674</span> </span><span class="KEYW">try</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
682
|
+
<span class='line'>675</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">;</span><span class="WHIT">
|
683
|
+
<span class='line'>676</span> </span><span class="NAME">this.add</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Prototype.emptyFunction</span><span class="PUNC">;</span><span class="WHIT">
|
684
|
+
<span class='line'>677</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">timesToLoop</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.length</span><span class="PUNC">;</span><span class="WHIT">
|
685
|
+
<span class='line'>678</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">toRemove</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">
|
686
|
+
<span class='line'>679</span> </span><span class="KEYW">for</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">i</span><span class="PUNC">=</span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC"><</span><span class="NAME">timesToLoop</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">++</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
687
|
+
<span class='line'>680</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="KEYW">this</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">__lazyNew</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
688
|
+
<span class='line'>681</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">modelInstance</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">this</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
689
|
+
<span class='line'>682</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">this.include</span><span class="PUNC">(</span><span class="NAME">modelInstance</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
690
|
+
<span class='line'>683</span> </span><span class="KEYW">this</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">modelInstance</span><span class="PUNC">;</span><span class="WHIT">
|
691
|
+
<span class='line'>684</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">
|
692
|
+
<span class='line'>685</span> </span><span class="NAME">toRemove.push</span><span class="PUNC">(</span><span class="NAME">i</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
693
|
+
<span class='line'>686</span> </span><span class="PUNC">}</span><span class="WHIT">
|
694
|
+
<span class='line'>687</span> </span><span class="PUNC">}</span><span class="WHIT">
|
695
|
+
<span class='line'>688</span> </span><span class="PUNC">}</span><span class="WHIT">
|
696
|
+
<span class='line'>689</span> </span><span class="KEYW">for</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">i</span><span class="PUNC">=</span><span class="NAME">toRemove.length</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">--</span><span class="PUNC">;</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
697
|
+
<span class='line'>690</span> </span><span class="NAME">this.splice</span><span class="PUNC">(</span><span class="NAME">toRemove</span><span class="PUNC">[</span><span class="NAME">i</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">
|
698
|
+
<span class='line'>691</span> </span><span class="PUNC">}</span><span class="WHIT">
|
699
|
+
<span class='line'>692</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">finally</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
700
|
+
<span class='line'>693</span> </span><span class="NAME">this.add</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">oldAdd</span><span class="PUNC">;</span><span class="WHIT">
|
701
|
+
<span class='line'>694</span> </span><span class="PUNC">}</span><span class="WHIT">
|
702
|
+
<span class='line'>695</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
703
|
+
<span class='line'>696</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">
|
704
|
+
<span class='line'>697</span> </span><span class="COMM">// Ultimately we shouldn't need to do this</span><span class="WHIT">
|
705
|
+
<span class='line'>698</span> </span><span class="COMM">// This is required if when parsing eager loaded json collections</span><span class="WHIT">
|
706
|
+
<span class='line'>699</span> </span><span class="COMM">// contain individual entities that need to be added to other collection entities</span><span class="WHIT">
|
707
|
+
<span class='line'>700</span> </span><span class="COMM">// and the entity representing the eager collection is never loaded, hence prepared.</span><span class="WHIT">
|
708
|
+
<span class='line'>701</span> </span><span class="NAME">collectionEntity.prepare</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
709
|
+
<span class='line'>702</span> </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="PUNC">;</span><span class="WHIT">
|
710
|
+
<span class='line'>703</span> </span><span class="NAME">this.putCollectionEntity</span><span class="PUNC">(</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">Object.toJSON</span><span class="PUNC">(</span><span class="NAME">parameters.ajaxParameters</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">collectionEntity</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
711
|
+
<span class='line'>704</span>
|
712
|
+
<span class='line'>705</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">collectionEntity</span><span class="PUNC">;</span><span class="WHIT">
|
713
|
+
<span class='line'>706</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
714
|
+
<span class='line'>707</span>
|
715
|
+
<span class='line'>708</span> </span><span class="NAME">_clientOnlyAttrs</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="PUNC">]</span><span class="PUNC">,</span><span class="WHIT">
|
716
|
+
<span class='line'>709</span>
|
717
|
+
<span class='line'>710</span> </span><span class="NAME">clientOnlyAttr</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">attrName</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
718
|
+
<span class='line'>711</span> </span><span class="NAME">this._clientOnlyAttrs.push</span><span class="PUNC">(</span><span class="NAME">attrName</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
719
|
+
<span class='line'>712</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
720
|
+
<span class='line'>713</span>
|
721
|
+
<span class='line'>714</span> </span><span class="NAME">_identityCache</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
722
|
+
<span class='line'>715</span>
|
723
|
+
<span class='line'>716</span> </span><span class="NAME">getFromCache</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">id</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
724
|
+
<span class='line'>717</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">id</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">return</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
725
|
+
<span class='line'>718</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this._identityCache</span><span class="PUNC">[</span><span class="NAME">id.cacheKey</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="NAME">id.cacheKey</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">id</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">this._identityCache</span><span class="PUNC">[</span><span class="NAME">model.id</span><span class="PUNC">(</span><span class="NAME">id</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">model.id</span><span class="PUNC">(</span><span class="NAME">id</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">cacheKey</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
726
|
+
<span class='line'>719</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
727
|
+
<span class='line'>720</span>
|
728
|
+
<span class='line'>721</span> </span><span class="NAME">putInCache</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">id</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">value</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
729
|
+
<span class='line'>722</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">cacheKey</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">id.cacheKey</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="NAME">id.cacheKey</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">id</span><span class="PUNC">;</span><span class="WHIT">
|
730
|
+
<span class='line'>723</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">this._identityCache</span><span class="PUNC">[</span><span class="NAME">cacheKey</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NAME">value</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
731
|
+
<span class='line'>724</span> </span><span class="KEYW">return</span><span class="PUNC">;</span><span class="WHIT">
|
732
|
+
<span class='line'>725</span> </span><span class="PUNC">}</span><span class="WHIT">
|
733
|
+
<span class='line'>726</span> </span><span class="NAME">this._identityCache</span><span class="PUNC">[</span><span class="NAME">cacheKey</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">value</span><span class="PUNC">;</span><span class="WHIT">
|
734
|
+
<span class='line'>727</span> </span><span class="NAME">this.addToCollectionEntities</span><span class="PUNC">(</span><span class="NAME">value</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
735
|
+
<span class='line'>728</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
736
|
+
<span class='line'>729</span>
|
737
|
+
<span class='line'>730</span> </span><span class="NAME">removeFromCache</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">id</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
738
|
+
<span class='line'>731</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">cacheKey</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">id.cacheKey</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="NAME">id.cacheKey</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">id</span><span class="PUNC">;</span><span class="WHIT">
|
739
|
+
<span class='line'>732</span> </span><span class="KEYW">delete</span><span class="WHIT"> </span><span class="NAME">this._identityCache</span><span class="PUNC">[</span><span class="NAME">cacheKey</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
740
|
+
<span class='line'>733</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
741
|
+
<span class='line'>734</span>
|
742
|
+
<span class='line'>735</span> </span><span class="NAME">_collectionEntities</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
743
|
+
<span class='line'>736</span> </span><span class="NAME">putCollectionEntity</span><span class="PUNC">:</span><span class="WHIT"> </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="NAME">value</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
744
|
+
<span class='line'>737</span> </span><span class="NAME">this._collectionEntities</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><span class="NAME">value</span><span class="PUNC">;</span><span class="WHIT">
|
745
|
+
<span class='line'>738</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
746
|
+
<span class='line'>739</span>
|
747
|
+
<span class='line'>740</span> </span><span class="NAME">addToCollectionEntities</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">value</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
748
|
+
<span class='line'>741</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">ces</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this._collectionEntities</span><span class="PUNC">;</span><span class="WHIT">
|
749
|
+
<span class='line'>742</span> </span><span class="KEYW">for</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">key</span><span class="WHIT"> </span><span class="KEYW">in</span><span class="WHIT"> </span><span class="NAME">ces</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
750
|
+
<span class='line'>743</span> </span><span class="NAME">ces</span><span class="PUNC">[</span><span class="NAME">key</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">add</span><span class="PUNC">(</span><span class="NAME">value</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
751
|
+
<span class='line'>744</span> </span><span class="PUNC">}</span><span class="WHIT">
|
752
|
+
<span class='line'>745</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
753
|
+
<span class='line'>746</span>
|
754
|
+
<span class='line'>747</span> </span><span class="NAME">updateInCollectionEntites</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">value</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
755
|
+
<span class='line'>748</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">ces</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this._collectionEntities</span><span class="PUNC">;</span><span class="WHIT">
|
756
|
+
<span class='line'>749</span> </span><span class="KEYW">for</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">key</span><span class="WHIT"> </span><span class="KEYW">in</span><span class="WHIT"> </span><span class="NAME">ces</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
757
|
+
<span class='line'>750</span> </span><span class="NAME">ces</span><span class="PUNC">[</span><span class="NAME">key</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">update</span><span class="PUNC">(</span><span class="NAME">value</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
758
|
+
<span class='line'>751</span> </span><span class="PUNC">}</span><span class="WHIT">
|
759
|
+
<span class='line'>752</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
760
|
+
<span class='line'>753</span>
|
761
|
+
<span class='line'>754</span> </span><span class="NAME">removeFromCollectionEntities</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">value</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
762
|
+
<span class='line'>755</span> </span><span class="NAME">Object.values</span><span class="PUNC">(</span><span class="NAME">this._collectionEntities</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">collectionEntity</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
763
|
+
<span class='line'>756</span> </span><span class="NAME">collectionEntity.remove</span><span class="PUNC">(</span><span class="NAME">value</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
764
|
+
<span class='line'>757</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
765
|
+
<span class='line'>758</span> </span><span class="PUNC">}</span><span class="WHIT">
|
766
|
+
<span class='line'>759</span>
|
767
|
+
<span class='line'>760</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
768
|
+
<span class='line'>761</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
769
|
+
<span class='line'>762</span>
|
770
|
+
<span class='line'>763</span> </span><span class="NAME">hasChannel</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">
|
771
|
+
<span class='line'>764</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
772
|
+
<span class='line'>765</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
773
|
+
<span class='line'>766</span>
|
774
|
+
<span class='line'>767</span> </span><span class="NAME">channel</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">
|
775
|
+
<span class='line'>768</span> </span><span class="NAME">model.addMethods</span><span class="PUNC">(</span><span class="PUNC">{</span><span class="WHIT">
|
776
|
+
<span class='line'>769</span> </span><span class="NAME">broadcast</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">
|
777
|
+
<span class='line'>770</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">args</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">arguments</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
778
|
+
<span class='line'>771</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">methodName</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">args.shift</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
779
|
+
<span class='line'>772</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">body</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
780
|
+
<span class='line'>773</span> </span><span class="NAME">id</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">this.getId</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">toString</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT">
|
781
|
+
<span class='line'>774</span> </span><span class="NAME">method</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">methodName</span><span class="PUNC">,</span><span class="WHIT">
|
782
|
+
<span class='line'>775</span> </span><span class="NAME">args</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">args</span><span class="WHIT">
|
783
|
+
<span class='line'>776</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
784
|
+
<span class='line'>777</span>
|
785
|
+
<span class='line'>778</span> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">Ajax.Request</span><span class="PUNC">(</span><span class="STRN">"/push/broadcast"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
786
|
+
<span class='line'>779</span> </span><span class="NAME">asynchronous</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">,</span><span class="WHIT">
|
787
|
+
<span class='line'>780</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">
|
788
|
+
<span class='line'>781</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">
|
789
|
+
<span class='line'>782</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">
|
790
|
+
<span class='line'>783</span> </span><span class="NAME">parameters</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
791
|
+
<span class='line'>784</span> </span><span class="NAME">channel</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">this.channelName</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT">
|
792
|
+
<span class='line'>785</span> </span><span class="NAME">message</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">Object.toJSON</span><span class="PUNC">(</span><span class="NAME">body</span><span class="PUNC">)</span><span class="WHIT">
|
793
|
+
<span class='line'>786</span> </span><span class="PUNC">}</span><span class="WHIT">
|
794
|
+
<span class='line'>787</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
795
|
+
<span class='line'>788</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
796
|
+
<span class='line'>789</span>
|
797
|
+
<span class='line'>790</span> </span><span class="NAME">channelName</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">
|
798
|
+
<span class='line'>791</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">model</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">this.getId</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
799
|
+
<span class='line'>792</span> </span><span class="PUNC">}</span><span class="WHIT">
|
800
|
+
<span class='line'>793</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
801
|
+
<span class='line'>794</span>
|
802
|
+
<span class='line'>795</span> </span><span class="NAME">Object.extend</span><span class="PUNC">(</span><span class="NAME">model</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
803
|
+
<span class='line'>796</span> </span><span class="NAME">hasChannel</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="PUNC">,</span><span class="WHIT">
|
804
|
+
<span class='line'>797</span>
|
805
|
+
<span class='line'>798</span> </span><span class="NAME">receiveBroadcast</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">
|
806
|
+
<span class='line'>799</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">instance</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">model.getFromCache</span><span class="PUNC">(</span><span class="NAME">model.id</span><span class="PUNC">(</span><span class="NAME">options.id</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
807
|
+
<span class='line'>800</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">instance</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
808
|
+
<span class='line'>801</span> </span><span class="NAME">instance</span><span class="PUNC">[</span><span class="NAME">options.method</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">apply</span><span class="PUNC">(</span><span class="NAME">instance</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">options.args</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
809
|
+
<span class='line'>802</span> </span><span class="PUNC">}</span><span class="WHIT">
|
810
|
+
<span class='line'>803</span> </span><span class="PUNC">}</span><span class="WHIT">
|
811
|
+
<span class='line'>804</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
812
|
+
<span class='line'>805</span> </span><span class="PUNC">}</span><span class="WHIT">
|
813
|
+
<span class='line'>806</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
814
|
+
<span class='line'>807</span>
|
815
|
+
<span class='line'>808</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">args.length</span><span class="WHIT"> </span><span class="PUNC">></span><span class="WHIT"> </span><span class="NUMB">0</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">args.last</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">!=</span><span class="WHIT"> </span><span class="NAME">undefined</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="PUNC">!</span><span class="NAME">args.last</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">ATTR</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
816
|
+
<span class='line'>809</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">initializers</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">args.last</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
817
|
+
<span class='line'>810</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">Object.isString</span><span class="PUNC">(</span><span class="NAME">initializers.resource</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
818
|
+
<span class='line'>811</span> </span><span class="NAME">model.resource</span><span class="PUNC">(</span><span class="NAME">initializers.resource</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
819
|
+
<span class='line'>812</span> </span><span class="PUNC">}</span><span class="WHIT">
|
820
|
+
<span class='line'>813</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">initializers.channel</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
821
|
+
<span class='line'>814</span> </span><span class="NAME">model.channel</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
822
|
+
<span class='line'>815</span> </span><span class="PUNC">}</span><span class="WHIT">
|
823
|
+
<span class='line'>816</span>
|
824
|
+
<span class='line'>817</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">initializers.hasMany</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
825
|
+
<span class='line'>818</span> </span><span class="NAME">initializers.hasMany.each</span><span class="PUNC">(</span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">h</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
826
|
+
<span class='line'>819</span> </span><span class="NAME">model.hasMany</span><span class="PUNC">(</span><span class="NAME">h</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
827
|
+
<span class='line'>820</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
828
|
+
<span class='line'>821</span> </span><span class="PUNC">}</span><span class="WHIT">
|
829
|
+
<span class='line'>822</span>
|
830
|
+
<span class='line'>823</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">initializers.belongsTo</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
831
|
+
<span class='line'>824</span> </span><span class="NAME">initializers.belongsTo.each</span><span class="PUNC">(</span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">h</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
832
|
+
<span class='line'>825</span> </span><span class="NAME">model.belongsTo</span><span class="PUNC">(</span><span class="NAME">h</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
833
|
+
<span class='line'>826</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
834
|
+
<span class='line'>827</span> </span><span class="PUNC">}</span><span class="WHIT">
|
835
|
+
<span class='line'>828</span>
|
836
|
+
<span class='line'>829</span> </span><span class="PUNC">(</span><span class="NAME">initializers.clientOnlyAttrs</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="NAME">each</span><span class="PUNC">(</span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">clientOnlyAttr</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
837
|
+
<span class='line'>830</span> </span><span class="NAME">model.clientOnlyAttr</span><span class="PUNC">(</span><span class="NAME">clientOnlyAttr</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
838
|
+
<span class='line'>831</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
839
|
+
<span class='line'>832</span>
|
840
|
+
<span class='line'>833</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">initializers.undoEnabled</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
841
|
+
<span class='line'>834</span> </span><span class="NAME">model.undoEnabled</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">
|
842
|
+
<span class='line'>835</span> </span><span class="PUNC">}</span><span class="WHIT">
|
843
|
+
<span class='line'>836</span>
|
844
|
+
<span class='line'>837</span> </span><span class="NAME">rio.Model.extend</span><span class="PUNC">(</span><span class="NAME">model</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">initializers.methods</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">
|
845
|
+
<span class='line'>838</span> </span><span class="PUNC">}</span><span class="WHIT">
|
846
|
+
<span class='line'>839</span>
|
847
|
+
<span class='line'>840</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">model</span><span class="PUNC">;</span><span class="WHIT">
|
848
|
+
<span class='line'>841</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
849
|
+
<span class='line'>842</span>
|
850
|
+
<span class='line'>843</span> </span><span class="NAME">_findAllRequests</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="PUNC">]</span><span class="PUNC">,</span><span class="WHIT">
|
851
|
+
<span class='line'>844</span> </span><span class="NAME">afterActiveQueries</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">fcn</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
852
|
+
<span class='line'>845</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">count</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">
|
853
|
+
<span class='line'>846</span> </span><span class="NAME">this._findAllRequests.each</span><span class="PUNC">(</span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">far</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
854
|
+
<span class='line'>847</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">far._complete</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">
|
855
|
+
<span class='line'>848</span> </span><span class="NAME">count</span><span class="PUNC">++</span><span class="PUNC">;</span><span class="WHIT">
|
856
|
+
<span class='line'>849</span> </span><span class="NAME">far.options.onComplete</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">far.options.onComplete</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">Prototype.emptyFunction</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">wrap</span><span class="PUNC">(</span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">proceed</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
857
|
+
<span class='line'>850</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">ret</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">proceed</span><span class="PUNC">(</span><span class="NAME">arguments</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
858
|
+
<span class='line'>851</span> </span><span class="NAME">count</span><span class="PUNC">--</span><span class="PUNC">;</span><span class="WHIT">
|
859
|
+
<span class='line'>852</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">count</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><span class="NAME">fcn</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
860
|
+
<span class='line'>853</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">ret</span><span class="PUNC">;</span><span class="WHIT">
|
861
|
+
<span class='line'>854</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
862
|
+
<span class='line'>855</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
863
|
+
<span class='line'>856</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">count</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><span class="NAME">fcn</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
864
|
+
<span class='line'>857</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
865
|
+
<span class='line'>858</span>
|
866
|
+
<span class='line'>859</span> </span><span class="NAME">filterJson</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">json</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
867
|
+
<span class='line'>860</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">json.attributes</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="NAME">json.attributes</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
868
|
+
<span class='line'>861</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">rio.environment.includeRootInJson</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="NAME">Object.values</span><span class="PUNC">(</span><span class="NAME">json</span><span class="PUNC">)</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">json</span><span class="PUNC">;</span><span class="WHIT">
|
869
|
+
<span class='line'>862</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
870
|
+
<span class='line'>863</span>
|
871
|
+
<span class='line'>864</span> </span><span class="NAME">remoteCreate</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">
|
872
|
+
<span class='line'>865</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">options.transactionKey</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NAME">rio.environment.transactionKey</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">
|
873
|
+
<span class='line'>866</span> </span><span class="KEYW">try</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
874
|
+
<span class='line'>867</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">results</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">rio.Model.doRemoteCreate</span><span class="PUNC">(</span><span class="NAME">options</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
875
|
+
<span class='line'>868</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">results.undoFunction</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
876
|
+
<span class='line'>869</span> </span><span class="NAME">rio.Undo.registerUndo</span><span class="PUNC">(</span><span class="NAME">results.undoFunction</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
877
|
+
<span class='line'>870</span> </span><span class="PUNC">}</span><span class="WHIT">
|
878
|
+
<span class='line'>871</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">
|
879
|
+
<span class='line'>872</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">"Remote create error!"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
880
|
+
<span class='line'>873</span> </span><span class="PUNC">}</span><span class="WHIT">
|
881
|
+
<span class='line'>874</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
882
|
+
<span class='line'>875</span>
|
883
|
+
<span class='line'>876</span> </span><span class="NAME">remoteUpdate</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">
|
884
|
+
<span class='line'>877</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">options.transactionKey</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NAME">rio.environment.transactionKey</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">
|
885
|
+
<span class='line'>878</span> </span><span class="KEYW">try</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
886
|
+
<span class='line'>879</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">results</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">rio.Model.doRemoteUpdate</span><span class="PUNC">(</span><span class="NAME">options</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
887
|
+
<span class='line'>880</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">results.undoFunction</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
888
|
+
<span class='line'>881</span> </span><span class="NAME">rio.Undo.registerUndo</span><span class="PUNC">(</span><span class="NAME">results.undoFunction</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
889
|
+
<span class='line'>882</span> </span><span class="PUNC">}</span><span class="WHIT">
|
890
|
+
<span class='line'>883</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">
|
891
|
+
<span class='line'>884</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">"Remote update error!"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
892
|
+
<span class='line'>885</span> </span><span class="PUNC">}</span><span class="WHIT">
|
893
|
+
<span class='line'>886</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
894
|
+
<span class='line'>887</span>
|
895
|
+
<span class='line'>888</span> </span><span class="NAME">remoteDestroy</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">
|
896
|
+
<span class='line'>889</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">options.transactionKey</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NAME">rio.environment.transactionKey</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">
|
897
|
+
<span class='line'>890</span> </span><span class="KEYW">try</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
898
|
+
<span class='line'>891</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">results</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">rio.Model.doRemoteDestroy</span><span class="PUNC">(</span><span class="NAME">options</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
899
|
+
<span class='line'>892</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">results.undoFunction</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
900
|
+
<span class='line'>893</span> </span><span class="NAME">rio.Undo.registerUndo</span><span class="PUNC">(</span><span class="NAME">results.undoFunction</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
901
|
+
<span class='line'>894</span> </span><span class="PUNC">}</span><span class="WHIT">
|
902
|
+
<span class='line'>895</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">
|
903
|
+
<span class='line'>896</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">"Remote destroy error!"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
904
|
+
<span class='line'>897</span> </span><span class="PUNC">}</span><span class="WHIT">
|
905
|
+
<span class='line'>898</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
906
|
+
<span class='line'>899</span>
|
907
|
+
<span class='line'>900</span> </span><span class="NAME">doRemoteCreate</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">
|
908
|
+
<span class='line'>901</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">model</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">rio.models</span><span class="PUNC">[</span><span class="NAME">options.name</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
909
|
+
<span class='line'>902</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">fromCache</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">model.getFromCache</span><span class="PUNC">(</span><span class="NAME">model.id</span><span class="PUNC">(</span><span class="NAME">options.id</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
910
|
+
<span class='line'>903</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">fromCache</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
911
|
+
<span class='line'>904</span> </span><span class="NAME">fromCache</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">model</span><span class="PUNC">(</span><span class="NAME">model._filterAndProcessJson</span><span class="PUNC">(</span><span class="NAME">options.json</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
912
|
+
<span class='line'>905</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">
|
913
|
+
<span class='line'>906</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
914
|
+
<span class='line'>907</span> </span><span class="PUNC">}</span><span class="WHIT">
|
915
|
+
<span class='line'>908</span>
|
916
|
+
<span class='line'>909</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
917
|
+
<span class='line'>910</span> </span><span class="NAME">undoFunction</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">model.undoEnabled</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">
|
918
|
+
<span class='line'>911</span> </span><span class="NAME">model.getFromCache</span><span class="PUNC">(</span><span class="NAME">fromCache.getId</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">destroy</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
919
|
+
<span class='line'>912</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">null</span><span class="WHIT">
|
920
|
+
<span class='line'>913</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
921
|
+
<span class='line'>914</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
922
|
+
<span class='line'>915</span>
|
923
|
+
<span class='line'>916</span> </span><span class="NAME">doRemoteUpdate</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">
|
924
|
+
<span class='line'>917</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">model</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">rio.models</span><span class="PUNC">[</span><span class="NAME">options.name</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
925
|
+
<span class='line'>918</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">instance</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">model.getFromCache</span><span class="PUNC">(</span><span class="NAME">model.id</span><span class="PUNC">(</span><span class="NAME">options.id</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
926
|
+
<span class='line'>919</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">instance</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
927
|
+
<span class='line'>920</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
928
|
+
<span class='line'>921</span> </span><span class="PUNC">}</span><span class="WHIT">
|
929
|
+
<span class='line'>922</span>
|
930
|
+
<span class='line'>923</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">json</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">model._filterAndProcessJson</span><span class="PUNC">(</span><span class="NAME">options.json</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
931
|
+
<span class='line'>924</span>
|
932
|
+
<span class='line'>925</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">results</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">
|
933
|
+
<span class='line'>926</span>
|
934
|
+
<span class='line'>927</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">model.undoEnabled</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
935
|
+
<span class='line'>928</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">oldState</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">instance.attributeState</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
936
|
+
<span class='line'>929</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">processUndo</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">
|
937
|
+
<span class='line'>930</span> </span><span class="NAME">model.getFromCache</span><span class="PUNC">(</span><span class="NAME">instance.getId</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">updateAttributes</span><span class="PUNC">(</span><span class="NAME">oldState</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
938
|
+
<span class='line'>931</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
939
|
+
<span class='line'>932</span> </span><span class="NAME">results.undoFunction</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">processUndo</span><span class="PUNC">;</span><span class="WHIT">
|
940
|
+
<span class='line'>933</span> </span><span class="PUNC">}</span><span class="WHIT">
|
941
|
+
<span class='line'>934</span>
|
942
|
+
<span class='line'>935</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">attributes</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">json</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">without</span><span class="PUNC">(</span><span class="STRN">"id"</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">inject</span><span class="PUNC">(</span><span class="PUNC">{</span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">acc</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">k</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
943
|
+
<span class='line'>936</span> </span><span class="NAME">acc</span><span class="PUNC">[</span><span class="NAME">k.camelize</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">json</span><span class="PUNC">[</span><span class="NAME">k</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
944
|
+
<span class='line'>937</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">acc</span><span class="PUNC">;</span><span class="WHIT">
|
945
|
+
<span class='line'>938</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
946
|
+
<span class='line'>939</span> </span><span class="NAME">instance.updateAttributes</span><span class="PUNC">(</span><span class="NAME">attributes</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT"> </span><span class="NAME">skipSave</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">
|
947
|
+
<span class='line'>940</span> </span><span class="NAME">rio.models</span><span class="PUNC">[</span><span class="NAME">options.name</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">updateInCollectionEntites</span><span class="PUNC">(</span><span class="NAME">instance</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
948
|
+
<span class='line'>941</span>
|
949
|
+
<span class='line'>942</span> </span><span class="NAME">instance._lastSavedState</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">instance.attributeState</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
950
|
+
<span class='line'>943</span>
|
951
|
+
<span class='line'>944</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">results</span><span class="PUNC">;</span><span class="WHIT">
|
952
|
+
<span class='line'>945</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
953
|
+
<span class='line'>946</span>
|
954
|
+
<span class='line'>947</span> </span><span class="NAME">doRemoteDestroy</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">
|
955
|
+
<span class='line'>948</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">model</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">rio.models</span><span class="PUNC">[</span><span class="NAME">options.name</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
956
|
+
<span class='line'>949</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">fromCache</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">model.getFromCache</span><span class="PUNC">(</span><span class="NAME">model.id</span><span class="PUNC">(</span><span class="NAME">options.id</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
957
|
+
<span class='line'>950</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">results</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">
|
958
|
+
<span class='line'>951</span>
|
959
|
+
<span class='line'>952</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">fromCache</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
960
|
+
<span class='line'>953</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">model.undoEnabled</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
961
|
+
<span class='line'>954</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">oldState</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">fromCache.attributeState</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
962
|
+
<span class='line'>955</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">processUndo</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">
|
963
|
+
<span class='line'>956</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">instance</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">model</span><span class="PUNC">(</span><span class="NAME">Object.extend</span><span class="PUNC">(</span><span class="PUNC">{</span><span class="NAME">id</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">fromCache.getId</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">oldState</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
964
|
+
<span class='line'>957</span> </span><span class="NAME">instance._lastSavedState</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">
|
965
|
+
<span class='line'>958</span> </span><span class="NAME">instance.save</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
966
|
+
<span class='line'>959</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
967
|
+
<span class='line'>960</span> </span><span class="NAME">results.undoFunction</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">processUndo</span><span class="PUNC">;</span><span class="WHIT">
|
968
|
+
<span class='line'>961</span> </span><span class="PUNC">}</span><span class="WHIT">
|
969
|
+
<span class='line'>962</span>
|
970
|
+
<span class='line'>963</span> </span><span class="NAME">fromCache.removeFromCaches</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
971
|
+
<span class='line'>964</span>
|
972
|
+
<span class='line'>965</span> </span><span class="NAME">fromCache.fire</span><span class="PUNC">(</span><span class="STRN">"destroy"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
973
|
+
<span class='line'>966</span> </span><span class="PUNC">}</span><span class="WHIT">
|
974
|
+
<span class='line'>967</span>
|
975
|
+
<span class='line'>968</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">results</span><span class="PUNC">;</span><span class="WHIT">
|
976
|
+
<span class='line'>969</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
977
|
+
<span class='line'>970</span>
|
978
|
+
<span class='line'>971</span> </span><span class="NAME">remoteTransaction</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">transactionData</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
979
|
+
<span class='line'>972</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">transactionData.transactionKey</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NAME">rio.environment.transactionKey</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">
|
980
|
+
<span class='line'>973</span> </span><span class="KEYW">try</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
981
|
+
<span class='line'>974</span> </span><span class="COMM">// TODO: Two potential bugs here</span><span class="WHIT">
|
982
|
+
<span class='line'>975</span> </span><span class="COMM">//</span><span class="WHIT">
|
983
|
+
<span class='line'>976</span> </span><span class="COMM">// 1) Need to execute this in a rio.Attr.transaction</span><span class="WHIT">
|
984
|
+
<span class='line'>977</span> </span><span class="COMM">// 2) Need to get back the collection entity process functions from _filterAndProcessJsonWhileAccumulatingCollectionEntities</span><span class="WHIT">
|
985
|
+
<span class='line'>978</span> </span><span class="COMM">// and run them at the end. Otherwise we might have reification collisions.</span><span class="WHIT">
|
986
|
+
<span class='line'>979</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">resultSets</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">transactionData.transaction.map</span><span class="PUNC">(</span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">t</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
987
|
+
<span class='line'>980</span> </span><span class="KEYW">switch</span><span class="PUNC">(</span><span class="NAME">t.action</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
988
|
+
<span class='line'>981</span> </span><span class="KEYW">case</span><span class="WHIT"> </span><span class="STRN">"create"</span><span class="PUNC">:</span><span class="WHIT">
|
989
|
+
<span class='line'>982</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">rio.Model.doRemoteCreate</span><span class="PUNC">(</span><span class="NAME">t</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
990
|
+
<span class='line'>983</span> </span><span class="KEYW">case</span><span class="WHIT"> </span><span class="STRN">"update"</span><span class="PUNC">:</span><span class="WHIT">
|
991
|
+
<span class='line'>984</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">rio.Model.doRemoteUpdate</span><span class="PUNC">(</span><span class="NAME">t</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
992
|
+
<span class='line'>985</span> </span><span class="KEYW">case</span><span class="WHIT"> </span><span class="STRN">"destroy"</span><span class="PUNC">:</span><span class="WHIT">
|
993
|
+
<span class='line'>986</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">rio.Model.doRemoteDestroy</span><span class="PUNC">(</span><span class="NAME">t</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
994
|
+
<span class='line'>987</span> </span><span class="PUNC">}</span><span class="WHIT">
|
995
|
+
<span class='line'>988</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
996
|
+
<span class='line'>989</span>
|
997
|
+
<span class='line'>990</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">undos</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">resultSets.map</span><span class="PUNC">(</span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">r</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="NAME">r.undoFunction</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">compact</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
998
|
+
<span class='line'>991</span>
|
999
|
+
<span class='line'>992</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">undos.empty</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
1000
|
+
<span class='line'>993</span> </span><span class="NAME">rio.Undo.registerUndo</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">
|
1001
|
+
<span class='line'>994</span> </span><span class="NAME">undos.each</span><span class="PUNC">(</span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">undo</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
1002
|
+
<span class='line'>995</span> </span><span class="NAME">undo</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
1003
|
+
<span class='line'>996</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
1004
|
+
<span class='line'>997</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
1005
|
+
<span class='line'>998</span> </span><span class="PUNC">}</span><span class="WHIT">
|
1006
|
+
<span class='line'>999</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">
|
1007
|
+
<span class='line'>1000</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">"Remote transaction error!"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
1008
|
+
<span class='line'>1001</span> </span><span class="PUNC">}</span><span class="WHIT">
|
1009
|
+
<span class='line'>1002</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
1010
|
+
<span class='line'>1003</span>
|
1011
|
+
<span class='line'>1004</span> </span><span class="NAME">extend</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">model</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">extension</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
1012
|
+
<span class='line'>1005</span>
|
1013
|
+
<span class='line'>1006</span> </span><span class="NAME">extension.__initialize</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">extension.initialize</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">Prototype.emptyFunction</span><span class="PUNC">;</span><span class="WHIT">
|
1014
|
+
<span class='line'>1007</span> </span><span class="NAME">extension.initialize</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">options</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
1015
|
+
<span class='line'>1008</span> </span><span class="NAME">this.__model</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">model</span><span class="PUNC">;</span><span class="WHIT">
|
1016
|
+
<span class='line'>1009</span>
|
1017
|
+
<span class='line'>1010</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">options.id</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NAME">undefined</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">model.url</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
1018
|
+
<span class='line'>1011</span> </span><span class="NAME">options.id</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">model.id</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
1019
|
+
<span class='line'>1012</span> </span><span class="NAME">this._id</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">options.id</span><span class="PUNC">;</span><span class="WHIT">
|
1020
|
+
<span class='line'>1013</span> </span><span class="PUNC">}</span><span class="WHIT">
|
1021
|
+
<span class='line'>1014</span>
|
1022
|
+
<span class='line'>1015</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">options.id</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">options.id.constructor</span><span class="WHIT"> </span><span class="PUNC">!=</span><span class="WHIT"> </span><span class="NAME">rio.Id</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">model.id</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
1023
|
+
<span class='line'>1016</span> </span><span class="NAME">options.id</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">model.id</span><span class="PUNC">(</span><span class="NAME">options.id</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
1024
|
+
<span class='line'>1017</span> </span><span class="NAME">this.setId</span><span class="PUNC">(</span><span class="NAME">options.id</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
1025
|
+
<span class='line'>1018</span> </span><span class="PUNC">}</span><span class="WHIT">
|
1026
|
+
<span class='line'>1019</span>
|
1027
|
+
<span class='line'>1020</span> </span><span class="PUNC">(</span><span class="NAME">this.__initialize.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="NAME">options</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
1028
|
+
<span class='line'>1021</span>
|
1029
|
+
<span class='line'>1022</span> </span><span class="COMM">// Add the hasManyAssocitation#create methods</span><span class="WHIT">
|
1030
|
+
<span class='line'>1023</span> </span><span class="NAME">Object.keys</span><span class="PUNC">(</span><span class="NAME">model._hasManyAssociations</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">hasManyName</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
1031
|
+
<span class='line'>1024</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">model._hasManyAssociations</span><span class="PUNC">[</span><span class="NAME">hasManyName</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
1032
|
+
<span class='line'>1025</span> </span><span class="KEYW">this</span><span class="PUNC">[</span><span class="NAME">hasManyName</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">create</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">createOptions</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
1033
|
+
<span class='line'>1026</span> </span><span class="COMM">// In the case that the entity is still new, we should preload the association</span><span class="WHIT">
|
1034
|
+
<span class='line'>1027</span> </span><span class="COMM">// to make sure no entries are missed</span><span class="WHIT">
|
1035
|
+
<span class='line'>1028</span> </span><span class="COMM">// TODO: before we can wrap in isNew, we need to make the spec fixture proxy include created entities</span><span class="WHIT">
|
1036
|
+
<span class='line'>1029</span> </span><span class="COMM">// if (this.isNew()) {</span><span class="WHIT">
|
1037
|
+
<span class='line'>1030</span> </span><span class="KEYW">this</span><span class="PUNC">[</span><span class="PUNC">(</span><span class="STRN">"get-"</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">hasManyName</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">camelize</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">]</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
1038
|
+
<span class='line'>1031</span> </span><span class="COMM">// }</span><span class="WHIT">
|
1039
|
+
<span class='line'>1032</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">parameters</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Object.clone</span><span class="PUNC">(</span><span class="NAME">options.parameters</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
1040
|
+
<span class='line'>1033</span> </span><span class="NAME">parameters</span><span class="PUNC">[</span><span class="NAME">options.foreignKey</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.getId</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
1041
|
+
<span class='line'>1034</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">rio.models</span><span class="PUNC">[</span><span class="NAME">options.className</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">create</span><span class="PUNC">(</span><span class="NAME">Object.extend</span><span class="PUNC">(</span><span class="NAME">createOptions</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><span class="NAME">parameters</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
1042
|
+
<span class='line'>1035</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="WHIT">
|
1043
|
+
<span class='line'>1036</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">
|
1044
|
+
<span class='line'>1037</span>
|
1045
|
+
<span class='line'>1038</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">model.hasChannel</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
1046
|
+
<span class='line'>1039</span> </span><span class="KEYW">if</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">
|
1047
|
+
<span class='line'>1040</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">addChannel</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">
|
1048
|
+
<span class='line'>1041</span> </span><span class="NAME">rio.push.addChannel</span><span class="PUNC">(</span><span class="NAME">this.channelName</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
1049
|
+
<span class='line'>1042</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="WHIT">
|
1050
|
+
<span class='line'>1043</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">options.id</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">options.id.temporary</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
1051
|
+
<span class='line'>1044</span> </span><span class="NAME">options.id.doAfterReification</span><span class="PUNC">(</span><span class="NAME">addChannel</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
1052
|
+
<span class='line'>1045</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">
|
1053
|
+
<span class='line'>1046</span> </span><span class="NAME">addChannel</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
1054
|
+
<span class='line'>1047</span> </span><span class="PUNC">}</span><span class="WHIT">
|
1055
|
+
<span class='line'>1048</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">
|
1056
|
+
<span class='line'>1049</span> </span><span class="NAME">rio.warn</span><span class="PUNC">(</span><span class="STRN">"Attempted to add a channel without an available push server"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
1057
|
+
<span class='line'>1050</span> </span><span class="PUNC">}</span><span class="WHIT">
|
1058
|
+
<span class='line'>1051</span> </span><span class="PUNC">}</span><span class="WHIT">
|
1059
|
+
<span class='line'>1052</span>
|
1060
|
+
<span class='line'>1053</span> </span><span class="NAME">options</span><span class="WHIT"> </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="WHIT">
|
1061
|
+
<span class='line'>1054</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">options.id</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">model.url</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
1062
|
+
<span class='line'>1055</span> </span><span class="NAME">model.putInCache</span><span class="PUNC">(</span><span class="NAME">options.id</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">this</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
1063
|
+
<span class='line'>1056</span> </span><span class="PUNC">}</span><span class="WHIT">
|
1064
|
+
<span class='line'>1057</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">options.id</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">options.id.temporary</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="PUNC">!</span><span class="NAME">options.id.temporary</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
1065
|
+
<span class='line'>1058</span> </span><span class="NAME">this._lastSavedState</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.attributeState</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
1066
|
+
<span class='line'>1059</span> </span><span class="PUNC">}</span><span class="WHIT">
|
1067
|
+
<span class='line'>1060</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
1068
|
+
<span class='line'>1061</span>
|
1069
|
+
<span class='line'>1062</span> </span><span class="NAME">rio.Attr.extend</span><span class="PUNC">(</span><span class="NAME">model</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">extension</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
1070
|
+
<span class='line'>1063</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
1071
|
+
<span class='line'>1064</span>
|
1072
|
+
<span class='line'>1065</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">
|
1073
|
+
<span class='line'>1066</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="STRN">"Model"</span><span class="PUNC">;</span><span class="WHIT">
|
1074
|
+
<span class='line'>1067</span> </span><span class="PUNC">}</span><span class="WHIT">
|
1075
|
+
<span class='line'>1068</span> </span><span class="PUNC">}</span><span class="PUNC">;</span></pre></body></html>
|