riojs 0.0.4 → 0.0.5
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/public/images/sub-menu-indicator.png +0 -0
- data/public/javascripts/components/alert_box.js +34 -24
- data/public/javascripts/components/grid_view.js +32 -10
- data/public/javascripts/components/input.js +6 -0
- data/public/javascripts/components/lightbox.js +137 -141
- data/public/javascripts/components/list_view.js +2 -2
- data/public/javascripts/components/menu.js +93 -50
- data/public/javascripts/components/overlay.js +117 -118
- data/public/javascripts/components/popup.js +213 -0
- data/public/javascripts/components/toggle_button.js +3 -2
- 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 +1 -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_model.js.html +506 -493
- data/public/javascripts/lib/console/docs/symbols/src/public_javascripts_lib_page.js.html +5 -5
- data/public/javascripts/lib/console/docs/symbols/src/public_javascripts_lib_protohack.js.html +126 -123
- data/public/javascripts/lib/model.js +18 -5
- data/public/javascripts/lib/page.js +5 -5
- data/public/javascripts/lib/protohack.js +12 -9
- data/public/javascripts/specs/lib/model_spec.js +13 -0
- data/public/stylesheets/components/alert_box.css +5 -1
- data/public/stylesheets/components/menu.css +17 -17
- data/public/stylesheets/components/popup.css +18 -0
- metadata +5 -2
@@ -13,10 +13,11 @@ rio.components.ToggleButton = rio.Component.create(rio.components.Base, {
|
|
13
13
|
href: "",
|
14
14
|
onclick: "return false;"
|
15
15
|
});
|
16
|
-
linkHtml.observe("click", function() {
|
16
|
+
linkHtml.observe("click", function(e) {
|
17
17
|
this.setState(!this.getState());
|
18
18
|
this.fire("toggle");
|
19
|
-
|
19
|
+
e.stop();
|
20
|
+
}.bindAsEventListener(this));
|
20
21
|
return linkHtml;
|
21
22
|
}
|
22
23
|
}
|
@@ -573,7 +573,7 @@ ul.inheritsList
|
|
573
573
|
</div>
|
574
574
|
<div class="fineprint" style="clear:both">
|
575
575
|
|
576
|
-
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blankt">JsDoc Toolkit</a> 2.0.2 on
|
576
|
+
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blankt">JsDoc Toolkit</a> 2.0.2 on Mon Apr 26 2010 13:58:23 GMT-0500 (CDT)
|
577
577
|
</div>
|
578
578
|
</body>
|
579
579
|
</html>
|
@@ -317,7 +317,7 @@ ul.inheritsList
|
|
317
317
|
</div>
|
318
318
|
<div class="fineprint" style="clear:both">
|
319
319
|
|
320
|
-
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blankt">JsDoc Toolkit</a> 2.0.2 on
|
320
|
+
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blankt">JsDoc Toolkit</a> 2.0.2 on Mon Apr 26 2010 13:58:23 GMT-0500 (CDT)
|
321
321
|
</div>
|
322
322
|
</body>
|
323
323
|
</html>
|
@@ -285,7 +285,7 @@ ul.inheritsList
|
|
285
285
|
<!-- ============================== footer ================================= -->
|
286
286
|
<div class="fineprint" style="clear:both">
|
287
287
|
|
288
|
-
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.0.2 on
|
288
|
+
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.0.2 on Mon Apr 26 2010 13:58:22 GMT-0500 (CDT)
|
289
289
|
</div>
|
290
290
|
</body>
|
291
291
|
</html>
|
@@ -407,7 +407,7 @@ ul.inheritsList
|
|
407
407
|
<!-- ============================== footer ================================= -->
|
408
408
|
<div class="fineprint" style="clear:both">
|
409
409
|
|
410
|
-
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.0.2 on
|
410
|
+
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.0.2 on Mon Apr 26 2010 13:58:22 GMT-0500 (CDT)
|
411
411
|
</div>
|
412
412
|
</body>
|
413
413
|
</html>
|
@@ -960,7 +960,7 @@ ul.inheritsList
|
|
960
960
|
<!-- ============================== footer ================================= -->
|
961
961
|
<div class="fineprint" style="clear:both">
|
962
962
|
|
963
|
-
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.0.2 on
|
963
|
+
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.0.2 on Mon Apr 26 2010 13:58:23 GMT-0500 (CDT)
|
964
964
|
</div>
|
965
965
|
</body>
|
966
966
|
</html>
|
@@ -1069,7 +1069,7 @@ ul.inheritsList
|
|
1069
1069
|
<!-- ============================== footer ================================= -->
|
1070
1070
|
<div class="fineprint" style="clear:both">
|
1071
1071
|
|
1072
|
-
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.0.2 on
|
1072
|
+
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.0.2 on Mon Apr 26 2010 13:58:23 GMT-0500 (CDT)
|
1073
1073
|
</div>
|
1074
1074
|
</body>
|
1075
1075
|
</html>
|
@@ -266,7 +266,7 @@ ul.inheritsList
|
|
266
266
|
<!-- ============================== footer ================================= -->
|
267
267
|
<div class="fineprint" style="clear:both">
|
268
268
|
|
269
|
-
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.0.2 on
|
269
|
+
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.0.2 on Mon Apr 26 2010 13:58:23 GMT-0500 (CDT)
|
270
270
|
</div>
|
271
271
|
</body>
|
272
272
|
</html>
|
@@ -413,7 +413,7 @@ ul.inheritsList
|
|
413
413
|
<!-- ============================== footer ================================= -->
|
414
414
|
<div class="fineprint" style="clear:both">
|
415
415
|
|
416
|
-
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.0.2 on
|
416
|
+
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.0.2 on Mon Apr 26 2010 13:58:23 GMT-0500 (CDT)
|
417
417
|
</div>
|
418
418
|
</body>
|
419
419
|
</html>
|
@@ -537,7 +537,7 @@ ul.inheritsList
|
|
537
537
|
<!-- ============================== footer ================================= -->
|
538
538
|
<div class="fineprint" style="clear:both">
|
539
539
|
|
540
|
-
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.0.2 on
|
540
|
+
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.0.2 on Mon Apr 26 2010 13:58:23 GMT-0500 (CDT)
|
541
541
|
</div>
|
542
542
|
</body>
|
543
543
|
</html>
|
@@ -264,7 +264,7 @@ ul.inheritsList
|
|
264
264
|
<!-- ============================== footer ================================= -->
|
265
265
|
<div class="fineprint" style="clear:both">
|
266
266
|
|
267
|
-
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.0.2 on
|
267
|
+
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.0.2 on Mon Apr 26 2010 13:58:23 GMT-0500 (CDT)
|
268
268
|
</div>
|
269
269
|
</body>
|
270
270
|
</html>
|
@@ -385,7 +385,7 @@ ul.inheritsList
|
|
385
385
|
<!-- ============================== footer ================================= -->
|
386
386
|
<div class="fineprint" style="clear:both">
|
387
387
|
|
388
|
-
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.0.2 on
|
388
|
+
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.0.2 on Mon Apr 26 2010 13:58:23 GMT-0500 (CDT)
|
389
389
|
</div>
|
390
390
|
</body>
|
391
391
|
</html>
|
@@ -265,7 +265,7 @@ ul.inheritsList
|
|
265
265
|
<!-- ============================== footer ================================= -->
|
266
266
|
<div class="fineprint" style="clear:both">
|
267
267
|
|
268
|
-
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.0.2 on
|
268
|
+
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.0.2 on Mon Apr 26 2010 13:58:23 GMT-0500 (CDT)
|
269
269
|
</div>
|
270
270
|
</body>
|
271
271
|
</html>
|
@@ -323,7 +323,7 @@ ul.inheritsList
|
|
323
323
|
<!-- ============================== footer ================================= -->
|
324
324
|
<div class="fineprint" style="clear:both">
|
325
325
|
|
326
|
-
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.0.2 on
|
326
|
+
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.0.2 on Mon Apr 26 2010 13:58:23 GMT-0500 (CDT)
|
327
327
|
</div>
|
328
328
|
</body>
|
329
329
|
</html>
|
@@ -816,7 +816,7 @@ ul.inheritsList
|
|
816
816
|
<!-- ============================== footer ================================= -->
|
817
817
|
<div class="fineprint" style="clear:both">
|
818
818
|
|
819
|
-
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.0.2 on
|
819
|
+
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.0.2 on Mon Apr 26 2010 13:58:23 GMT-0500 (CDT)
|
820
820
|
</div>
|
821
821
|
</body>
|
822
822
|
</html>
|
@@ -377,7 +377,7 @@ ul.inheritsList
|
|
377
377
|
<!-- ============================== footer ================================= -->
|
378
378
|
<div class="fineprint" style="clear:both">
|
379
379
|
|
380
|
-
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.0.2 on
|
380
|
+
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.0.2 on Mon Apr 26 2010 13:58:23 GMT-0500 (CDT)
|
381
381
|
</div>
|
382
382
|
</body>
|
383
383
|
</html>
|
@@ -611,7 +611,7 @@ ul.inheritsList
|
|
611
611
|
<!-- ============================== footer ================================= -->
|
612
612
|
<div class="fineprint" style="clear:both">
|
613
613
|
|
614
|
-
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.0.2 on
|
614
|
+
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.0.2 on Mon Apr 26 2010 13:58:23 GMT-0500 (CDT)
|
615
615
|
</div>
|
616
616
|
</body>
|
617
617
|
</html>
|
@@ -500,7 +500,7 @@ iiii jjjj
|
|
500
500
|
<!-- ============================== footer ================================= -->
|
501
501
|
<div class="fineprint" style="clear:both">
|
502
502
|
|
503
|
-
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.0.2 on
|
503
|
+
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.0.2 on Mon Apr 26 2010 13:58:22 GMT-0500 (CDT)
|
504
504
|
</div>
|
505
505
|
</body>
|
506
506
|
</html>
|
@@ -576,500 +576,513 @@
|
|
576
576
|
<span class='line'>569</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
577
577
|
<span class='line'>570</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
578
578
|
<span class='line'>571</span>
|
579
|
-
<span class='line'>572</span> </span><span class="NAME">
|
580
|
-
<span class='line'>573</span>
|
581
|
-
<span class='line'>574</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">
|
582
|
-
<span class='line'>575</span> </span><span class="KEYW">
|
583
|
-
<span class='line'>576</span>
|
584
|
-
<span class='line'>577</span> </span><span class="NAME">
|
585
|
-
<span class='line'>578</span>
|
586
|
-
<span class='line'>579</span>
|
587
|
-
<span class='line'>580</span>
|
588
|
-
<span class='line'>581</span> </span><span class="
|
589
|
-
<span class='line'>582</span> </span><span class="NAME">
|
590
|
-
<span class='line'>583</span>
|
591
|
-
<span class='line'>584</span>
|
592
|
-
<span class='line'>585</span> </span><span class="
|
593
|
-
<span class='line'>586</span>
|
594
|
-
<span class='line'>587</span>
|
595
|
-
<span class='line'>588</span> </span><span class="NAME">this.
|
596
|
-
<span class='line'>589</span>
|
597
|
-
<span class='line'>590</span>
|
598
|
-
<span class='line'>591</span>
|
599
|
-
<span class='line'>592</span>
|
600
|
-
<span class='line'>593</span>
|
601
|
-
<span class='line'>594</span>
|
602
|
-
<span class='line'>595</span> </span><span class="KEYW">
|
603
|
-
<span class='line'>596</span>
|
604
|
-
<span class='line'>597</span>
|
605
|
-
<span class='line'>598</span>
|
606
|
-
<span class='line'>599</span>
|
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> </span><span class="
|
613
|
-
<span class='line'>606</span>
|
614
|
-
<span class='line'>607</span>
|
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> </span><span class="
|
622
|
-
<span class='line'>615</span>
|
623
|
-
<span class='line'>616</span>
|
624
|
-
<span class='line'>617</span>
|
625
|
-
<span class='line'>618</span>
|
626
|
-
<span class='line'>619</span>
|
627
|
-
<span class='line'>620</span> </span><span class="PUNC">
|
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> </span><span class="
|
633
|
-
<span class='line'>626</span>
|
634
|
-
<span class='line'>627</span>
|
635
|
-
<span class='line'>628</span>
|
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="
|
644
|
-
<span class='line'>637</span>
|
645
|
-
<span class='line'>638</span>
|
646
|
-
<span class='line'>639</span> </span><span class="PUNC">
|
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> </span><span class="KEYW">
|
655
|
-
<span class='line'>648</span> </span><span class="
|
656
|
-
<span class='line'>649</span>
|
657
|
-
<span class='line'>650</span>
|
658
|
-
<span class='line'>651</span>
|
659
|
-
<span class='line'>652</span> </span><span class="
|
660
|
-
<span class='line'>653</span>
|
661
|
-
<span class='line'>654</span> </span><span class="
|
662
|
-
<span class='line'>655</span>
|
663
|
-
<span class='line'>656</span>
|
664
|
-
<span class='line'>657</span>
|
665
|
-
<span class='line'>658</span>
|
666
|
-
<span class='line'>659</span> </span><span class="
|
667
|
-
<span class='line'>660</span>
|
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="
|
674
|
-
<span class='line'>667</span>
|
675
|
-
<span class='line'>668</span>
|
676
|
-
<span class='line'>669</span> </span><span class="PUNC">
|
677
|
-
<span class='line'>670</span>
|
678
|
-
<span class='line'>671</span> </span><span class="NAME">
|
679
|
-
<span class='line'>672</span> </span><span class="
|
680
|
-
<span class='line'>673</span>
|
681
|
-
<span class='line'>674</span>
|
682
|
-
<span class='line'>675</span>
|
683
|
-
<span class='line'>676</span>
|
684
|
-
<span class='line'>677</span>
|
685
|
-
<span class='line'>678</span>
|
686
|
-
<span class='line'>679</span> </span><span class="KEYW">
|
687
|
-
<span class='line'>680</span>
|
688
|
-
<span class='line'>681</span>
|
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> </span><span class="PUNC">
|
694
|
-
<span class='line'>687</span>
|
695
|
-
<span class='line'>688</span>
|
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> </span><span class="
|
701
|
-
<span class='line'>694</span>
|
702
|
-
<span class='line'>695</span>
|
703
|
-
<span class='line'>696</span>
|
704
|
-
<span class='line'>697</span>
|
705
|
-
<span class='line'>698</span> </span><span class="
|
706
|
-
<span class='line'>699</span>
|
707
|
-
<span class='line'>700</span>
|
708
|
-
<span class='line'>701</span> </span><span class="
|
709
|
-
<span class='line'>702</span>
|
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> </span><span class="
|
718
|
-
<span class='line'>711</span>
|
719
|
-
<span class='line'>712</span> </span><span class="PUNC">
|
579
|
+
<span class='line'>572</span> </span><span class="NAME">_belongsToAssociations</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
580
|
+
<span class='line'>573</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">
|
581
|
+
<span class='line'>574</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">
|
582
|
+
<span class='line'>575</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">associationName</span><span class="PUNC">;</span><span class="WHIT">
|
583
|
+
<span class='line'>576</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">
|
584
|
+
<span class='line'>577</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">
|
585
|
+
<span class='line'>578</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">
|
586
|
+
<span class='line'>579</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">
|
587
|
+
<span class='line'>580</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">
|
588
|
+
<span class='line'>581</span> </span><span class="PUNC">}</span><span class="WHIT">
|
589
|
+
<span class='line'>582</span> </span><span class="NAME">options.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">
|
590
|
+
<span class='line'>583</span> </span><span class="NAME">options.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">
|
591
|
+
<span class='line'>584</span>
|
592
|
+
<span class='line'>585</span> </span><span class="NAME">this._belongsToAssociations</span><span class="PUNC">[</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">options</span><span class="PUNC">;</span><span class="WHIT">
|
593
|
+
<span class='line'>586</span>
|
594
|
+
<span class='line'>587</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">
|
595
|
+
<span class='line'>588</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">
|
596
|
+
<span class='line'>589</span>
|
597
|
+
<span class='line'>590</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">
|
598
|
+
<span class='line'>591</span>
|
599
|
+
<span class='line'>592</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">
|
600
|
+
<span class='line'>593</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">
|
601
|
+
<span class='line'>594</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">
|
602
|
+
<span class='line'>595</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">options.foreignKey</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
603
|
+
<span class='line'>596</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">options.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">
|
604
|
+
<span class='line'>597</span> </span><span class="NAME">asynchronous</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="WHIT">
|
605
|
+
<span class='line'>598</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
606
|
+
<span class='line'>599</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">
|
607
|
+
<span class='line'>600</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">
|
608
|
+
<span class='line'>601</span> </span><span class="NAME">setAssociation</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="KEYW">this</span><span class="PUNC">[</span><span class="NAME">options.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">
|
610
|
+
<span class='line'>603</span> </span><span class="PUNC">}</span><span class="WHIT">
|
611
|
+
<span class='line'>604</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">
|
612
|
+
<span class='line'>605</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
613
|
+
<span class='line'>606</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
614
|
+
<span class='line'>607</span>
|
615
|
+
<span class='line'>608</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">
|
616
|
+
<span class='line'>609</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">
|
617
|
+
<span class='line'>610</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">
|
618
|
+
<span class='line'>611</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">
|
619
|
+
<span class='line'>612</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">acc</span><span class="PUNC">;</span><span class="WHIT">
|
620
|
+
<span class='line'>613</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="WHIT">
|
621
|
+
<span class='line'>614</span> </span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
622
|
+
<span class='line'>615</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
623
|
+
<span class='line'>616</span>
|
624
|
+
<span class='line'>617</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">
|
625
|
+
<span class='line'>618</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">
|
626
|
+
<span class='line'>619</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">
|
627
|
+
<span class='line'>620</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">
|
628
|
+
<span class='line'>621</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">
|
629
|
+
<span class='line'>622</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">
|
630
|
+
<span class='line'>623</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">
|
631
|
+
<span class='line'>624</span> </span><span class="PUNC">}</span><span class="WHIT">
|
632
|
+
<span class='line'>625</span> </span><span class="PUNC">}</span><span class="WHIT">
|
633
|
+
<span class='line'>626</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
634
|
+
<span class='line'>627</span>
|
635
|
+
<span class='line'>628</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">
|
636
|
+
<span class='line'>629</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">
|
637
|
+
<span class='line'>630</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">
|
638
|
+
<span class='line'>631</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">
|
639
|
+
<span class='line'>632</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
640
|
+
<span class='line'>633</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">
|
641
|
+
<span class='line'>634</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">
|
642
|
+
<span class='line'>635</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">
|
643
|
+
<span class='line'>636</span> </span><span class="PUNC">}</span><span class="WHIT">
|
644
|
+
<span class='line'>637</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
645
|
+
<span class='line'>638</span>
|
646
|
+
<span class='line'>639</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">
|
647
|
+
<span class='line'>640</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">
|
648
|
+
<span class='line'>641</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">
|
649
|
+
<span class='line'>642</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">
|
650
|
+
<span class='line'>643</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
651
|
+
<span class='line'>644</span>
|
652
|
+
<span class='line'>645</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">
|
653
|
+
<span class='line'>646</span> </span><span class="COMM">// In case multiple identical queries were made simultaneously</span><span class="WHIT">
|
654
|
+
<span class='line'>647</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">
|
655
|
+
<span class='line'>648</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">
|
656
|
+
<span class='line'>649</span> </span><span class="PUNC">}</span><span class="WHIT">
|
657
|
+
<span class='line'>650</span>
|
658
|
+
<span class='line'>651</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">
|
659
|
+
<span class='line'>652</span> </span><span class="COMM">// This may cause bugs. It should map the results of _filterAndProcessJsonWhileAccumulatingCollectionEntities</span><span class="WHIT">
|
660
|
+
<span class='line'>653</span> </span><span class="COMM">// and execute them after them map to prevent reification collisions</span><span class="WHIT">
|
661
|
+
<span class='line'>654</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">
|
662
|
+
<span class='line'>655</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">
|
663
|
+
<span class='line'>656</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">
|
664
|
+
<span class='line'>657</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">fromCache</span><span class="PUNC">;</span><span class="WHIT">
|
665
|
+
<span class='line'>658</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">
|
666
|
+
<span class='line'>659</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">
|
667
|
+
<span class='line'>660</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">
|
668
|
+
<span class='line'>661</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">
|
669
|
+
<span class='line'>662</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">
|
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="WHIT">
|
671
|
+
<span class='line'>664</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">
|
672
|
+
<span class='line'>665</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">lazyNew</span><span class="PUNC">;</span><span class="WHIT">
|
673
|
+
<span class='line'>666</span> </span><span class="PUNC">}</span><span class="WHIT">
|
674
|
+
<span class='line'>667</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">
|
675
|
+
<span class='line'>668</span>
|
676
|
+
<span class='line'>669</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">
|
677
|
+
<span class='line'>670</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">
|
678
|
+
<span class='line'>671</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">
|
679
|
+
<span class='line'>672</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">
|
680
|
+
<span class='line'>673</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
681
|
+
<span class='line'>674</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">
|
682
|
+
<span class='line'>675</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">
|
683
|
+
<span class='line'>676</span> </span><span class="COMM">// prevent the initialization from double adding the entities</span><span class="WHIT">
|
684
|
+
<span class='line'>677</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">
|
685
|
+
<span class='line'>678</span> </span><span class="KEYW">try</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
686
|
+
<span class='line'>679</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">;</span><span class="WHIT">
|
687
|
+
<span class='line'>680</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">
|
688
|
+
<span class='line'>681</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">
|
689
|
+
<span class='line'>682</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">
|
690
|
+
<span class='line'>683</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">
|
691
|
+
<span class='line'>684</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">
|
692
|
+
<span class='line'>685</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">
|
693
|
+
<span class='line'>686</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">
|
694
|
+
<span class='line'>687</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">
|
695
|
+
<span class='line'>688</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">
|
696
|
+
<span class='line'>689</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">
|
697
|
+
<span class='line'>690</span> </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">
|
700
|
+
<span class='line'>693</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">
|
701
|
+
<span class='line'>694</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">
|
702
|
+
<span class='line'>695</span> </span><span class="PUNC">}</span><span class="WHIT">
|
703
|
+
<span class='line'>696</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">
|
704
|
+
<span class='line'>697</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">
|
705
|
+
<span class='line'>698</span> </span><span class="PUNC">}</span><span class="WHIT">
|
706
|
+
<span class='line'>699</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
707
|
+
<span class='line'>700</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">
|
708
|
+
<span class='line'>701</span> </span><span class="COMM">// Ultimately we shouldn't need to do this</span><span class="WHIT">
|
709
|
+
<span class='line'>702</span> </span><span class="COMM">// This is required if when parsing eager loaded json collections</span><span class="WHIT">
|
710
|
+
<span class='line'>703</span> </span><span class="COMM">// contain individual entities that need to be added to other collection entities</span><span class="WHIT">
|
711
|
+
<span class='line'>704</span> </span><span class="COMM">// and the entity representing the eager collection is never loaded, hence prepared.</span><span class="WHIT">
|
712
|
+
<span class='line'>705</span> </span><span class="NAME">collectionEntity.prepare</span><span class="PUNC">(</span><span class="PUNC">)</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="NAME">defer</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
714
|
+
<span class='line'>707</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">
|
715
|
+
<span class='line'>708</span>
|
716
|
+
<span class='line'>709</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">collectionEntity</span><span class="PUNC">;</span><span class="WHIT">
|
717
|
+
<span class='line'>710</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
718
|
+
<span class='line'>711</span>
|
719
|
+
<span class='line'>712</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">
|
720
720
|
<span class='line'>713</span>
|
721
|
-
<span class='line'>714</span> </span><span class="NAME">
|
722
|
-
<span class='line'>715</span>
|
723
|
-
<span class='line'>716</span> </span><span class="
|
724
|
-
<span class='line'>717</span>
|
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>
|
733
|
-
<span class='line'>726</span> </span><span class="NAME">
|
734
|
-
<span class='line'>727</span> </span><span class="NAME">this.
|
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="
|
739
|
-
<span class='line'>732</span>
|
740
|
-
<span class='line'>733</span>
|
741
|
-
<span class='line'>734</span>
|
742
|
-
<span class='line'>735</span>
|
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> </span><span class="NAME">
|
748
|
-
<span class='line'>741</span> </span><span class="
|
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="
|
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> </span><span class="
|
763
|
-
<span class='line'>756</span>
|
764
|
-
<span class='line'>757</span>
|
765
|
-
<span class='line'>758</span> </span><span class="PUNC">
|
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> </span><span class="
|
721
|
+
<span class='line'>714</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">
|
722
|
+
<span class='line'>715</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">
|
723
|
+
<span class='line'>716</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
724
|
+
<span class='line'>717</span>
|
725
|
+
<span class='line'>718</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">
|
726
|
+
<span class='line'>719</span>
|
727
|
+
<span class='line'>720</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">
|
728
|
+
<span class='line'>721</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">
|
729
|
+
<span class='line'>722</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">
|
730
|
+
<span class='line'>723</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
731
|
+
<span class='line'>724</span>
|
732
|
+
<span class='line'>725</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">
|
733
|
+
<span class='line'>726</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">
|
734
|
+
<span class='line'>727</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">
|
735
|
+
<span class='line'>728</span> </span><span class="KEYW">return</span><span class="PUNC">;</span><span class="WHIT">
|
736
|
+
<span class='line'>729</span> </span><span class="PUNC">}</span><span class="WHIT">
|
737
|
+
<span class='line'>730</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">
|
738
|
+
<span class='line'>731</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">
|
739
|
+
<span class='line'>732</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
740
|
+
<span class='line'>733</span>
|
741
|
+
<span class='line'>734</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">
|
742
|
+
<span class='line'>735</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">
|
743
|
+
<span class='line'>736</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">
|
744
|
+
<span class='line'>737</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
745
|
+
<span class='line'>738</span>
|
746
|
+
<span class='line'>739</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">
|
747
|
+
<span class='line'>740</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">
|
748
|
+
<span class='line'>741</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">
|
749
|
+
<span class='line'>742</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
750
|
+
<span class='line'>743</span>
|
751
|
+
<span class='line'>744</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">
|
752
|
+
<span class='line'>745</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">
|
753
|
+
<span class='line'>746</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">
|
754
|
+
<span class='line'>747</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">
|
755
|
+
<span class='line'>748</span> </span><span class="PUNC">}</span><span class="WHIT">
|
756
|
+
<span class='line'>749</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
757
|
+
<span class='line'>750</span>
|
758
|
+
<span class='line'>751</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">
|
759
|
+
<span class='line'>752</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">
|
760
|
+
<span class='line'>753</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">
|
761
|
+
<span class='line'>754</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">
|
762
|
+
<span class='line'>755</span> </span><span class="PUNC">}</span><span class="WHIT">
|
763
|
+
<span class='line'>756</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
764
|
+
<span class='line'>757</span>
|
765
|
+
<span class='line'>758</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">
|
766
|
+
<span class='line'>759</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">
|
767
|
+
<span class='line'>760</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">
|
768
|
+
<span class='line'>761</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
769
|
+
<span class='line'>762</span> </span><span class="PUNC">}</span><span class="WHIT">
|
770
|
+
<span class='line'>763</span>
|
771
|
+
<span class='line'>764</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
772
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">
|
775
|
-
<span class='line'>768</span> </span><span class="
|
776
|
-
<span class='line'>769</span>
|
777
|
-
<span class='line'>770</span>
|
778
|
-
<span class='line'>771</span>
|
779
|
-
<span class='line'>772</span>
|
780
|
-
<span class='line'>773</span>
|
781
|
-
<span class='line'>774</span>
|
782
|
-
<span class='line'>775</span>
|
783
|
-
<span class='line'>776</span> </span><span class="PUNC">
|
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>
|
788
|
-
<span class='line'>781</span>
|
789
|
-
<span class='line'>782</span>
|
790
|
-
<span class='line'>783</span> </span><span class="NAME">
|
791
|
-
<span class='line'>784</span>
|
792
|
-
<span class='line'>785</span>
|
793
|
-
<span class='line'>786</span> </span><span class="PUNC">
|
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> </span><span class="
|
799
|
-
<span class='line'>792</span> </span><span class="PUNC">}</span><span class="WHIT">
|
800
|
-
<span class='line'>793</span>
|
801
|
-
<span class='line'>794</span>
|
802
|
-
<span class='line'>795</span>
|
803
|
-
<span class='line'>796</span> </span><span class="
|
804
|
-
<span class='line'>797</span>
|
805
|
-
<span class='line'>798</span>
|
806
|
-
<span class='line'>799</span>
|
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="
|
817
|
-
<span class='line'>810</span>
|
818
|
-
<span class='line'>811</span>
|
819
|
-
<span class='line'>812</span>
|
820
|
-
<span class='line'>813</span> </span><span class="KEYW">
|
821
|
-
<span class='line'>814</span>
|
822
|
-
<span class='line'>815</span>
|
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.
|
825
|
-
<span class='line'>818</span> </span><span class="NAME">
|
826
|
-
<span class='line'>819</span>
|
827
|
-
<span class='line'>820</span>
|
828
|
-
<span class='line'>821</span> </span><span class="PUNC">
|
829
|
-
<span class='line'>822</span>
|
830
|
-
<span class='line'>823</span>
|
831
|
-
<span class='line'>824</span> </span><span class="
|
832
|
-
<span class='line'>825</span>
|
833
|
-
<span class='line'>826</span>
|
834
|
-
<span class='line'>827</span> </span><span class="PUNC">
|
835
|
-
<span class='line'>828</span>
|
836
|
-
<span class='line'>829</span>
|
837
|
-
<span class='line'>830</span> </span><span class="
|
838
|
-
<span class='line'>831</span> </span><span class="PUNC">}</span><span class="
|
773
|
+
<span class='line'>766</span>
|
774
|
+
<span class='line'>767</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">
|
775
|
+
<span class='line'>768</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
776
|
+
<span class='line'>769</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
777
|
+
<span class='line'>770</span>
|
778
|
+
<span class='line'>771</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">
|
779
|
+
<span class='line'>772</span> </span><span class="NAME">model.addMethods</span><span class="PUNC">(</span><span class="PUNC">{</span><span class="WHIT">
|
780
|
+
<span class='line'>773</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">
|
781
|
+
<span class='line'>774</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">
|
782
|
+
<span class='line'>775</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">
|
783
|
+
<span class='line'>776</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">
|
784
|
+
<span class='line'>777</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">
|
785
|
+
<span class='line'>778</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">
|
786
|
+
<span class='line'>779</span> </span><span class="NAME">args</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">args</span><span class="WHIT">
|
787
|
+
<span class='line'>780</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
788
|
+
<span class='line'>781</span>
|
789
|
+
<span class='line'>782</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">
|
790
|
+
<span class='line'>783</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">
|
791
|
+
<span class='line'>784</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">
|
792
|
+
<span class='line'>785</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">
|
793
|
+
<span class='line'>786</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">
|
794
|
+
<span class='line'>787</span> </span><span class="NAME">parameters</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
795
|
+
<span class='line'>788</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">
|
796
|
+
<span class='line'>789</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">
|
797
|
+
<span class='line'>790</span> </span><span class="PUNC">}</span><span class="WHIT">
|
798
|
+
<span class='line'>791</span> </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="PUNC">,</span><span class="WHIT">
|
800
|
+
<span class='line'>793</span>
|
801
|
+
<span class='line'>794</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">
|
802
|
+
<span class='line'>795</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">
|
803
|
+
<span class='line'>796</span> </span><span class="PUNC">}</span><span class="WHIT">
|
804
|
+
<span class='line'>797</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
805
|
+
<span class='line'>798</span>
|
806
|
+
<span class='line'>799</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">
|
807
|
+
<span class='line'>800</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">
|
808
|
+
<span class='line'>801</span>
|
809
|
+
<span class='line'>802</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">
|
810
|
+
<span class='line'>803</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">
|
811
|
+
<span class='line'>804</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">
|
812
|
+
<span class='line'>805</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">
|
813
|
+
<span class='line'>806</span> </span><span class="PUNC">}</span><span class="WHIT">
|
814
|
+
<span class='line'>807</span> </span><span class="PUNC">}</span><span class="WHIT">
|
815
|
+
<span class='line'>808</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
816
|
+
<span class='line'>809</span> </span><span class="PUNC">}</span><span class="WHIT">
|
817
|
+
<span class='line'>810</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
818
|
+
<span class='line'>811</span>
|
819
|
+
<span class='line'>812</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">
|
820
|
+
<span class='line'>813</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">
|
821
|
+
<span class='line'>814</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">
|
822
|
+
<span class='line'>815</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">
|
823
|
+
<span class='line'>816</span> </span><span class="PUNC">}</span><span class="WHIT">
|
824
|
+
<span class='line'>817</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">
|
825
|
+
<span class='line'>818</span> </span><span class="NAME">model.channel</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
826
|
+
<span class='line'>819</span> </span><span class="PUNC">}</span><span class="WHIT">
|
827
|
+
<span class='line'>820</span>
|
828
|
+
<span class='line'>821</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">
|
829
|
+
<span class='line'>822</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">
|
830
|
+
<span class='line'>823</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">
|
831
|
+
<span class='line'>824</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
832
|
+
<span class='line'>825</span> </span><span class="PUNC">}</span><span class="WHIT">
|
833
|
+
<span class='line'>826</span>
|
834
|
+
<span class='line'>827</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">
|
835
|
+
<span class='line'>828</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">
|
836
|
+
<span class='line'>829</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">
|
837
|
+
<span class='line'>830</span> </span><span class="PUNC">}</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="WHIT">
|
839
839
|
<span class='line'>832</span>
|
840
|
-
<span class='line'>833</span> </span><span class="
|
841
|
-
<span class='line'>834</span> </span><span class="NAME">model.
|
842
|
-
<span class='line'>835</span> </span><span class="PUNC">}</span><span class="WHIT">
|
840
|
+
<span class='line'>833</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">
|
841
|
+
<span class='line'>834</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">
|
842
|
+
<span class='line'>835</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
843
843
|
<span class='line'>836</span>
|
844
|
-
<span class='line'>837</span> </span><span class="
|
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>
|
851
|
-
<span class='line'>844</span>
|
852
|
-
<span class='line'>845</span>
|
853
|
-
<span class='line'>846</span>
|
854
|
-
<span class='line'>847</span>
|
855
|
-
<span class='line'>848</span>
|
856
|
-
<span class='line'>849</span>
|
857
|
-
<span class='line'>850</span>
|
858
|
-
<span class='line'>851</span>
|
859
|
-
<span class='line'>852</span>
|
860
|
-
<span class='line'>853</span>
|
861
|
-
<span class='line'>854</span>
|
862
|
-
<span class='line'>855</span>
|
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">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">
|
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>
|
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> </span><span class="
|
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="
|
885
|
-
<span class='line'>878</span>
|
886
|
-
<span class='line'>879</span>
|
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> </span><span class="
|
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="
|
897
|
-
<span class='line'>890</span>
|
898
|
-
<span class='line'>891</span>
|
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> </span><span class="
|
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="
|
909
|
-
<span class='line'>902</span>
|
910
|
-
<span class='line'>903</span>
|
911
|
-
<span class='line'>904</span>
|
912
|
-
<span class='line'>905</span> </span><span class="
|
913
|
-
<span class='line'>906</span>
|
914
|
-
<span class='line'>907</span> </span><span class="PUNC">
|
915
|
-
<span class='line'>908</span>
|
916
|
-
<span class='line'>909</span> </span><span class="KEYW">
|
917
|
-
<span class='line'>910</span> </span><span class="
|
918
|
-
<span class='line'>911</span>
|
919
|
-
<span class='line'>912</span>
|
920
|
-
<span class='line'>913</span> </span><span class="
|
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="
|
925
|
-
<span class='line'>918</span>
|
926
|
-
<span class='line'>919</span>
|
927
|
-
<span class='line'>920</span>
|
928
|
-
<span class='line'>921</span> </span><span class="PUNC">
|
929
|
-
<span class='line'>922</span>
|
930
|
-
<span class='line'>923</span> </span><span class="KEYW">
|
931
|
-
<span class='line'>924</span>
|
932
|
-
<span class='line'>925</span> </span><span class="
|
933
|
-
<span class='line'>926</span>
|
934
|
-
<span class='line'>927</span> </span><span class="KEYW">
|
935
|
-
<span class='line'>928</span>
|
936
|
-
<span class='line'>929</span>
|
937
|
-
<span class='line'>930</span>
|
938
|
-
<span class='line'>931</span>
|
939
|
-
<span class='line'>932</span> </span><span class="NAME">
|
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="NAME">
|
944
|
-
<span class='line'>937</span>
|
945
|
-
<span class='line'>938</span>
|
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> </span><span class="
|
950
|
-
<span class='line'>943</span>
|
951
|
-
<span class='line'>944</span> </span><span class="
|
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">
|
956
|
-
<span class='line'>949</span>
|
957
|
-
<span class='line'>950</span>
|
958
|
-
<span class='line'>951</span>
|
959
|
-
<span class='line'>952</span> </span><span class="KEYW">
|
960
|
-
<span class='line'>953</span>
|
961
|
-
<span class='line'>954</span>
|
962
|
-
<span class='line'>955</span>
|
963
|
-
<span class='line'>956</span>
|
964
|
-
<span class='line'>957</span>
|
965
|
-
<span class='line'>958</span>
|
966
|
-
<span class='line'>959</span> </span><span class="PUNC">
|
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> </span><span class="
|
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>
|
982
|
-
<span class='line'>975</span>
|
983
|
-
<span class='line'>976</span>
|
984
|
-
<span class='line'>977</span>
|
985
|
-
<span class='line'>978</span> </span><span class="COMM">//
|
986
|
-
<span class='line'>979</span> </span><span class="
|
987
|
-
<span class='line'>980</span>
|
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> </span><span class="KEYW">case</span><span class="WHIT"> </span><span class="STRN">"
|
993
|
-
<span class='line'>986</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">rio.Model.
|
994
|
-
<span class='line'>987</span> </span><span class="
|
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> </span><span class="
|
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> </span><span class="PUNC">
|
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>
|
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>
|
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>
|
1032
|
-
<span class='line'>1025</span>
|
1033
|
-
<span class='line'>1026</span>
|
1034
|
-
<span class='line'>1027</span>
|
1035
|
-
<span class='line'>1028</span> </span><span class="
|
1036
|
-
<span class='line'>1029</span> </span><span class="
|
1037
|
-
<span class='line'>1030</span>
|
1038
|
-
<span class='line'>1031</span>
|
1039
|
-
<span class='line'>1032</span>
|
1040
|
-
<span class='line'>1033</span>
|
1041
|
-
<span class='line'>1034</span>
|
1042
|
-
<span class='line'>1035</span>
|
1043
|
-
<span class='line'>1036</span> </span><span class="PUNC">
|
1044
|
-
<span class='line'>1037</span>
|
1045
|
-
<span class='line'>1038</span>
|
1046
|
-
<span class='line'>1039</span>
|
1047
|
-
<span class='line'>1040</span> </span><span class="
|
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> </span><span class="
|
1053
|
-
<span class='line'>1046</span>
|
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="
|
1056
|
-
<span class='line'>1049</span>
|
1057
|
-
<span class='line'>1050</span>
|
1058
|
-
<span class='line'>1051</span> </span><span class="PUNC">
|
1059
|
-
<span class='line'>1052</span>
|
1060
|
-
<span class='line'>1053</span>
|
1061
|
-
<span class='line'>1054</span>
|
1062
|
-
<span class='line'>1055</span>
|
1063
|
-
<span class='line'>1056</span>
|
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>
|
1075
|
-
<span class='line'>1068</span> </span><span class="PUNC">
|
844
|
+
<span class='line'>837</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">
|
845
|
+
<span class='line'>838</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">
|
846
|
+
<span class='line'>839</span> </span><span class="PUNC">}</span><span class="WHIT">
|
847
|
+
<span class='line'>840</span>
|
848
|
+
<span class='line'>841</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">
|
849
|
+
<span class='line'>842</span> </span><span class="PUNC">}</span><span class="WHIT">
|
850
|
+
<span class='line'>843</span>
|
851
|
+
<span class='line'>844</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">model</span><span class="PUNC">;</span><span class="WHIT">
|
852
|
+
<span class='line'>845</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
853
|
+
<span class='line'>846</span>
|
854
|
+
<span class='line'>847</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">
|
855
|
+
<span class='line'>848</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">
|
856
|
+
<span class='line'>849</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">
|
857
|
+
<span class='line'>850</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">
|
858
|
+
<span class='line'>851</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">
|
859
|
+
<span class='line'>852</span> </span><span class="NAME">count</span><span class="PUNC">++</span><span class="PUNC">;</span><span class="WHIT">
|
860
|
+
<span class='line'>853</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">
|
861
|
+
<span class='line'>854</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">
|
862
|
+
<span class='line'>855</span> </span><span class="NAME">count</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="KEYW">return</span><span class="WHIT"> </span><span class="NAME">ret</span><span class="PUNC">;</span><span class="WHIT">
|
865
|
+
<span class='line'>858</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
866
|
+
<span class='line'>859</span> </span><span class="PUNC">}</span><span class="PUNC">)</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">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">
|
868
|
+
<span class='line'>861</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
869
|
+
<span class='line'>862</span>
|
870
|
+
<span class='line'>863</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">
|
871
|
+
<span class='line'>864</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">
|
872
|
+
<span class='line'>865</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">
|
873
|
+
<span class='line'>866</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
874
|
+
<span class='line'>867</span>
|
875
|
+
<span class='line'>868</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">
|
876
|
+
<span class='line'>869</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">
|
877
|
+
<span class='line'>870</span> </span><span class="KEYW">try</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
878
|
+
<span class='line'>871</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">
|
879
|
+
<span class='line'>872</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">
|
880
|
+
<span class='line'>873</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">
|
881
|
+
<span class='line'>874</span> </span><span class="PUNC">}</span><span class="WHIT">
|
882
|
+
<span class='line'>875</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">
|
883
|
+
<span class='line'>876</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">
|
884
|
+
<span class='line'>877</span> </span><span class="PUNC">}</span><span class="WHIT">
|
885
|
+
<span class='line'>878</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
886
|
+
<span class='line'>879</span>
|
887
|
+
<span class='line'>880</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">
|
888
|
+
<span class='line'>881</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">
|
889
|
+
<span class='line'>882</span> </span><span class="KEYW">try</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
890
|
+
<span class='line'>883</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">
|
891
|
+
<span class='line'>884</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">
|
892
|
+
<span class='line'>885</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">
|
893
|
+
<span class='line'>886</span> </span><span class="PUNC">}</span><span class="WHIT">
|
894
|
+
<span class='line'>887</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">
|
895
|
+
<span class='line'>888</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">
|
896
|
+
<span class='line'>889</span> </span><span class="PUNC">}</span><span class="WHIT">
|
897
|
+
<span class='line'>890</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
898
|
+
<span class='line'>891</span>
|
899
|
+
<span class='line'>892</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">
|
900
|
+
<span class='line'>893</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">
|
901
|
+
<span class='line'>894</span> </span><span class="KEYW">try</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
902
|
+
<span class='line'>895</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">
|
903
|
+
<span class='line'>896</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">
|
904
|
+
<span class='line'>897</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">
|
905
|
+
<span class='line'>898</span> </span><span class="PUNC">}</span><span class="WHIT">
|
906
|
+
<span class='line'>899</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">
|
907
|
+
<span class='line'>900</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">
|
908
|
+
<span class='line'>901</span> </span><span class="PUNC">}</span><span class="WHIT">
|
909
|
+
<span class='line'>902</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
910
|
+
<span class='line'>903</span>
|
911
|
+
<span class='line'>904</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">
|
912
|
+
<span class='line'>905</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">
|
913
|
+
<span class='line'>906</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">
|
914
|
+
<span class='line'>907</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">
|
915
|
+
<span class='line'>908</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">
|
916
|
+
<span class='line'>909</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">
|
917
|
+
<span class='line'>910</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">
|
918
|
+
<span class='line'>911</span> </span><span class="PUNC">}</span><span class="WHIT">
|
919
|
+
<span class='line'>912</span>
|
920
|
+
<span class='line'>913</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
921
|
+
<span class='line'>914</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">
|
922
|
+
<span class='line'>915</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">
|
923
|
+
<span class='line'>916</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">
|
924
|
+
<span class='line'>917</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
925
|
+
<span class='line'>918</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
926
|
+
<span class='line'>919</span>
|
927
|
+
<span class='line'>920</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">
|
928
|
+
<span class='line'>921</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">
|
929
|
+
<span class='line'>922</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">
|
930
|
+
<span class='line'>923</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">
|
931
|
+
<span class='line'>924</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">
|
932
|
+
<span class='line'>925</span> </span><span class="PUNC">}</span><span class="WHIT">
|
933
|
+
<span class='line'>926</span>
|
934
|
+
<span class='line'>927</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">
|
935
|
+
<span class='line'>928</span>
|
936
|
+
<span class='line'>929</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">
|
937
|
+
<span class='line'>930</span>
|
938
|
+
<span class='line'>931</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">
|
939
|
+
<span class='line'>932</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">
|
940
|
+
<span class='line'>933</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">
|
941
|
+
<span class='line'>934</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">
|
942
|
+
<span class='line'>935</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
943
|
+
<span class='line'>936</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">
|
944
|
+
<span class='line'>937</span> </span><span class="PUNC">}</span><span class="WHIT">
|
945
|
+
<span class='line'>938</span>
|
946
|
+
<span class='line'>939</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">
|
947
|
+
<span class='line'>940</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">
|
948
|
+
<span class='line'>941</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">acc</span><span class="PUNC">;</span><span class="WHIT">
|
949
|
+
<span class='line'>942</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
950
|
+
<span class='line'>943</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">
|
951
|
+
<span class='line'>944</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">
|
952
|
+
<span class='line'>945</span>
|
953
|
+
<span class='line'>946</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">
|
954
|
+
<span class='line'>947</span>
|
955
|
+
<span class='line'>948</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">results</span><span class="PUNC">;</span><span class="WHIT">
|
956
|
+
<span class='line'>949</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
957
|
+
<span class='line'>950</span>
|
958
|
+
<span class='line'>951</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">
|
959
|
+
<span class='line'>952</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">
|
960
|
+
<span class='line'>953</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">
|
961
|
+
<span class='line'>954</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">
|
962
|
+
<span class='line'>955</span>
|
963
|
+
<span class='line'>956</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">
|
964
|
+
<span class='line'>957</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">
|
965
|
+
<span class='line'>958</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">
|
966
|
+
<span class='line'>959</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">
|
967
|
+
<span class='line'>960</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">
|
968
|
+
<span class='line'>961</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">
|
969
|
+
<span class='line'>962</span> </span><span class="NAME">instance.save</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
970
|
+
<span class='line'>963</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
971
|
+
<span class='line'>964</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">
|
972
|
+
<span class='line'>965</span> </span><span class="PUNC">}</span><span class="WHIT">
|
973
|
+
<span class='line'>966</span>
|
974
|
+
<span class='line'>967</span> </span><span class="NAME">fromCache.removeFromCaches</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
975
|
+
<span class='line'>968</span>
|
976
|
+
<span class='line'>969</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">
|
977
|
+
<span class='line'>970</span> </span><span class="PUNC">}</span><span class="WHIT">
|
978
|
+
<span class='line'>971</span>
|
979
|
+
<span class='line'>972</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">results</span><span class="PUNC">;</span><span class="WHIT">
|
980
|
+
<span class='line'>973</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
981
|
+
<span class='line'>974</span>
|
982
|
+
<span class='line'>975</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">
|
983
|
+
<span class='line'>976</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">
|
984
|
+
<span class='line'>977</span> </span><span class="KEYW">try</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
985
|
+
<span class='line'>978</span> </span><span class="COMM">// TODO: Two potential bugs here</span><span class="WHIT">
|
986
|
+
<span class='line'>979</span> </span><span class="COMM">//</span><span class="WHIT">
|
987
|
+
<span class='line'>980</span> </span><span class="COMM">// 1) Need to execute this in a rio.Attr.transaction</span><span class="WHIT">
|
988
|
+
<span class='line'>981</span> </span><span class="COMM">// 2) Need to get back the collection entity process functions from _filterAndProcessJsonWhileAccumulatingCollectionEntities</span><span class="WHIT">
|
989
|
+
<span class='line'>982</span> </span><span class="COMM">// and run them at the end. Otherwise we might have reification collisions.</span><span class="WHIT">
|
990
|
+
<span class='line'>983</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">
|
991
|
+
<span class='line'>984</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">
|
992
|
+
<span class='line'>985</span> </span><span class="KEYW">case</span><span class="WHIT"> </span><span class="STRN">"create"</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.doRemoteCreate</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="KEYW">case</span><span class="WHIT"> </span><span class="STRN">"update"</span><span class="PUNC">:</span><span class="WHIT">
|
995
|
+
<span class='line'>988</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">
|
996
|
+
<span class='line'>989</span> </span><span class="KEYW">case</span><span class="WHIT"> </span><span class="STRN">"destroy"</span><span class="PUNC">:</span><span class="WHIT">
|
997
|
+
<span class='line'>990</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">
|
998
|
+
<span class='line'>991</span> </span><span class="PUNC">}</span><span class="WHIT">
|
999
|
+
<span class='line'>992</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
1000
|
+
<span class='line'>993</span>
|
1001
|
+
<span class='line'>994</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">
|
1002
|
+
<span class='line'>995</span>
|
1003
|
+
<span class='line'>996</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">
|
1004
|
+
<span class='line'>997</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">
|
1005
|
+
<span class='line'>998</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">
|
1006
|
+
<span class='line'>999</span> </span><span class="NAME">undo</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
1007
|
+
<span class='line'>1000</span> </span><span class="PUNC">}</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="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
1009
|
+
<span class='line'>1002</span> </span><span class="PUNC">}</span><span class="WHIT">
|
1010
|
+
<span class='line'>1003</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">
|
1011
|
+
<span class='line'>1004</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">
|
1012
|
+
<span class='line'>1005</span> </span><span class="PUNC">}</span><span class="WHIT">
|
1013
|
+
<span class='line'>1006</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
1014
|
+
<span class='line'>1007</span>
|
1015
|
+
<span class='line'>1008</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">
|
1016
|
+
<span class='line'>1009</span>
|
1017
|
+
<span class='line'>1010</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">
|
1018
|
+
<span class='line'>1011</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">
|
1019
|
+
<span class='line'>1012</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">
|
1020
|
+
<span class='line'>1013</span>
|
1021
|
+
<span class='line'>1014</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">
|
1022
|
+
<span class='line'>1015</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">
|
1023
|
+
<span class='line'>1016</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">
|
1024
|
+
<span class='line'>1017</span> </span><span class="PUNC">}</span><span class="WHIT">
|
1025
|
+
<span class='line'>1018</span>
|
1026
|
+
<span class='line'>1019</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">
|
1027
|
+
<span class='line'>1020</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">
|
1028
|
+
<span class='line'>1021</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">
|
1029
|
+
<span class='line'>1022</span> </span><span class="PUNC">}</span><span class="WHIT">
|
1030
|
+
<span class='line'>1023</span>
|
1031
|
+
<span class='line'>1024</span> </span><span class="COMM">// Set assiated id's from belongsTo associations</span><span class="WHIT">
|
1032
|
+
<span class='line'>1025</span> </span><span class="NAME">Object.keys</span><span class="PUNC">(</span><span class="NAME">model._belongsToAssociations</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">belongsToName</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="KEYW">var</span><span class="WHIT"> </span><span class="NAME">associationValue</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">options</span><span class="PUNC">[</span><span class="NAME">belongsToName</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
1034
|
+
<span class='line'>1027</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">associationValue</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
1035
|
+
<span class='line'>1028</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">belongsToOptions</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">model._belongsToAssociations</span><span class="PUNC">[</span><span class="NAME">belongsToName</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
1036
|
+
<span class='line'>1029</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">belongsToOptions.foreignKey</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">associationValue.getId</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
1037
|
+
<span class='line'>1030</span> </span><span class="PUNC">}</span><span class="WHIT">
|
1038
|
+
<span class='line'>1031</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">
|
1039
|
+
<span class='line'>1032</span>
|
1040
|
+
<span class='line'>1033</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">
|
1041
|
+
<span class='line'>1034</span>
|
1042
|
+
<span class='line'>1035</span> </span><span class="COMM">// Add the hasManyAssocitation#create methods</span><span class="WHIT">
|
1043
|
+
<span class='line'>1036</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">
|
1044
|
+
<span class='line'>1037</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">
|
1045
|
+
<span class='line'>1038</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">
|
1046
|
+
<span class='line'>1039</span> </span><span class="COMM">// In the case that the entity is still new, we should preload the association</span><span class="WHIT">
|
1047
|
+
<span class='line'>1040</span> </span><span class="COMM">// to make sure no entries are missed</span><span class="WHIT">
|
1048
|
+
<span class='line'>1041</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">
|
1049
|
+
<span class='line'>1042</span> </span><span class="COMM">// if (this.isNew()) {</span><span class="WHIT">
|
1050
|
+
<span class='line'>1043</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">
|
1051
|
+
<span class='line'>1044</span> </span><span class="COMM">// }</span><span class="WHIT">
|
1052
|
+
<span class='line'>1045</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">
|
1053
|
+
<span class='line'>1046</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">
|
1054
|
+
<span class='line'>1047</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">
|
1055
|
+
<span class='line'>1048</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">
|
1056
|
+
<span class='line'>1049</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">
|
1057
|
+
<span class='line'>1050</span>
|
1058
|
+
<span class='line'>1051</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">
|
1059
|
+
<span class='line'>1052</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">
|
1060
|
+
<span class='line'>1053</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">
|
1061
|
+
<span class='line'>1054</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">
|
1062
|
+
<span class='line'>1055</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">
|
1063
|
+
<span class='line'>1056</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">
|
1064
|
+
<span class='line'>1057</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">
|
1065
|
+
<span class='line'>1058</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">
|
1066
|
+
<span class='line'>1059</span> </span><span class="NAME">addChannel</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
1067
|
+
<span class='line'>1060</span> </span><span class="PUNC">}</span><span class="WHIT">
|
1068
|
+
<span class='line'>1061</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">
|
1069
|
+
<span class='line'>1062</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">
|
1070
|
+
<span class='line'>1063</span> </span><span class="PUNC">}</span><span class="WHIT">
|
1071
|
+
<span class='line'>1064</span> </span><span class="PUNC">}</span><span class="WHIT">
|
1072
|
+
<span class='line'>1065</span>
|
1073
|
+
<span class='line'>1066</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">
|
1074
|
+
<span class='line'>1067</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">
|
1075
|
+
<span class='line'>1068</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">
|
1076
|
+
<span class='line'>1069</span> </span><span class="PUNC">}</span><span class="WHIT">
|
1077
|
+
<span class='line'>1070</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">
|
1078
|
+
<span class='line'>1071</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">
|
1079
|
+
<span class='line'>1072</span> </span><span class="PUNC">}</span><span class="WHIT">
|
1080
|
+
<span class='line'>1073</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
1081
|
+
<span class='line'>1074</span>
|
1082
|
+
<span class='line'>1075</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">
|
1083
|
+
<span class='line'>1076</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
1084
|
+
<span class='line'>1077</span>
|
1085
|
+
<span class='line'>1078</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">
|
1086
|
+
<span class='line'>1079</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="STRN">"Model"</span><span class="PUNC">;</span><span class="WHIT">
|
1087
|
+
<span class='line'>1080</span> </span><span class="PUNC">}</span><span class="WHIT">
|
1088
|
+
<span class='line'>1081</span> </span><span class="PUNC">}</span><span class="PUNC">;</span></pre></body></html>
|