riojs 0.0.2 → 0.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/VERSION +1 -1
- data/install/script/rio_server +11 -1
- data/lib/rio/rio_on_rails.rb +5 -1
- data/public/javascripts/components/grid_view.js +1 -11
- data/public/javascripts/components/image.js +1 -1
- data/public/javascripts/components/input.js +2 -0
- data/public/javascripts/lib/application.js +1 -1
- data/public/javascripts/lib/console/docs/files.html +1 -1
- data/public/javascripts/lib/console/docs/index.html +1 -1
- data/public/javascripts/lib/console/docs/symbols/Object.html +1 -1
- data/public/javascripts/lib/console/docs/symbols/_global_.html +1 -1
- data/public/javascripts/lib/console/docs/symbols/rio.Application.html +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_application.js.html +1 -1
- data/public/javascripts/lib/console/docs/symbols/src/public_javascripts_lib_form.js.html +71 -46
- data/public/javascripts/lib/console/docs/symbols/src/public_javascripts_lib_model.js.html +2 -2
- data/public/javascripts/lib/form.js +31 -6
- data/public/javascripts/lib/model.js +2 -2
- data/public/javascripts/specs/lib/application_spec.js +11 -2
- metadata +2 -2
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.0.
|
1
|
+
0.0.3
|
data/install/script/rio_server
CHANGED
data/lib/rio/rio_on_rails.rb
CHANGED
@@ -233,7 +233,7 @@ module Rio
|
|
233
233
|
|
234
234
|
raise "Index operation not authorized" unless self.index_authorized?(parsed_index_conditions)
|
235
235
|
|
236
|
-
render :json =>
|
236
|
+
render :json => index_scope.find(:all, :conditions => parsed_index_conditions)
|
237
237
|
end
|
238
238
|
|
239
239
|
def index_conditions
|
@@ -362,6 +362,10 @@ module Rio
|
|
362
362
|
model
|
363
363
|
end
|
364
364
|
|
365
|
+
def index_scope
|
366
|
+
scope
|
367
|
+
end
|
368
|
+
|
365
369
|
def create_scope
|
366
370
|
scope
|
367
371
|
end
|
@@ -12,7 +12,6 @@ rio.components.GridView = rio.Component.create(rio.components.ListView, "GridVie
|
|
12
12
|
["rowSelectedClassName", "gridItemSelected"]
|
13
13
|
],
|
14
14
|
attrHtmls: ["header"],
|
15
|
-
styles: ["headerColor", "headerBackgroundColor", "headerPadding", "headerFontWeight"],
|
16
15
|
methods: {
|
17
16
|
initialize: function($super, options) {
|
18
17
|
$super(options);
|
@@ -50,16 +49,7 @@ rio.components.GridView = rio.Component.create(rio.components.ListView, "GridVie
|
|
50
49
|
buildHeaderHtml: function() {
|
51
50
|
return rio.Tag.tr(
|
52
51
|
this.getColumns().map(function(column) {
|
53
|
-
|
54
|
-
// header.applyStyle({
|
55
|
-
// color: this.headerColor,
|
56
|
-
// width: column.width,
|
57
|
-
// backgroundColor: this.headerBackgroundColor,
|
58
|
-
// padding: this.headerPadding,
|
59
|
-
// fontWeight: this.headerFontWeight,
|
60
|
-
// border: "1px solid #888"
|
61
|
-
// });
|
62
|
-
return header;
|
52
|
+
return rio.Tag.td(column.header);
|
63
53
|
}.bind(this)),
|
64
54
|
{ className: "gridViewHeaderRow" }
|
65
55
|
);
|
@@ -52,6 +52,7 @@ rio.components.Input = rio.Component.create(rio.components.Box, "Input", {
|
|
52
52
|
|
53
53
|
|
54
54
|
this.bind("value", function(value) {
|
55
|
+
if (inputHtml.value == value) { return; }
|
55
56
|
inputHtml.value = value;
|
56
57
|
});
|
57
58
|
|
@@ -102,6 +103,7 @@ rio.components.Input = rio.Component.create(rio.components.Box, "Input", {
|
|
102
103
|
if(this.getBlurOnEnter()) {
|
103
104
|
inputHtml.blur();
|
104
105
|
}
|
106
|
+
this.setValue(inputHtml.value);
|
105
107
|
this.fire('enter');
|
106
108
|
}
|
107
109
|
if (e.keyCode == Event.KEY_ESC && this.getRevertOnEscape()) {
|
@@ -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 12 2010 12:37:49 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 12 2010 12:37:49 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 12 2010 12:37:49 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 12 2010 12:37:48 GMT-0500 (CDT)
|
411
411
|
</div>
|
412
412
|
</body>
|
413
413
|
</html>
|
@@ -878,7 +878,7 @@ ul.inheritsList
|
|
878
878
|
<!-- ============================== footer ================================= -->
|
879
879
|
<div class="fineprint" style="clear:both">
|
880
880
|
|
881
|
-
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.0.2 on
|
881
|
+
Documentation generated by <a href="http://www.jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 2.0.2 on Mon Apr 12 2010 12:37:49 GMT-0500 (CDT)
|
882
882
|
</div>
|
883
883
|
</body>
|
884
884
|
</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 12 2010 12:37:49 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 12 2010 12:37:49 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 12 2010 12:37:49 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 12 2010 12:37:49 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 12 2010 12:37:49 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 12 2010 12:37:49 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 12 2010 12:37:49 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 12 2010 12:37:49 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 12 2010 12:37:49 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 12 2010 12:37:49 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 12 2010 12:37:49 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 12 2010 12:37:49 GMT-0500 (CDT)
|
504
504
|
</div>
|
505
505
|
</body>
|
506
506
|
</html>
|
data/public/javascripts/lib/console/docs/symbols/src/public_javascripts_lib_application.js.html
CHANGED
@@ -243,7 +243,7 @@
|
|
243
243
|
<span class='line'>236</span> </span><span class="NAME">this.setCurrentPage</span><span class="PUNC">(</span><span class="NAME">page</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
244
244
|
<span class='line'>237</span> </span><span class="PUNC">}</span><span class="WHIT">
|
245
245
|
<span class='line'>238</span>
|
246
|
-
<span class='line'>239</span> </span><span class="NAME">page.applyHistoryEntry</span><span class="PUNC">(</span><span class="NAME">remainingPath</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">pathParts</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
246
|
+
<span class='line'>239</span> </span><span class="NAME">page.applyHistoryEntry</span><span class="PUNC">(</span><span class="NAME">remainingPath</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">pathParts</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">path</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
247
247
|
<span class='line'>240</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
248
248
|
<span class='line'>241</span>
|
249
249
|
<span class='line'>242</span> </span><span class="COMM">/** @private */</span><span class="WHIT">
|
@@ -46,50 +46,75 @@
|
|
46
46
|
<span class='line'> 39</span> </span><span class="NAME">validate</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">
|
47
47
|
<span class='line'> 40</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">valid</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">
|
48
48
|
<span class='line'> 41</span> </span><span class="NAME">Object.keys</span><span class="PUNC">(</span><span class="NAME">attributes</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">attribute</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
49
|
-
<span class='line'> 42</span> </span><span class="
|
50
|
-
<span class='line'> 43</span>
|
51
|
-
<span class='line'> 44</span>
|
52
|
-
<span class='line'> 45</span>
|
53
|
-
<span class='line'> 46</span>
|
54
|
-
<span class='line'> 47</span> </span><span class="KEYW">
|
55
|
-
<span class='line'> 48</span> </span><span class="NAME">
|
56
|
-
<span class='line'> 49</span> </span><span class="PUNC">}</span><span class="WHIT">
|
57
|
-
<span class='line'> 50</span>
|
58
|
-
<span class='line'> 51</span>
|
59
|
-
<span class='line'> 52</span>
|
60
|
-
<span class='line'> 53</span>
|
61
|
-
<span class='line'> 54</span>
|
62
|
-
<span class='line'> 55</span>
|
63
|
-
<span class='line'> 56</span>
|
64
|
-
<span class='line'> 57</span>
|
65
|
-
<span class='line'> 58</span>
|
66
|
-
<span class='line'> 59</span>
|
67
|
-
<span class='line'> 60</span>
|
68
|
-
<span class='line'> 61</span>
|
69
|
-
<span class='line'> 62</span>
|
70
|
-
<span class='line'> 63</span>
|
71
|
-
<span class='line'> 64</span> </span><span class="
|
72
|
-
<span class='line'> 65</span>
|
73
|
-
<span class='line'> 66</span>
|
74
|
-
<span class='line'> 67</span>
|
75
|
-
<span class='line'> 68</span> </span><span class="PUNC">
|
76
|
-
<span class='line'> 69</span>
|
77
|
-
<span class='line'> 70</span>
|
78
|
-
<span class='line'> 71</span> </span><span class="KEYW">
|
79
|
-
<span class='line'> 72</span>
|
80
|
-
<span class='line'> 73</span>
|
81
|
-
<span class='line'> 74</span>
|
82
|
-
<span class='line'> 75</span> </span><span class="PUNC">
|
83
|
-
<span class='line'> 76</span>
|
84
|
-
<span class='line'> 77</span>
|
85
|
-
<span class='line'> 78</span>
|
86
|
-
<span class='line'> 79</span>
|
87
|
-
<span class='line'> 80</span>
|
88
|
-
<span class='line'> 81</span>
|
49
|
+
<span class='line'> 42</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">errorMessage</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="STRN">""</span><span class="PUNC">;</span><span class="WHIT">
|
50
|
+
<span class='line'> 43</span> </span><span class="PUNC">(</span><span class="NAME">attributes</span><span class="PUNC">[</span><span class="NAME">attribute</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">validates</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">uniq</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">validate</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
51
|
+
<span class='line'> 44</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">newErrorMessage</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="STRN">""</span><span class="PUNC">;</span><span class="WHIT">
|
52
|
+
<span class='line'> 45</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">validate</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
53
|
+
<span class='line'> 46</span> </span><span class="NAME">newErrorMessage</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">rio.Validators</span><span class="PUNC">[</span><span class="NAME">validate</span><span class="PUNC">]</span><span class="PUNC">(</span><span class="KEYW">this</span><span class="PUNC">[</span><span class="NAME">attribute</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">value</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
54
|
+
<span class='line'> 47</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">Object.isArray</span><span class="PUNC">(</span><span class="NAME">validate</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
55
|
+
<span class='line'> 48</span> </span><span class="NAME">newErrorMessage</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">rio.Validators</span><span class="PUNC">[</span><span class="NAME">validate</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="PUNC">]</span><span class="PUNC">(</span><span class="KEYW">this</span><span class="PUNC">[</span><span class="NAME">attribute</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">value</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">validate</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">
|
56
|
+
<span class='line'> 49</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">
|
57
|
+
<span class='line'> 50</span> </span><span class="NAME">newErrorMessage</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">validate</span><span class="PUNC">(</span><span class="NAME">this.values</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
58
|
+
<span class='line'> 51</span> </span><span class="PUNC">}</span><span class="WHIT">
|
59
|
+
<span class='line'> 52</span>
|
60
|
+
<span class='line'> 53</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">!</span><span class="PUNC">(</span><span class="NAME">newErrorMessage</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="STRN">""</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">blank</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
61
|
+
<span class='line'> 54</span> </span><span class="NAME">valid</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
62
|
+
<span class='line'> 55</span> </span><span class="NAME">errorMessage</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">newErrorMessage</span><span class="PUNC">;</span><span class="WHIT">
|
63
|
+
<span class='line'> 56</span> </span><span class="PUNC">}</span><span class="WHIT">
|
64
|
+
<span class='line'> 57</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">
|
65
|
+
<span class='line'> 58</span>
|
66
|
+
<span class='line'> 59</span> </span><span class="NAME">this.errors</span><span class="PUNC">[</span><span class="NAME">attribute</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">update</span><span class="PUNC">(</span><span class="NAME">errorMessage</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
67
|
+
<span class='line'> 60</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">
|
68
|
+
<span class='line'> 61</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">valid</span><span class="PUNC">;</span><span class="WHIT">
|
69
|
+
<span class='line'> 62</span> </span><span class="PUNC">}</span><span class="WHIT">
|
70
|
+
<span class='line'> 63</span> </span><span class="PUNC">}</span><span class="WHIT">
|
71
|
+
<span class='line'> 64</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
72
|
+
<span class='line'> 65</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">form</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">attr</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
73
|
+
<span class='line'> 66</span>
|
74
|
+
<span class='line'> 67</span>
|
75
|
+
<span class='line'> 68</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">errorAttr</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">rio.Attr.create</span><span class="PUNC">(</span><span class="PUNC">{</span><span class="WHIT">
|
76
|
+
<span class='line'> 69</span> </span><span class="NAME">attrAccessors</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">Object.keys</span><span class="PUNC">(</span><span class="NAME">attributes</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">map</span><span class="PUNC">(</span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">attribute</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="PUNC">[</span><span class="NAME">attribute</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">""</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="WHIT">
|
77
|
+
<span class='line'> 70</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
78
|
+
<span class='line'> 71</span> </span><span class="NAME">form.errors</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">errorAttr</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
79
|
+
<span class='line'> 72</span> </span><span class="NAME">form.reset</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
80
|
+
<span class='line'> 73</span>
|
81
|
+
<span class='line'> 74</span> </span><span class="NAME">Object.keys</span><span class="PUNC">(</span><span class="NAME">attributes</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">attribute</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
82
|
+
<span class='line'> 75</span> </span><span class="NAME">form</span><span class="PUNC">[</span><span class="NAME">attribute</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">bind</span><span class="PUNC">(</span><span class="NAME">form.validate.bind</span><span class="PUNC">(</span><span class="NAME">form</span><span class="PUNC">)</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">
|
83
|
+
<span class='line'> 76</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
84
|
+
<span class='line'> 77</span>
|
85
|
+
<span class='line'> 78</span>
|
86
|
+
<span class='line'> 79</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">form</span><span class="PUNC">;</span><span class="WHIT">
|
87
|
+
<span class='line'> 80</span> </span><span class="PUNC">}</span><span class="WHIT">
|
88
|
+
<span class='line'> 81</span>
|
89
89
|
<span class='line'> 82</span>
|
90
|
-
<span class='line'> 83</span>
|
91
|
-
<span class='line'> 84</span>
|
92
|
-
<span class='line'> 85</span>
|
93
|
-
<span class='line'> 86</span>
|
94
|
-
<span class='line'> 87</span> </span><span class="NAME">
|
95
|
-
<span class='line'> 88</span> </span><span class="PUNC">
|
90
|
+
<span class='line'> 83</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
91
|
+
<span class='line'> 84</span> </span><span class="NAME">rio.Form.toString</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"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="STRN">"Form"</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
92
|
+
<span class='line'> 85</span>
|
93
|
+
<span class='line'> 86</span> </span><span class="NAME">rio.Validators</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
94
|
+
<span class='line'> 87</span> </span><span class="NAME">email</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">
|
95
|
+
<span class='line'> 88</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">value.validEmail</span><span class="PUNC">(</span><span class="PUNC">)</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="STRN">"not a valid email address"</span><span class="PUNC">;</span><span class="WHIT">
|
96
|
+
<span class='line'> 89</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
97
|
+
<span class='line'> 90</span>
|
98
|
+
<span class='line'> 91</span> </span><span class="NAME">presence</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">
|
99
|
+
<span class='line'> 92</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">value</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="PUNC">!</span><span class="NAME">value.blank</span><span class="PUNC">(</span><span class="PUNC">)</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="STRN">"cannot be blank"</span><span class="PUNC">;</span><span class="WHIT">
|
100
|
+
<span class='line'> 93</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
101
|
+
<span class='line'> 94</span>
|
102
|
+
<span class='line'> 95</span> </span><span class="NAME">length</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="NAME">options</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
103
|
+
<span class='line'> 96</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">blank</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">value</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">value.blank</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
104
|
+
<span class='line'> 97</span>
|
105
|
+
<span class='line'> 98</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">options.allowBlank</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">blank</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="STRN">""</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
106
|
+
<span class='line'> 99</span>
|
107
|
+
<span class='line'>100</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">blank</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">this.presence</span><span class="PUNC">(</span><span class="NAME">value</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
108
|
+
<span class='line'>101</span>
|
109
|
+
<span class='line'>102</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">options.minimum</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">value.length</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NAME">options.minimum</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
110
|
+
<span class='line'>103</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="STRN">"must be at least "</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">options.minimum</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">" characters long"</span><span class="PUNC">;</span><span class="WHIT">
|
111
|
+
<span class='line'>104</span> </span><span class="PUNC">}</span><span class="WHIT">
|
112
|
+
<span class='line'>105</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">options.maximum</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">value.length</span><span class="WHIT"> </span><span class="PUNC">></span><span class="WHIT"> </span><span class="NAME">options.maximum</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
113
|
+
<span class='line'>106</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="STRN">"can't be more than "</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">options.maximum</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">" characters long"</span><span class="PUNC">;</span><span class="WHIT">
|
114
|
+
<span class='line'>107</span> </span><span class="PUNC">}</span><span class="WHIT">
|
115
|
+
<span class='line'>108</span>
|
116
|
+
<span class='line'>109</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="STRN">""</span><span class="PUNC">;</span><span class="WHIT">
|
117
|
+
<span class='line'>110</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
118
|
+
<span class='line'>111</span>
|
119
|
+
<span class='line'>112</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"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="STRN">"Validators"</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
120
|
+
<span class='line'>113</span> </span><span class="PUNC">}</span><span class="PUNC">;</span></pre></body></html>
|
@@ -408,10 +408,10 @@
|
|
408
408
|
<span class='line'>401</span> </span><span class="NAME">onSuccess</span><span class="PUNC">(</span><span class="NAME">response</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
409
409
|
<span class='line'>402</span> </span><span class="PUNC">}</span><span class="WHIT">
|
410
410
|
<span class='line'>403</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
411
|
-
<span class='line'>404</span> </span><span class="NAME">onFailure</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
411
|
+
<span class='line'>404</span> </span><span class="NAME">onFailure</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">response</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
412
412
|
<span class='line'>405</span> </span><span class="COMM">// if (!entity.__destroying) {</span><span class="WHIT">
|
413
413
|
<span class='line'>406</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">onFailure</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
414
|
-
<span class='line'>407</span> </span><span class="NAME">onFailure</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
414
|
+
<span class='line'>407</span> </span><span class="NAME">onFailure</span><span class="PUNC">(</span><span class="NAME">response</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
415
415
|
<span class='line'>408</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">
|
416
416
|
<span class='line'>409</span> </span><span class="NAME">rio.Application.fail</span><span class="PUNC">(</span><span class="STRN">"Failed creating, updating, or destroying."</span><span class="PUNC">,</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">":\n"</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</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
417
417
|
<span class='line'>410</span> </span><span class="PUNC">}</span><span class="WHIT">
|
@@ -39,16 +39,24 @@ rio.Form = {
|
|
39
39
|
validate: function() {
|
40
40
|
var valid = true;
|
41
41
|
Object.keys(attributes).each(function(attribute) {
|
42
|
+
var errorMessage = "";
|
42
43
|
(attributes[attribute].validates || []).uniq().each(function(validate) {
|
43
|
-
var
|
44
|
-
|
45
|
-
validate(this.
|
46
|
-
|
47
|
-
|
44
|
+
var newErrorMessage = "";
|
45
|
+
if (Object.isString(validate)) {
|
46
|
+
newErrorMessage = rio.Validators[validate](this[attribute].value());
|
47
|
+
} else if (Object.isArray(validate)) {
|
48
|
+
newErrorMessage = rio.Validators[validate[0]](this[attribute].value(), validate[1]);
|
49
|
+
} else {
|
50
|
+
newErrorMessage = validate(this.values());
|
51
|
+
}
|
52
|
+
|
53
|
+
if (!(newErrorMessage || "").blank()) {
|
48
54
|
valid = false;
|
55
|
+
errorMessage = newErrorMessage;
|
49
56
|
}
|
50
|
-
this.errors[attribute].update(errorMessage);
|
51
57
|
}.bind(this));
|
58
|
+
|
59
|
+
this.errors[attribute].update(errorMessage);
|
52
60
|
}.bind(this));
|
53
61
|
return valid;
|
54
62
|
}
|
@@ -84,5 +92,22 @@ rio.Validators = {
|
|
84
92
|
return value && !value.blank() ? "" : "cannot be blank";
|
85
93
|
},
|
86
94
|
|
95
|
+
length: function(value, options) {
|
96
|
+
var blank = value == undefined || value.blank();
|
97
|
+
|
98
|
+
if (options.allowBlank && blank) { return ""; }
|
99
|
+
|
100
|
+
if (blank) { return this.presence(value); }
|
101
|
+
|
102
|
+
if (options.minimum && value.length < options.minimum) {
|
103
|
+
return "must be at least " + options.minimum + " characters long";
|
104
|
+
}
|
105
|
+
if (options.maximum && value.length > options.maximum) {
|
106
|
+
return "can't be more than " + options.maximum + " characters long";
|
107
|
+
}
|
108
|
+
|
109
|
+
return "";
|
110
|
+
},
|
111
|
+
|
87
112
|
toString: function() { return "Validators"; }
|
88
113
|
};
|
@@ -401,10 +401,10 @@ rio.Model = {
|
|
401
401
|
onSuccess(response);
|
402
402
|
}
|
403
403
|
},
|
404
|
-
onFailure: function() {
|
404
|
+
onFailure: function(response) {
|
405
405
|
// if (!entity.__destroying) {
|
406
406
|
if (onFailure) {
|
407
|
-
onFailure();
|
407
|
+
onFailure(response);
|
408
408
|
} else {
|
409
409
|
rio.Application.fail("Failed creating, updating, or destroying.", model + ":\n" + Object.toJSON(parameters));
|
410
410
|
}
|
@@ -58,8 +58,8 @@ describe(rio.Application, {
|
|
58
58
|
},
|
59
59
|
|
60
60
|
"should reload the page on refresh": function() {
|
61
|
-
/* You can't stub document.location.reload in firefox, so just skip the test */
|
62
|
-
if (Prototype.Browser.Gecko) { return; }
|
61
|
+
/* You can't stub document.location.reload in firefox or chrome, so just skip the test */
|
62
|
+
if (Prototype.Browser.Gecko || navigator.userAgent.indexOf("Chrome") > 0) { return; }
|
63
63
|
|
64
64
|
stub(document.location, "reload").shouldBeCalled();
|
65
65
|
this.applicationInstance.refresh();
|
@@ -96,6 +96,7 @@ describe(rio.Application, {
|
|
96
96
|
routes: {
|
97
97
|
"other": "otherPage",
|
98
98
|
":something/hello": "helloPage",
|
99
|
+
"business/:businessId": "helloPage",
|
99
100
|
"hello/*world": "worldPage",
|
100
101
|
"": "myPage"
|
101
102
|
},
|
@@ -215,6 +216,10 @@ describe(rio.Application, {
|
|
215
216
|
this.applicationInstance.matchRoutePath("123/hello").shouldEqual(":something/hello");
|
216
217
|
},
|
217
218
|
|
219
|
+
"should treat :part as wild cards separated by slashes at end of url": function() {
|
220
|
+
this.applicationInstance.matchRoutePath("business/123").shouldEqual("business/:businessId");
|
221
|
+
},
|
222
|
+
|
218
223
|
"should treat *part as optional": function() {
|
219
224
|
this.applicationInstance.matchRoutePath("hello/123").shouldEqual("hello/*world");
|
220
225
|
this.applicationInstance.matchRoutePath("hello").shouldEqual("hello/*world");
|
@@ -259,6 +264,10 @@ describe(rio.Application, {
|
|
259
264
|
this.applicationInstance.pathParts("123/hello").something.shouldEqual("123");
|
260
265
|
},
|
261
266
|
|
267
|
+
"should return a hash from the wildcard name to its value in the path for path parts when wild card is at the end": function() {
|
268
|
+
this.applicationInstance.pathParts("business/123").businessId.shouldEqual("123");
|
269
|
+
},
|
270
|
+
|
262
271
|
"should return a hash from the optional name to its value in the path for path parts": function() {
|
263
272
|
this.applicationInstance.pathParts("hello/456").world.shouldEqual("456");
|
264
273
|
},
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: riojs
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jason Tillery
|
@@ -10,7 +10,7 @@ autorequire:
|
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
12
|
|
13
|
-
date: 2010-
|
13
|
+
date: 2010-04-12 00:00:00 -05:00
|
14
14
|
default_executable:
|
15
15
|
dependencies:
|
16
16
|
- !ruby/object:Gem::Dependency
|