dojo-rails 0.9.9 → 0.9.10
Sign up to get free protection for your applications and to get access to all the features.
- data/lib/dojo/rails/version.rb +1 -1
- data/lib/dojo/version.rb +2 -2
- data/vendor/assets/javascripts/dojo.js +1 -1
- data/vendor/assets/javascripts/dojo/AdapterRegistry.js.uncompressed.js +11 -18
- data/vendor/assets/javascripts/dojo/Deferred.js +178 -0
- data/vendor/assets/javascripts/dojo/Deferred.js.uncompressed.js +314 -0
- data/vendor/assets/javascripts/dojo/DeferredList.js.uncompressed.js +4 -6
- data/vendor/assets/javascripts/dojo/Evented.js.uncompressed.js +15 -12
- data/vendor/assets/javascripts/dojo/LICENSE +1 -1
- data/vendor/assets/javascripts/dojo/NodeList-data.js.uncompressed.js +84 -73
- data/vendor/assets/javascripts/dojo/NodeList-dom.js +1 -1
- data/vendor/assets/javascripts/dojo/NodeList-dom.js.uncompressed.js +121 -66
- data/vendor/assets/javascripts/dojo/NodeList-fx.js +28 -27
- data/vendor/assets/javascripts/dojo/NodeList-fx.js.uncompressed.js +46 -47
- data/vendor/assets/javascripts/dojo/NodeList-html.js.uncompressed.js +19 -21
- data/vendor/assets/javascripts/dojo/NodeList-manipulate.js.uncompressed.js +172 -178
- data/vendor/assets/javascripts/dojo/NodeList-traverse.js.uncompressed.js +125 -130
- data/vendor/assets/javascripts/dojo/NodeList.js +10 -0
- data/vendor/assets/javascripts/dojo/NodeList.js.uncompressed.js +6 -0
- data/vendor/assets/javascripts/dojo/OpenAjax.js +13 -15
- data/vendor/assets/javascripts/dojo/Stateful.js +65 -41
- data/vendor/assets/javascripts/dojo/Stateful.js.uncompressed.js +110 -36
- data/vendor/assets/javascripts/dojo/_base/Color.js.uncompressed.js +34 -40
- data/vendor/assets/javascripts/dojo/_base/Deferred.js +84 -84
- data/vendor/assets/javascripts/dojo/_base/Deferred.js.uncompressed.js +57 -74
- data/vendor/assets/javascripts/dojo/_base/NodeList.js +2 -3
- data/vendor/assets/javascripts/dojo/_base/NodeList.js.uncompressed.js +58 -48
- data/vendor/assets/javascripts/dojo/_base/array.js +63 -67
- data/vendor/assets/javascripts/dojo/_base/array.js.uncompressed.js +259 -259
- data/vendor/assets/javascripts/dojo/_base/browser.js.uncompressed.js +10 -3
- data/vendor/assets/javascripts/dojo/_base/config.js.uncompressed.js +85 -72
- data/vendor/assets/javascripts/dojo/_base/configFirefoxExtension.js +15 -13
- data/vendor/assets/javascripts/dojo/_base/configNode.js +5 -5
- data/vendor/assets/javascripts/dojo/_base/configRhino.js +1 -1
- data/vendor/assets/javascripts/dojo/_base/configSpidermonkey.js +5 -9
- data/vendor/assets/javascripts/dojo/_base/connect.js +1 -1
- data/vendor/assets/javascripts/dojo/_base/connect.js.uncompressed.js +177 -203
- data/vendor/assets/javascripts/dojo/_base/declare.js +94 -90
- data/vendor/assets/javascripts/dojo/_base/declare.js.uncompressed.js +397 -402
- data/vendor/assets/javascripts/dojo/_base/event.js +16 -13
- data/vendor/assets/javascripts/dojo/_base/event.js.uncompressed.js +41 -33
- data/vendor/assets/javascripts/dojo/_base/fx.js +187 -183
- data/vendor/assets/javascripts/dojo/_base/fx.js.uncompressed.js +134 -130
- data/vendor/assets/javascripts/dojo/_base/html.js.uncompressed.js +14 -11
- data/vendor/assets/javascripts/dojo/_base/json.js.uncompressed.js +12 -6
- data/vendor/assets/javascripts/dojo/_base/kernel.js +35 -38
- data/vendor/assets/javascripts/dojo/_base/kernel.js.uncompressed.js +59 -62
- data/vendor/assets/javascripts/dojo/_base/lang.js +99 -98
- data/vendor/assets/javascripts/dojo/_base/lang.js.uncompressed.js +435 -537
- data/vendor/assets/javascripts/dojo/_base/loader.js +179 -154
- data/vendor/assets/javascripts/dojo/_base/loader.js.uncompressed.js +252 -194
- data/vendor/assets/javascripts/dojo/_base/query.js +2 -2
- data/vendor/assets/javascripts/dojo/_base/query.js.uncompressed.js +12 -2
- data/vendor/assets/javascripts/dojo/_base/sniff.js +6 -58
- data/vendor/assets/javascripts/dojo/_base/sniff.js.uncompressed.js +60 -151
- data/vendor/assets/javascripts/dojo/_base/unload.js +10 -9
- data/vendor/assets/javascripts/dojo/_base/unload.js.uncompressed.js +44 -43
- data/vendor/assets/javascripts/dojo/_base/url.js.uncompressed.js +1 -3
- data/vendor/assets/javascripts/dojo/_base/window.js +32 -35
- data/vendor/assets/javascripts/dojo/_base/window.js.uncompressed.js +117 -109
- data/vendor/assets/javascripts/dojo/_base/xhr.js +147 -263
- data/vendor/assets/javascripts/dojo/_base/xhr.js.uncompressed.js +253 -378
- data/vendor/assets/javascripts/dojo/_firebug/firebug.js +459 -458
- data/vendor/assets/javascripts/dojo/_firebug/firebug.js.uncompressed.js +39 -31
- data/vendor/assets/javascripts/dojo/aspect.js +71 -63
- data/vendor/assets/javascripts/dojo/aspect.js.uncompressed.js +111 -99
- data/vendor/assets/javascripts/dojo/back.js +11 -10
- data/vendor/assets/javascripts/dojo/back.js.uncompressed.js +59 -59
- data/vendor/assets/javascripts/dojo/behavior.js +49 -47
- data/vendor/assets/javascripts/dojo/behavior.js.uncompressed.js +26 -25
- data/vendor/assets/javascripts/dojo/cache.js +1 -1
- data/vendor/assets/javascripts/dojo/cache.js.uncompressed.js +2 -4
- data/vendor/assets/javascripts/dojo/cldr/monetary.js +13 -12
- data/vendor/assets/javascripts/dojo/cldr/monetary.js.uncompressed.js +15 -10
- data/vendor/assets/javascripts/dojo/cldr/nls/ar/buddhist.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/ar/buddhist.js.uncompressed.js +85 -70
- data/vendor/assets/javascripts/dojo/cldr/nls/ar/currency.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/ar/currency.js.uncompressed.js +6 -6
- data/vendor/assets/javascripts/dojo/cldr/nls/ar/gregorian.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/ar/gregorian.js.uncompressed.js +157 -141
- data/vendor/assets/javascripts/dojo/cldr/nls/ar/hebrew.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/ar/hebrew.js.uncompressed.js +62 -45
- data/vendor/assets/javascripts/dojo/cldr/nls/ar/islamic.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/ar/islamic.js.uncompressed.js +112 -80
- data/vendor/assets/javascripts/dojo/cldr/nls/ar/number.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/ar/number.js.uncompressed.js +11 -10
- data/vendor/assets/javascripts/dojo/cldr/nls/buddhist.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/buddhist.js.uncompressed.js +110 -109
- data/vendor/assets/javascripts/dojo/cldr/nls/ca/currency.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/ca/currency.js.uncompressed.js +6 -6
- data/vendor/assets/javascripts/dojo/cldr/nls/ca/gregorian.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/ca/gregorian.js.uncompressed.js +176 -161
- data/vendor/assets/javascripts/dojo/cldr/nls/ca/number.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/ca/number.js.uncompressed.js +9 -10
- data/vendor/assets/javascripts/dojo/cldr/nls/cs/buddhist.js +8 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/cs/buddhist.js.uncompressed.js +170 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/cs/currency.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/cs/currency.js.uncompressed.js +9 -9
- data/vendor/assets/javascripts/dojo/cldr/nls/cs/gregorian.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/cs/gregorian.js.uncompressed.js +166 -139
- data/vendor/assets/javascripts/dojo/cldr/nls/cs/islamic.js +8 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/cs/islamic.js.uncompressed.js +99 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/cs/number.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/cs/number.js.uncompressed.js +9 -10
- data/vendor/assets/javascripts/dojo/cldr/nls/currency.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/currency.js.uncompressed.js +5 -4
- data/vendor/assets/javascripts/dojo/cldr/nls/da/buddhist.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/da/buddhist.js.uncompressed.js +91 -89
- data/vendor/assets/javascripts/dojo/cldr/nls/da/currency.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/da/currency.js.uncompressed.js +6 -6
- data/vendor/assets/javascripts/dojo/cldr/nls/da/gregorian.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/da/gregorian.js.uncompressed.js +174 -156
- data/vendor/assets/javascripts/dojo/cldr/nls/da/islamic.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/da/islamic.js.uncompressed.js +60 -56
- data/vendor/assets/javascripts/dojo/cldr/nls/da/number.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/da/number.js.uncompressed.js +9 -10
- data/vendor/assets/javascripts/dojo/cldr/nls/de/buddhist.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/de/buddhist.js.uncompressed.js +92 -80
- data/vendor/assets/javascripts/dojo/cldr/nls/de/currency.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/de/currency.js.uncompressed.js +8 -8
- data/vendor/assets/javascripts/dojo/cldr/nls/de/gregorian.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/de/gregorian.js.uncompressed.js +176 -158
- data/vendor/assets/javascripts/dojo/cldr/nls/de/islamic.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/de/islamic.js.uncompressed.js +63 -143
- data/vendor/assets/javascripts/dojo/cldr/nls/de/number.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/de/number.js.uncompressed.js +9 -10
- data/vendor/assets/javascripts/dojo/cldr/nls/el/buddhist.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/el/buddhist.js.uncompressed.js +144 -70
- data/vendor/assets/javascripts/dojo/cldr/nls/el/currency.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/el/currency.js.uncompressed.js +6 -5
- data/vendor/assets/javascripts/dojo/cldr/nls/el/gregorian.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/el/gregorian.js.uncompressed.js +170 -153
- data/vendor/assets/javascripts/dojo/cldr/nls/el/hebrew.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/el/hebrew.js.uncompressed.js +78 -37
- data/vendor/assets/javascripts/dojo/cldr/nls/el/number.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/el/number.js.uncompressed.js +9 -9
- data/vendor/assets/javascripts/dojo/cldr/nls/en-au/gregorian.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/en-au/gregorian.js.uncompressed.js +15 -8
- data/vendor/assets/javascripts/dojo/cldr/nls/en-ca/gregorian.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/en-ca/gregorian.js.uncompressed.js +12 -10
- data/vendor/assets/javascripts/dojo/cldr/nls/en-gb/buddhist.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/en-gb/buddhist.js.uncompressed.js +69 -64
- data/vendor/assets/javascripts/dojo/cldr/nls/en-gb/gregorian.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/en-gb/gregorian.js.uncompressed.js +16 -12
- data/vendor/assets/javascripts/dojo/cldr/nls/en-gb/islamic.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/en-gb/islamic.js.uncompressed.js +40 -127
- data/vendor/assets/javascripts/dojo/cldr/nls/en/buddhist.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/en/buddhist.js.uncompressed.js +77 -72
- data/vendor/assets/javascripts/dojo/cldr/nls/en/currency.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/en/currency.js.uncompressed.js +7 -7
- data/vendor/assets/javascripts/dojo/cldr/nls/en/gregorian.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/en/gregorian.js.uncompressed.js +154 -140
- data/vendor/assets/javascripts/dojo/cldr/nls/en/islamic.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/en/islamic.js.uncompressed.js +52 -139
- data/vendor/assets/javascripts/dojo/cldr/nls/en/number.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/en/number.js.uncompressed.js +9 -11
- data/vendor/assets/javascripts/dojo/cldr/nls/es/buddhist.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/es/buddhist.js.uncompressed.js +104 -78
- data/vendor/assets/javascripts/dojo/cldr/nls/es/currency.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/es/currency.js.uncompressed.js +8 -7
- data/vendor/assets/javascripts/dojo/cldr/nls/es/gregorian.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/es/gregorian.js.uncompressed.js +177 -156
- data/vendor/assets/javascripts/dojo/cldr/nls/es/islamic.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/es/islamic.js.uncompressed.js +74 -145
- data/vendor/assets/javascripts/dojo/cldr/nls/es/number.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/es/number.js.uncompressed.js +9 -9
- data/vendor/assets/javascripts/dojo/cldr/nls/fi/buddhist.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/fi/buddhist.js.uncompressed.js +150 -102
- data/vendor/assets/javascripts/dojo/cldr/nls/fi/currency.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/fi/currency.js.uncompressed.js +7 -12
- data/vendor/assets/javascripts/dojo/cldr/nls/fi/gregorian.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/fi/gregorian.js.uncompressed.js +163 -144
- data/vendor/assets/javascripts/dojo/cldr/nls/fi/hebrew.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/fi/hebrew.js.uncompressed.js +130 -95
- data/vendor/assets/javascripts/dojo/cldr/nls/fi/islamic.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/fi/islamic.js.uncompressed.js +119 -83
- data/vendor/assets/javascripts/dojo/cldr/nls/fi/number.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/fi/number.js.uncompressed.js +9 -10
- data/vendor/assets/javascripts/dojo/cldr/nls/fr-ch/gregorian.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/fr-ch/gregorian.js.uncompressed.js +2 -2
- data/vendor/assets/javascripts/dojo/cldr/nls/fr-ch/number.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/fr-ch/number.js.uncompressed.js +2 -2
- data/vendor/assets/javascripts/dojo/cldr/nls/fr/buddhist.js +8 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/fr/buddhist.js.uncompressed.js +160 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/fr/currency.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/fr/currency.js.uncompressed.js +11 -12
- data/vendor/assets/javascripts/dojo/cldr/nls/fr/gregorian.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/fr/gregorian.js.uncompressed.js +171 -157
- data/vendor/assets/javascripts/dojo/cldr/nls/fr/hebrew.js +8 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/fr/hebrew.js.uncompressed.js +139 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/fr/islamic.js +8 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/fr/islamic.js.uncompressed.js +177 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/fr/number.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/fr/number.js.uncompressed.js +9 -10
- data/vendor/assets/javascripts/dojo/cldr/nls/gregorian.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/gregorian.js.uncompressed.js +127 -125
- data/vendor/assets/javascripts/dojo/cldr/nls/he/currency.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/he/currency.js.uncompressed.js +6 -6
- data/vendor/assets/javascripts/dojo/cldr/nls/he/gregorian.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/he/gregorian.js.uncompressed.js +168 -140
- data/vendor/assets/javascripts/dojo/cldr/nls/he/hebrew.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/he/hebrew.js.uncompressed.js +83 -40
- data/vendor/assets/javascripts/dojo/cldr/nls/he/islamic.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/he/islamic.js.uncompressed.js +56 -40
- data/vendor/assets/javascripts/dojo/cldr/nls/he/number.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/he/number.js.uncompressed.js +9 -10
- data/vendor/assets/javascripts/dojo/cldr/nls/hebrew.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/hebrew.js.uncompressed.js +138 -132
- data/vendor/assets/javascripts/dojo/cldr/nls/hu/buddhist.js +8 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/hu/buddhist.js.uncompressed.js +209 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/hu/currency.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/hu/currency.js.uncompressed.js +7 -7
- data/vendor/assets/javascripts/dojo/cldr/nls/hu/gregorian.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/hu/gregorian.js.uncompressed.js +161 -138
- data/vendor/assets/javascripts/dojo/cldr/nls/hu/hebrew.js +8 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/hu/hebrew.js.uncompressed.js +187 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/hu/islamic.js +8 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/hu/islamic.js.uncompressed.js +199 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/hu/number.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/hu/number.js.uncompressed.js +8 -9
- data/vendor/assets/javascripts/dojo/cldr/nls/islamic.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/islamic.js.uncompressed.js +137 -132
- data/vendor/assets/javascripts/dojo/cldr/nls/it/buddhist.js +8 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/it/buddhist.js.uncompressed.js +192 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/it/currency.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/it/currency.js.uncompressed.js +6 -6
- data/vendor/assets/javascripts/dojo/cldr/nls/it/gregorian.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/it/gregorian.js.uncompressed.js +161 -146
- data/vendor/assets/javascripts/dojo/cldr/nls/it/islamic.js +8 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/it/islamic.js.uncompressed.js +104 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/it/number.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/it/number.js.uncompressed.js +9 -3
- data/vendor/assets/javascripts/dojo/cldr/nls/ja/buddhist.js +8 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/ja/buddhist.js.uncompressed.js +101 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/ja/currency.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/ja/currency.js.uncompressed.js +8 -8
- data/vendor/assets/javascripts/dojo/cldr/nls/ja/gregorian.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/ja/gregorian.js.uncompressed.js +159 -139
- data/vendor/assets/javascripts/dojo/cldr/nls/ja/hebrew.js +8 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/ja/hebrew.js.uncompressed.js +168 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/ja/islamic.js +8 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/ja/islamic.js.uncompressed.js +128 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/ja/number.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/ja/number.js.uncompressed.js +5 -3
- data/vendor/assets/javascripts/dojo/cldr/nls/ko/buddhist.js +8 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/ko/buddhist.js.uncompressed.js +127 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/ko/currency.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/ko/currency.js.uncompressed.js +6 -6
- data/vendor/assets/javascripts/dojo/cldr/nls/ko/gregorian.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/ko/gregorian.js.uncompressed.js +153 -137
- data/vendor/assets/javascripts/dojo/cldr/nls/ko/number.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/ko/number.js.uncompressed.js +9 -10
- data/vendor/assets/javascripts/dojo/cldr/nls/nb/buddhist.js +8 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/nb/buddhist.js.uncompressed.js +206 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/nb/currency.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/nb/currency.js.uncompressed.js +6 -14
- data/vendor/assets/javascripts/dojo/cldr/nls/nb/gregorian.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/nb/gregorian.js.uncompressed.js +176 -153
- data/vendor/assets/javascripts/dojo/cldr/nls/nb/islamic.js +8 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/nb/islamic.js.uncompressed.js +133 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/nb/number.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/nb/number.js.uncompressed.js +9 -10
- data/vendor/assets/javascripts/dojo/cldr/nls/nl/buddhist.js +8 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/nl/buddhist.js.uncompressed.js +133 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/nl/currency.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/nl/currency.js.uncompressed.js +6 -6
- data/vendor/assets/javascripts/dojo/cldr/nls/nl/gregorian.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/nl/gregorian.js.uncompressed.js +180 -162
- data/vendor/assets/javascripts/dojo/cldr/nls/nl/hebrew.js +8 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/nl/hebrew.js.uncompressed.js +123 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/nl/islamic.js +8 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/nl/islamic.js.uncompressed.js +163 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/nl/number.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/nl/number.js.uncompressed.js +9 -10
- data/vendor/assets/javascripts/dojo/cldr/nls/number.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/number.js.uncompressed.js +17 -19
- data/vendor/assets/javascripts/dojo/cldr/nls/pl/buddhist.js +8 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/pl/buddhist.js.uncompressed.js +203 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/pl/currency.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/pl/currency.js.uncompressed.js +6 -6
- data/vendor/assets/javascripts/dojo/cldr/nls/pl/gregorian.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/pl/gregorian.js.uncompressed.js +169 -149
- data/vendor/assets/javascripts/dojo/cldr/nls/pl/hebrew.js +8 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/pl/hebrew.js.uncompressed.js +166 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/pl/islamic.js +8 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/pl/islamic.js.uncompressed.js +196 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/pl/number.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/pl/number.js.uncompressed.js +9 -10
- data/vendor/assets/javascripts/dojo/cldr/nls/pt-pt/buddhist.js +8 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/pt-pt/buddhist.js.uncompressed.js +127 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/pt-pt/currency.js +8 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/pt-pt/currency.js.uncompressed.js +8 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/pt-pt/gregorian.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/pt-pt/gregorian.js.uncompressed.js +78 -62
- data/vendor/assets/javascripts/dojo/cldr/nls/pt-pt/islamic.js +8 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/pt-pt/islamic.js.uncompressed.js +82 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/pt-pt/number.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/pt-pt/number.js.uncompressed.js +3 -2
- data/vendor/assets/javascripts/dojo/cldr/nls/pt/buddhist.js +8 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/pt/buddhist.js.uncompressed.js +130 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/pt/currency.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/pt/currency.js.uncompressed.js +6 -6
- data/vendor/assets/javascripts/dojo/cldr/nls/pt/gregorian.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/pt/gregorian.js.uncompressed.js +185 -166
- data/vendor/assets/javascripts/dojo/cldr/nls/pt/hebrew.js +8 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/pt/hebrew.js.uncompressed.js +137 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/pt/islamic.js +8 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/pt/islamic.js.uncompressed.js +101 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/pt/number.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/pt/number.js.uncompressed.js +9 -10
- data/vendor/assets/javascripts/dojo/cldr/nls/ro/buddhist.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/ro/buddhist.js.uncompressed.js +148 -62
- data/vendor/assets/javascripts/dojo/cldr/nls/ro/currency.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/ro/currency.js.uncompressed.js +6 -5
- data/vendor/assets/javascripts/dojo/cldr/nls/ro/gregorian.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/ro/gregorian.js.uncompressed.js +170 -159
- data/vendor/assets/javascripts/dojo/cldr/nls/ro/hebrew.js +8 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/ro/hebrew.js.uncompressed.js +169 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/ro/islamic.js +8 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/ro/islamic.js.uncompressed.js +117 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/ro/number.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/ro/number.js.uncompressed.js +9 -10
- data/vendor/assets/javascripts/dojo/cldr/nls/ru/buddhist.js +8 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/ru/buddhist.js.uncompressed.js +203 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/ru/currency.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/ru/currency.js.uncompressed.js +7 -6
- data/vendor/assets/javascripts/dojo/cldr/nls/ru/gregorian.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/ru/gregorian.js.uncompressed.js +184 -155
- data/vendor/assets/javascripts/dojo/cldr/nls/ru/hebrew.js +8 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/ru/hebrew.js.uncompressed.js +169 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/ru/islamic.js +8 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/ru/islamic.js.uncompressed.js +197 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/ru/number.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/ru/number.js.uncompressed.js +10 -10
- data/vendor/assets/javascripts/dojo/cldr/nls/sk/currency.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/sk/currency.js.uncompressed.js +7 -7
- data/vendor/assets/javascripts/dojo/cldr/nls/sk/gregorian.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/sk/gregorian.js.uncompressed.js +172 -148
- data/vendor/assets/javascripts/dojo/cldr/nls/sk/number.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/sk/number.js.uncompressed.js +5 -2
- data/vendor/assets/javascripts/dojo/cldr/nls/sl/currency.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/sl/currency.js.uncompressed.js +7 -7
- data/vendor/assets/javascripts/dojo/cldr/nls/sl/gregorian.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/sl/gregorian.js.uncompressed.js +157 -134
- data/vendor/assets/javascripts/dojo/cldr/nls/sl/number.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/sl/number.js.uncompressed.js +9 -10
- data/vendor/assets/javascripts/dojo/cldr/nls/sv/buddhist.js +8 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/sv/buddhist.js.uncompressed.js +209 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/sv/currency.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/sv/currency.js.uncompressed.js +7 -9
- data/vendor/assets/javascripts/dojo/cldr/nls/sv/gregorian.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/sv/gregorian.js.uncompressed.js +164 -152
- data/vendor/assets/javascripts/dojo/cldr/nls/sv/hebrew.js +8 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/sv/hebrew.js.uncompressed.js +167 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/sv/islamic.js +8 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/sv/islamic.js.uncompressed.js +189 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/sv/number.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/sv/number.js.uncompressed.js +9 -10
- data/vendor/assets/javascripts/dojo/cldr/nls/th/buddhist.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/th/buddhist.js.uncompressed.js +91 -65
- data/vendor/assets/javascripts/dojo/cldr/nls/th/currency.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/th/currency.js.uncompressed.js +7 -7
- data/vendor/assets/javascripts/dojo/cldr/nls/th/gregorian.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/th/gregorian.js.uncompressed.js +161 -138
- data/vendor/assets/javascripts/dojo/cldr/nls/th/hebrew.js +8 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/th/hebrew.js.uncompressed.js +139 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/th/islamic.js +8 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/th/islamic.js.uncompressed.js +134 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/th/number.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/th/number.js.uncompressed.js +9 -10
- data/vendor/assets/javascripts/dojo/cldr/nls/tr/buddhist.js +8 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/tr/buddhist.js.uncompressed.js +203 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/tr/currency.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/tr/currency.js.uncompressed.js +8 -8
- data/vendor/assets/javascripts/dojo/cldr/nls/tr/gregorian.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/tr/gregorian.js.uncompressed.js +160 -146
- data/vendor/assets/javascripts/dojo/cldr/nls/tr/hebrew.js +8 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/tr/hebrew.js.uncompressed.js +161 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/tr/islamic.js +8 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/tr/islamic.js.uncompressed.js +181 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/tr/number.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/tr/number.js.uncompressed.js +9 -10
- data/vendor/assets/javascripts/dojo/cldr/nls/zh-hant/buddhist.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/zh-hant/buddhist.js.uncompressed.js +141 -95
- data/vendor/assets/javascripts/dojo/cldr/nls/zh-hant/currency.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/zh-hant/currency.js.uncompressed.js +7 -6
- data/vendor/assets/javascripts/dojo/cldr/nls/zh-hant/gregorian.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/zh-hant/gregorian.js.uncompressed.js +144 -146
- data/vendor/assets/javascripts/dojo/cldr/nls/zh-hant/hebrew.js +8 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/zh-hant/hebrew.js.uncompressed.js +182 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/zh-hant/islamic.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/zh-hant/islamic.js.uncompressed.js +153 -54
- data/vendor/assets/javascripts/dojo/cldr/nls/zh-hant/number.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/zh-hant/number.js.uncompressed.js +2 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/zh-hk/currency.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/zh-hk/currency.js.uncompressed.js +6 -6
- data/vendor/assets/javascripts/dojo/cldr/nls/zh-hk/gregorian.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/zh-hk/gregorian.js.uncompressed.js +34 -37
- data/vendor/assets/javascripts/dojo/cldr/nls/zh-hk/number.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/zh-hk/number.js.uncompressed.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/zh-tw/currency.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/zh-tw/currency.js.uncompressed.js +5 -4
- data/vendor/assets/javascripts/dojo/cldr/nls/zh-tw/gregorian.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/zh-tw/gregorian.js.uncompressed.js +51 -49
- data/vendor/assets/javascripts/dojo/cldr/nls/zh-tw/number.js +8 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/zh-tw/number.js.uncompressed.js +7 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/zh/buddhist.js +8 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/zh/buddhist.js.uncompressed.js +205 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/zh/currency.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/zh/currency.js.uncompressed.js +6 -6
- data/vendor/assets/javascripts/dojo/cldr/nls/zh/gregorian.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/zh/gregorian.js.uncompressed.js +152 -135
- data/vendor/assets/javascripts/dojo/cldr/nls/zh/hebrew.js +8 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/zh/hebrew.js.uncompressed.js +181 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/zh/islamic.js +8 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/zh/islamic.js.uncompressed.js +137 -0
- data/vendor/assets/javascripts/dojo/cldr/nls/zh/number.js +1 -1
- data/vendor/assets/javascripts/dojo/cldr/nls/zh/number.js.uncompressed.js +4 -3
- data/vendor/assets/javascripts/dojo/cldr/supplemental.js +25 -28
- data/vendor/assets/javascripts/dojo/cldr/supplemental.js.uncompressed.js +46 -39
- data/vendor/assets/javascripts/dojo/colors.js +2 -1
- data/vendor/assets/javascripts/dojo/colors.js.uncompressed.js +22 -22
- data/vendor/assets/javascripts/dojo/cookie.js.uncompressed.js +30 -30
- data/vendor/assets/javascripts/dojo/currency.js +14 -13
- data/vendor/assets/javascripts/dojo/currency.js.uncompressed.js +64 -66
- data/vendor/assets/javascripts/dojo/data/ItemFileReadStore.js +138 -138
- data/vendor/assets/javascripts/dojo/data/ItemFileReadStore.js.uncompressed.js +251 -245
- data/vendor/assets/javascripts/dojo/data/ItemFileWriteStore.js +1 -1
- data/vendor/assets/javascripts/dojo/data/ItemFileWriteStore.js.uncompressed.js +80 -69
- data/vendor/assets/javascripts/dojo/data/ObjectStore.js +176 -169
- data/vendor/assets/javascripts/dojo/data/ObjectStore.js.uncompressed.js +122 -83
- data/vendor/assets/javascripts/dojo/data/api/Identity.js +6 -7
- data/vendor/assets/javascripts/dojo/data/api/Identity.js.uncompressed.js +35 -33
- data/vendor/assets/javascripts/dojo/data/api/Item.js +10 -0
- data/vendor/assets/javascripts/dojo/data/api/Item.js.uncompressed.js +13 -0
- data/vendor/assets/javascripts/dojo/data/api/Notification.js +5 -6
- data/vendor/assets/javascripts/dojo/data/api/Notification.js.uncompressed.js +39 -51
- data/vendor/assets/javascripts/dojo/data/api/Read.js +2 -3
- data/vendor/assets/javascripts/dojo/data/api/Read.js.uncompressed.js +85 -84
- data/vendor/assets/javascripts/dojo/data/api/Request.js +2 -3
- data/vendor/assets/javascripts/dojo/data/api/Request.js.uncompressed.js +10 -13
- data/vendor/assets/javascripts/dojo/data/api/Write.js +9 -10
- data/vendor/assets/javascripts/dojo/data/api/Write.js.uncompressed.js +28 -43
- data/vendor/assets/javascripts/dojo/data/util/filter.js +3 -2
- data/vendor/assets/javascripts/dojo/data/util/filter.js.uncompressed.js +19 -16
- data/vendor/assets/javascripts/dojo/data/util/simpleFetch.js +37 -40
- data/vendor/assets/javascripts/dojo/data/util/simpleFetch.js.uncompressed.js +202 -57
- data/vendor/assets/javascripts/dojo/data/util/sorter.js +3 -2
- data/vendor/assets/javascripts/dojo/data/util/sorter.js.uncompressed.js +16 -16
- data/vendor/assets/javascripts/dojo/date.js +106 -105
- data/vendor/assets/javascripts/dojo/date.js.uncompressed.js +46 -47
- data/vendor/assets/javascripts/dojo/date/locale.js +196 -183
- data/vendor/assets/javascripts/dojo/date/locale.js.uncompressed.js +105 -81
- data/vendor/assets/javascripts/dojo/date/stamp.js +10 -9
- data/vendor/assets/javascripts/dojo/date/stamp.js.uncompressed.js +40 -42
- data/vendor/assets/javascripts/dojo/dnd/AutoSource.js +2 -2
- data/vendor/assets/javascripts/dojo/dnd/AutoSource.js.uncompressed.js +3 -4
- data/vendor/assets/javascripts/dojo/dnd/Avatar.js +32 -30
- data/vendor/assets/javascripts/dojo/dnd/Avatar.js.uncompressed.js +45 -34
- data/vendor/assets/javascripts/dojo/dnd/Container.js +99 -96
- data/vendor/assets/javascripts/dojo/dnd/Container.js.uncompressed.js +123 -99
- data/vendor/assets/javascripts/dojo/dnd/Manager.js +58 -52
- data/vendor/assets/javascripts/dojo/dnd/Manager.js.uncompressed.js +52 -42
- data/vendor/assets/javascripts/dojo/dnd/Moveable.js +41 -39
- data/vendor/assets/javascripts/dojo/dnd/Moveable.js.uncompressed.js +72 -60
- data/vendor/assets/javascripts/dojo/dnd/Mover.js +19 -17
- data/vendor/assets/javascripts/dojo/dnd/Mover.js.uncompressed.js +37 -32
- data/vendor/assets/javascripts/dojo/dnd/Selector.js +52 -50
- data/vendor/assets/javascripts/dojo/dnd/Selector.js.uncompressed.js +51 -46
- data/vendor/assets/javascripts/dojo/dnd/Source.js +109 -106
- data/vendor/assets/javascripts/dojo/dnd/Source.js.uncompressed.js +60 -67
- data/vendor/assets/javascripts/dojo/dnd/Target.js +3 -3
- data/vendor/assets/javascripts/dojo/dnd/Target.js.uncompressed.js +7 -7
- data/vendor/assets/javascripts/dojo/dnd/TimedMoveable.js +19 -20
- data/vendor/assets/javascripts/dojo/dnd/TimedMoveable.js.uncompressed.js +9 -14
- data/vendor/assets/javascripts/dojo/dnd/autoscroll.js +48 -39
- data/vendor/assets/javascripts/dojo/dnd/autoscroll.js.uncompressed.js +77 -46
- data/vendor/assets/javascripts/dojo/dnd/common.js +11 -10
- data/vendor/assets/javascripts/dojo/dnd/common.js.uncompressed.js +19 -13
- data/vendor/assets/javascripts/dojo/dnd/move.js +31 -34
- data/vendor/assets/javascripts/dojo/dnd/move.js.uncompressed.js +31 -27
- data/vendor/assets/javascripts/dojo/dojo.js +12 -1869
- data/vendor/assets/javascripts/dojo/dojo.js.uncompressed.js +7168 -5874
- data/vendor/assets/javascripts/dojo/dojo.profile.js +6 -6
- data/vendor/assets/javascripts/dojo/dom-attr.js +30 -31
- data/vendor/assets/javascripts/dojo/dom-attr.js.uncompressed.js +71 -89
- data/vendor/assets/javascripts/dojo/dom-class.js.uncompressed.js +161 -155
- data/vendor/assets/javascripts/dojo/dom-construct.js +1 -1
- data/vendor/assets/javascripts/dojo/dom-construct.js.uncompressed.js +159 -202
- data/vendor/assets/javascripts/dojo/dom-form.js.uncompressed.js +60 -77
- data/vendor/assets/javascripts/dojo/dom-geometry.js +43 -45
- data/vendor/assets/javascripts/dojo/dom-geometry.js.uncompressed.js +257 -403
- data/vendor/assets/javascripts/dojo/dom-prop.js +36 -37
- data/vendor/assets/javascripts/dojo/dom-prop.js.uncompressed.js +33 -42
- data/vendor/assets/javascripts/dojo/dom-style.js +2 -2
- data/vendor/assets/javascripts/dojo/dom-style.js.uncompressed.js +127 -142
- data/vendor/assets/javascripts/dojo/dom.js +3 -1
- data/vendor/assets/javascripts/dojo/dom.js.uncompressed.js +77 -85
- data/vendor/assets/javascripts/dojo/domReady.js +2 -2
- data/vendor/assets/javascripts/dojo/domReady.js.uncompressed.js +4 -2
- data/vendor/assets/javascripts/dojo/errors/CancelError.js +10 -0
- data/vendor/assets/javascripts/dojo/errors/CancelError.js.uncompressed.js +13 -0
- data/vendor/assets/javascripts/dojo/errors/RequestError.js +12 -0
- data/vendor/assets/javascripts/dojo/errors/RequestError.js.uncompressed.js +15 -0
- data/vendor/assets/javascripts/dojo/errors/RequestTimeoutError.js +10 -0
- data/vendor/assets/javascripts/dojo/errors/RequestTimeoutError.js.uncompressed.js +15 -0
- data/vendor/assets/javascripts/dojo/errors/create.js +36 -0
- data/vendor/assets/javascripts/dojo/errors/create.js.uncompressed.js +41 -0
- data/vendor/assets/javascripts/dojo/fx.js.uncompressed.js +27 -34
- data/vendor/assets/javascripts/dojo/fx/Toggler.js.uncompressed.js +9 -11
- data/vendor/assets/javascripts/dojo/fx/easing.js.uncompressed.js +7 -15
- data/vendor/assets/javascripts/dojo/gears.js +10 -9
- data/vendor/assets/javascripts/dojo/gears.js.uncompressed.js +18 -14
- data/vendor/assets/javascripts/dojo/has.js +35 -35
- data/vendor/assets/javascripts/dojo/has.js.uncompressed.js +55 -60
- data/vendor/assets/javascripts/dojo/hash.js +74 -74
- data/vendor/assets/javascripts/dojo/hash.js.uncompressed.js +62 -49
- data/vendor/assets/javascripts/dojo/hccss.js +23 -0
- data/vendor/assets/javascripts/dojo/hccss.js.uncompressed.js +51 -0
- data/vendor/assets/javascripts/dojo/html.js +81 -64
- data/vendor/assets/javascripts/dojo/html.js.uncompressed.js +107 -76
- data/vendor/assets/javascripts/dojo/i18n.js +155 -139
- data/vendor/assets/javascripts/dojo/i18n.js.uncompressed.js +234 -198
- data/vendor/assets/javascripts/dojo/io-query.js +28 -30
- data/vendor/assets/javascripts/dojo/io-query.js.uncompressed.js +14 -15
- data/vendor/assets/javascripts/dojo/io/iframe.js +49 -207
- data/vendor/assets/javascripts/dojo/io/iframe.js.uncompressed.js +127 -313
- data/vendor/assets/javascripts/dojo/io/script.js +60 -84
- data/vendor/assets/javascripts/dojo/io/script.js.uncompressed.js +121 -128
- data/vendor/assets/javascripts/dojo/jaxer.js +2 -1
- data/vendor/assets/javascripts/dojo/jaxer.js.uncompressed.js +2 -4
- data/vendor/assets/javascripts/dojo/json.js +2 -0
- data/vendor/assets/javascripts/dojo/json.js.uncompressed.js +38 -35
- data/vendor/assets/javascripts/dojo/keys.js +2 -2
- data/vendor/assets/javascripts/dojo/keys.js.uncompressed.js +73 -76
- data/vendor/assets/javascripts/dojo/main.js +10 -10
- data/vendor/assets/javascripts/dojo/main.js.uncompressed.js +13 -11
- data/vendor/assets/javascripts/dojo/mouse.js +25 -4
- data/vendor/assets/javascripts/dojo/mouse.js.uncompressed.js +78 -34
- data/vendor/assets/javascripts/dojo/nls/az/colors.js.uncompressed.js +2 -4
- data/vendor/assets/javascripts/dojo/nls/colors.js.uncompressed.js +1 -1
- data/vendor/assets/javascripts/dojo/nls/he/colors.js.uncompressed.js +2 -5
- data/vendor/assets/javascripts/dojo/nls/hr/colors.js +1 -1
- data/vendor/assets/javascripts/dojo/nls/hr/colors.js.uncompressed.js +149 -149
- data/vendor/assets/javascripts/dojo/nls/sl/colors.js +1 -1
- data/vendor/assets/javascripts/dojo/nls/sl/colors.js.uncompressed.js +7 -7
- data/vendor/assets/javascripts/dojo/node.js +18 -0
- data/vendor/assets/javascripts/dojo/node.js.uncompressed.js +27 -0
- data/vendor/assets/javascripts/dojo/number.js +38 -37
- data/vendor/assets/javascripts/dojo/number.js.uncompressed.js +94 -122
- data/vendor/assets/javascripts/dojo/on.js +146 -116
- data/vendor/assets/javascripts/dojo/on.js.uncompressed.js +135 -92
- data/vendor/assets/javascripts/dojo/package.json +1 -1
- data/vendor/assets/javascripts/dojo/parser.js +325 -200
- data/vendor/assets/javascripts/dojo/parser.js.uncompressed.js +677 -406
- data/vendor/assets/javascripts/dojo/promise/Promise.js +37 -0
- data/vendor/assets/javascripts/dojo/promise/Promise.js.uncompressed.js +133 -0
- data/vendor/assets/javascripts/dojo/promise/all.js +60 -0
- data/vendor/assets/javascripts/dojo/promise/all.js.uncompressed.js +76 -0
- data/vendor/assets/javascripts/dojo/promise/first.js +34 -0
- data/vendor/assets/javascripts/dojo/promise/first.js.uncompressed.js +49 -0
- data/vendor/assets/javascripts/dojo/promise/instrumentation.js +86 -0
- data/vendor/assets/javascripts/dojo/promise/instrumentation.js.uncompressed.js +103 -0
- data/vendor/assets/javascripts/dojo/promise/tracer.js +37 -0
- data/vendor/assets/javascripts/dojo/promise/tracer.js.uncompressed.js +85 -0
- data/vendor/assets/javascripts/dojo/query.js +8 -8
- data/vendor/assets/javascripts/dojo/query.js.uncompressed.js +206 -214
- data/vendor/assets/javascripts/dojo/ready.js +1 -7
- data/vendor/assets/javascripts/dojo/ready.js.uncompressed.js +31 -33
- data/vendor/assets/javascripts/dojo/regexp.js +14 -13
- data/vendor/assets/javascripts/dojo/regexp.js.uncompressed.js +15 -18
- data/vendor/assets/javascripts/dojo/request.js +10 -0
- data/vendor/assets/javascripts/dojo/request.js.uncompressed.js +75 -0
- data/vendor/assets/javascripts/dojo/request/default.js +28 -0
- data/vendor/assets/javascripts/dojo/request/default.js.uncompressed.js +32 -0
- data/vendor/assets/javascripts/dojo/request/handlers.js +47 -0
- data/vendor/assets/javascripts/dojo/request/handlers.js.uncompressed.js +62 -0
- data/vendor/assets/javascripts/dojo/request/iframe.js +290 -0
- data/vendor/assets/javascripts/dojo/request/iframe.js.uncompressed.js +429 -0
- data/vendor/assets/javascripts/dojo/request/node.js +81 -0
- data/vendor/assets/javascripts/dojo/request/node.js.uncompressed.js +188 -0
- data/vendor/assets/javascripts/dojo/request/notify.js +38 -0
- data/vendor/assets/javascripts/dojo/request/notify.js.uncompressed.js +73 -0
- data/vendor/assets/javascripts/dojo/request/registry.js +68 -0
- data/vendor/assets/javascripts/dojo/request/registry.js.uncompressed.js +85 -0
- data/vendor/assets/javascripts/dojo/request/script.js +111 -0
- data/vendor/assets/javascripts/dojo/request/script.js.uncompressed.js +211 -0
- data/vendor/assets/javascripts/dojo/request/util.js +113 -0
- data/vendor/assets/javascripts/dojo/request/util.js.uncompressed.js +145 -0
- data/vendor/assets/javascripts/dojo/request/watch.js +73 -0
- data/vendor/assets/javascripts/dojo/request/watch.js.uncompressed.js +109 -0
- data/vendor/assets/javascripts/dojo/request/xhr.js +184 -0
- data/vendor/assets/javascripts/dojo/request/xhr.js.uncompressed.js +317 -0
- data/vendor/assets/javascripts/dojo/resources/dnd.css +3 -3
- data/vendor/assets/javascripts/dojo/router.js +10 -0
- data/vendor/assets/javascripts/dojo/router.js.uncompressed.js +28 -0
- data/vendor/assets/javascripts/dojo/router/RouterBase.js +160 -0
- data/vendor/assets/javascripts/dojo/router/RouterBase.js.uncompressed.js +350 -0
- data/vendor/assets/javascripts/dojo/rpc/JsonService.js +20 -21
- data/vendor/assets/javascripts/dojo/rpc/JsonService.js.uncompressed.js +29 -27
- data/vendor/assets/javascripts/dojo/rpc/JsonpService.js +14 -15
- data/vendor/assets/javascripts/dojo/rpc/JsonpService.js.uncompressed.js +28 -29
- data/vendor/assets/javascripts/dojo/rpc/RpcService.js +50 -51
- data/vendor/assets/javascripts/dojo/rpc/RpcService.js.uncompressed.js +39 -36
- data/vendor/assets/javascripts/dojo/selector/_loader.js.uncompressed.js +4 -2
- data/vendor/assets/javascripts/dojo/selector/acme.js +442 -408
- data/vendor/assets/javascripts/dojo/selector/acme.js.uncompressed.js +160 -147
- data/vendor/assets/javascripts/dojo/selector/lite.js +136 -127
- data/vendor/assets/javascripts/dojo/selector/lite.js.uncompressed.js +62 -43
- data/vendor/assets/javascripts/dojo/sniff.js +41 -0
- data/vendor/assets/javascripts/dojo/sniff.js.uncompressed.js +70 -0
- data/vendor/assets/javascripts/dojo/store/Cache.js +7 -6
- data/vendor/assets/javascripts/dojo/store/Cache.js.uncompressed.js +48 -51
- data/vendor/assets/javascripts/dojo/store/DataStore.js +88 -65
- data/vendor/assets/javascripts/dojo/store/DataStore.js.uncompressed.js +48 -16
- data/vendor/assets/javascripts/dojo/store/JsonRest.js +44 -40
- data/vendor/assets/javascripts/dojo/store/JsonRest.js.uncompressed.js +74 -40
- data/vendor/assets/javascripts/dojo/store/Memory.js +30 -29
- data/vendor/assets/javascripts/dojo/store/Memory.js.uncompressed.js +40 -37
- data/vendor/assets/javascripts/dojo/store/Observable.js +90 -79
- data/vendor/assets/javascripts/dojo/store/Observable.js.uncompressed.js +35 -23
- data/vendor/assets/javascripts/dojo/store/README +5 -9
- data/vendor/assets/javascripts/dojo/store/api/Store.js +12 -24
- data/vendor/assets/javascripts/dojo/store/api/Store.js.uncompressed.js +31 -41
- data/vendor/assets/javascripts/dojo/store/util/QueryResults.js +4 -4
- data/vendor/assets/javascripts/dojo/store/util/QueryResults.js.uncompressed.js +13 -14
- data/vendor/assets/javascripts/dojo/store/util/SimpleQueryEngine.js +11 -10
- data/vendor/assets/javascripts/dojo/store/util/SimpleQueryEngine.js.uncompressed.js +18 -16
- data/vendor/assets/javascripts/dojo/string.js +23 -22
- data/vendor/assets/javascripts/dojo/string.js.uncompressed.js +38 -38
- data/vendor/assets/javascripts/dojo/text.js +50 -50
- data/vendor/assets/javascripts/dojo/text.js.uncompressed.js +129 -127
- data/vendor/assets/javascripts/dojo/topic.js.uncompressed.js +17 -12
- data/vendor/assets/javascripts/dojo/touch.js +35 -7
- data/vendor/assets/javascripts/dojo/touch.js.uncompressed.js +146 -34
- data/vendor/assets/javascripts/dojo/uacss.js +1 -1
- data/vendor/assets/javascripts/dojo/uacss.js.uncompressed.js +19 -10
- data/vendor/assets/javascripts/dojo/when.js +31 -0
- data/vendor/assets/javascripts/dojo/when.js.uncompressed.js +55 -0
- data/vendor/assets/javascripts/dojo/window.js +26 -27
- data/vendor/assets/javascripts/dojo/window.js.uncompressed.js +160 -161
- metadata +152 -6
- data/Gemfile +0 -4
- data/LICENSE +0 -22
- data/Rakefile +0 -3
- data/vendor/assets/javascripts/dojo/resources/_modules.js +0 -36
@@ -1,27 +1,30 @@
|
|
1
|
-
define("dojo/dnd/common", ["../
|
2
|
-
|
3
|
-
|
1
|
+
define("dojo/dnd/common", ["../_base/connect", "../_base/kernel", "../_base/lang", "../dom"],
|
2
|
+
function(connect, kernel, lang, dom){
|
3
|
+
|
4
|
+
// module:
|
5
|
+
// dojo/dnd/common
|
6
|
+
|
7
|
+
var exports = {
|
4
8
|
// summary:
|
5
9
|
// TODOC
|
10
|
+
};
|
6
11
|
|
7
|
-
|
8
|
-
|
9
|
-
dojo.dnd.getCopyKeyState = dojo.isCopyKey;
|
12
|
+
exports.getCopyKeyState = connect.isCopyKey;
|
10
13
|
|
11
|
-
|
12
|
-
|
14
|
+
exports._uniqueId = 0;
|
15
|
+
exports.getUniqueId = function(){
|
13
16
|
// summary:
|
14
17
|
// returns a unique string for use with any DOM element
|
15
18
|
var id;
|
16
19
|
do{
|
17
|
-
id =
|
18
|
-
}while(
|
20
|
+
id = kernel._scopeName + "Unique" + (++exports._uniqueId);
|
21
|
+
}while(dom.byId(id));
|
19
22
|
return id;
|
20
23
|
};
|
21
24
|
|
22
|
-
|
25
|
+
exports._empty = {};
|
23
26
|
|
24
|
-
|
27
|
+
exports.isFormElement = function(/*Event*/ e){
|
25
28
|
// summary:
|
26
29
|
// returns true if user clicked on a form element
|
27
30
|
var t = e.target;
|
@@ -31,5 +34,8 @@ dojo.dnd.isFormElement = function(/*Event*/ e){
|
|
31
34
|
return " button textarea input select option ".indexOf(" " + t.tagName.toLowerCase() + " ") >= 0; // Boolean
|
32
35
|
};
|
33
36
|
|
34
|
-
|
37
|
+
// For back-compat, remove for 2.0.
|
38
|
+
lang.mixin(lang.getObject("dojo.dnd", true), exports);
|
39
|
+
|
40
|
+
return exports;
|
35
41
|
});
|
@@ -5,62 +5,59 @@
|
|
5
5
|
*/
|
6
6
|
|
7
7
|
//>>built
|
8
|
-
define("dojo/dnd/move",["../
|
9
|
-
_1
|
10
|
-
},within:false,constructor:function(
|
11
|
-
if(!
|
12
|
-
|
8
|
+
define("dojo/dnd/move",["../_base/declare","../dom-geometry","../dom-style","./common","./Mover","./Moveable"],function(_1,_2,_3,_4,_5,_6){
|
9
|
+
var _7=_1("dojo.dnd.move.constrainedMoveable",_6,{constraints:function(){
|
10
|
+
},within:false,constructor:function(_8,_9){
|
11
|
+
if(!_9){
|
12
|
+
_9={};
|
13
13
|
}
|
14
|
-
this.constraints=
|
15
|
-
this.within=
|
16
|
-
},onFirstMove:function(
|
17
|
-
var c=this.constraintBox=this.constraints.call(this,
|
14
|
+
this.constraints=_9.constraints;
|
15
|
+
this.within=_9.within;
|
16
|
+
},onFirstMove:function(_a){
|
17
|
+
var c=this.constraintBox=this.constraints.call(this,_a);
|
18
18
|
c.r=c.l+c.w;
|
19
19
|
c.b=c.t+c.h;
|
20
20
|
if(this.within){
|
21
|
-
var mb=
|
21
|
+
var mb=_2.getMarginSize(_a.node);
|
22
22
|
c.r-=mb.w;
|
23
23
|
c.b-=mb.h;
|
24
24
|
}
|
25
|
-
},onMove:function(
|
26
|
-
var c=this.constraintBox,s=
|
27
|
-
this.onMoving(
|
28
|
-
|
29
|
-
|
30
|
-
s.left=
|
31
|
-
s.top=
|
32
|
-
this.onMoved(
|
25
|
+
},onMove:function(_b,_c){
|
26
|
+
var c=this.constraintBox,s=_b.node.style;
|
27
|
+
this.onMoving(_b,_c);
|
28
|
+
_c.l=_c.l<c.l?c.l:c.r<_c.l?c.r:_c.l;
|
29
|
+
_c.t=_c.t<c.t?c.t:c.b<_c.t?c.b:_c.t;
|
30
|
+
s.left=_c.l+"px";
|
31
|
+
s.top=_c.t+"px";
|
32
|
+
this.onMoved(_b,_c);
|
33
33
|
}});
|
34
|
-
_1
|
35
|
-
var
|
34
|
+
var _d=_1("dojo.dnd.move.boxConstrainedMoveable",_7,{box:{},constructor:function(_e,_f){
|
35
|
+
var box=_f&&_f.box;
|
36
36
|
this.constraints=function(){
|
37
|
-
return
|
37
|
+
return box;
|
38
38
|
};
|
39
39
|
}});
|
40
|
-
_1
|
41
|
-
var
|
40
|
+
var _10=_1("dnd.move.parentConstrainedMoveable",_7,{area:"content",constructor:function(_11,_12){
|
41
|
+
var _13=_12&&_12.area;
|
42
42
|
this.constraints=function(){
|
43
|
-
var n=this.node.parentNode,s=
|
44
|
-
if(
|
43
|
+
var n=this.node.parentNode,s=_3.getComputedStyle(n),mb=_2.getMarginBox(n,s);
|
44
|
+
if(_13=="margin"){
|
45
45
|
return mb;
|
46
46
|
}
|
47
|
-
var t=
|
47
|
+
var t=_2.getMarginExtents(n,s);
|
48
48
|
mb.l+=t.l,mb.t+=t.t,mb.w-=t.w,mb.h-=t.h;
|
49
|
-
if(
|
49
|
+
if(_13=="border"){
|
50
50
|
return mb;
|
51
51
|
}
|
52
|
-
t=
|
52
|
+
t=_2.getBorderExtents(n,s);
|
53
53
|
mb.l+=t.l,mb.t+=t.t,mb.w-=t.w,mb.h-=t.h;
|
54
|
-
if(
|
54
|
+
if(_13=="padding"){
|
55
55
|
return mb;
|
56
56
|
}
|
57
|
-
t=
|
57
|
+
t=_2.getPadExtents(n,s);
|
58
58
|
mb.l+=t.l,mb.t+=t.t,mb.w-=t.w,mb.h-=t.h;
|
59
59
|
return mb;
|
60
60
|
};
|
61
61
|
}});
|
62
|
-
|
63
|
-
_1.dnd.boxConstrainedMover=_1.dnd.move.boxConstrainedMover;
|
64
|
-
_1.dnd.parentConstrainedMover=_1.dnd.move.parentConstrainedMover;
|
65
|
-
return _1.dnd.move;
|
62
|
+
return {constrainedMoveable:_7,boxConstrainedMoveable:_d,parentConstrainedMoveable:_10};
|
66
63
|
});
|
@@ -1,12 +1,14 @@
|
|
1
|
-
define("dojo/dnd/move", [
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
1
|
+
define("dojo/dnd/move", [
|
2
|
+
"../_base/declare",
|
3
|
+
"../dom-geometry", "../dom-style",
|
4
|
+
"./common", "./Mover", "./Moveable"
|
5
|
+
], function(declare, domGeom, domStyle, dnd, Mover, Moveable){
|
6
6
|
|
7
|
+
// module:
|
8
|
+
// dojo/dnd/move
|
7
9
|
|
8
10
|
/*=====
|
9
|
-
|
11
|
+
var __constrainedMoveableArgs = declare([Moveable.__MoveableArgs], {
|
10
12
|
// constraints: Function
|
11
13
|
// Calculates a constraint box.
|
12
14
|
// It is called in a context of the moveable object.
|
@@ -18,7 +20,7 @@ dojo.declare("dojo.dnd.move.__constrainedMoveableArgs", [dojo.dnd.__MoveableArgs
|
|
18
20
|
});
|
19
21
|
=====*/
|
20
22
|
|
21
|
-
|
23
|
+
var constrainedMoveable = declare("dojo.dnd.move.constrainedMoveable", Moveable, {
|
22
24
|
// object attributes (for markup)
|
23
25
|
constraints: function(){},
|
24
26
|
within: false,
|
@@ -28,14 +30,14 @@ dojo.declare("dojo.dnd.move.constrainedMoveable", dojo.dnd.Moveable, {
|
|
28
30
|
// an object that makes a node moveable
|
29
31
|
// node: Node
|
30
32
|
// a node (or node's id) to be moved
|
31
|
-
// params:
|
33
|
+
// params: __constrainedMoveableArgs?
|
32
34
|
// an optional object with additional parameters;
|
33
35
|
// the rest is passed to the base class
|
34
36
|
if(!params){ params = {}; }
|
35
37
|
this.constraints = params.constraints;
|
36
38
|
this.within = params.within;
|
37
39
|
},
|
38
|
-
onFirstMove: function(/*
|
40
|
+
onFirstMove: function(/*Mover*/ mover){
|
39
41
|
// summary:
|
40
42
|
// called during the very first move notification;
|
41
43
|
// can be used to initialize coordinates, can be overwritten.
|
@@ -43,12 +45,12 @@ dojo.declare("dojo.dnd.move.constrainedMoveable", dojo.dnd.Moveable, {
|
|
43
45
|
c.r = c.l + c.w;
|
44
46
|
c.b = c.t + c.h;
|
45
47
|
if(this.within){
|
46
|
-
var mb =
|
48
|
+
var mb = domGeom.getMarginSize(mover.node);
|
47
49
|
c.r -= mb.w;
|
48
50
|
c.b -= mb.h;
|
49
51
|
}
|
50
52
|
},
|
51
|
-
onMove: function(/*
|
53
|
+
onMove: function(/*Mover*/ mover, /*Object*/ leftTop){
|
52
54
|
// summary:
|
53
55
|
// called during every move notification;
|
54
56
|
// should actually move the node; can be overwritten.
|
@@ -63,14 +65,14 @@ dojo.declare("dojo.dnd.move.constrainedMoveable", dojo.dnd.Moveable, {
|
|
63
65
|
});
|
64
66
|
|
65
67
|
/*=====
|
66
|
-
|
68
|
+
var __boxConstrainedMoveableArgs = declare([__constrainedMoveableArgs], {
|
67
69
|
// box: Object
|
68
70
|
// a constraint box
|
69
71
|
box: {}
|
70
72
|
});
|
71
73
|
=====*/
|
72
74
|
|
73
|
-
|
75
|
+
var boxConstrainedMoveable = declare("dojo.dnd.move.boxConstrainedMoveable", constrainedMoveable, {
|
74
76
|
// box:
|
75
77
|
// object attributes (for markup)
|
76
78
|
box: {},
|
@@ -80,7 +82,7 @@ dojo.declare("dojo.dnd.move.boxConstrainedMoveable", dojo.dnd.move.constrainedMo
|
|
80
82
|
// an object, which makes a node moveable
|
81
83
|
// node: Node
|
82
84
|
// a node (or node's id) to be moved
|
83
|
-
// params:
|
85
|
+
// params: __boxConstrainedMoveableArgs?
|
84
86
|
// an optional object with parameters
|
85
87
|
var box = params && params.box;
|
86
88
|
this.constraints = function(){ return box; };
|
@@ -88,7 +90,7 @@ dojo.declare("dojo.dnd.move.boxConstrainedMoveable", dojo.dnd.move.constrainedMo
|
|
88
90
|
});
|
89
91
|
|
90
92
|
/*=====
|
91
|
-
|
93
|
+
var __parentConstrainedMoveableArgs = declare( [__constrainedMoveableArgs], {
|
92
94
|
// area: String
|
93
95
|
// A parent's area to restrict the move.
|
94
96
|
// Can be "margin", "border", "padding", or "content".
|
@@ -96,7 +98,7 @@ dojo.declare("dojo.dnd.move.__parentConstrainedMoveableArgs", [dojo.dnd.move.__c
|
|
96
98
|
});
|
97
99
|
=====*/
|
98
100
|
|
99
|
-
|
101
|
+
var parentConstrainedMoveable = declare("dnd.move.parentConstrainedMoveable", constrainedMoveable, {
|
100
102
|
// area:
|
101
103
|
// object attributes (for markup)
|
102
104
|
area: "content",
|
@@ -106,38 +108,40 @@ dojo.declare("dojo.dnd.move.parentConstrainedMoveable", dojo.dnd.move.constraine
|
|
106
108
|
// an object, which makes a node moveable
|
107
109
|
// node: Node
|
108
110
|
// a node (or node's id) to be moved
|
109
|
-
// params:
|
111
|
+
// params: __parentConstrainedMoveableArgs?
|
110
112
|
// an optional object with parameters
|
111
113
|
var area = params && params.area;
|
112
114
|
this.constraints = function(){
|
113
115
|
var n = this.node.parentNode,
|
114
|
-
s =
|
115
|
-
mb =
|
116
|
+
s = domStyle.getComputedStyle(n),
|
117
|
+
mb = domGeom.getMarginBox(n, s);
|
116
118
|
if(area == "margin"){
|
117
119
|
return mb; // Object
|
118
120
|
}
|
119
|
-
var t =
|
121
|
+
var t = domGeom.getMarginExtents(n, s);
|
120
122
|
mb.l += t.l, mb.t += t.t, mb.w -= t.w, mb.h -= t.h;
|
121
123
|
if(area == "border"){
|
122
124
|
return mb; // Object
|
123
125
|
}
|
124
|
-
t =
|
126
|
+
t = domGeom.getBorderExtents(n, s);
|
125
127
|
mb.l += t.l, mb.t += t.t, mb.w -= t.w, mb.h -= t.h;
|
126
128
|
if(area == "padding"){
|
127
129
|
return mb; // Object
|
128
130
|
}
|
129
|
-
t =
|
131
|
+
t = domGeom.getPadExtents(n, s);
|
130
132
|
mb.l += t.l, mb.t += t.t, mb.w -= t.w, mb.h -= t.h;
|
131
133
|
return mb; // Object
|
132
134
|
};
|
133
135
|
}
|
134
136
|
});
|
135
137
|
|
136
|
-
// patching functions one level up for compatibility
|
137
138
|
|
138
|
-
|
139
|
-
|
140
|
-
|
139
|
+
return {
|
140
|
+
// summary:
|
141
|
+
// TODOC
|
142
|
+
constrainedMoveable: constrainedMoveable,
|
143
|
+
boxConstrainedMoveable: boxConstrainedMoveable,
|
144
|
+
parentConstrainedMoveable: parentConstrainedMoveable
|
145
|
+
};
|
141
146
|
|
142
|
-
return dojo.dnd.move;
|
143
147
|
});
|
@@ -1,1872 +1,15 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
// This is the "source loader" and is the entry point for Dojo during development. You may also load Dojo with
|
7
|
-
// any AMD-compliant loader via the package main module dojo/main.
|
8
|
-
// description:
|
9
|
-
// This is the "source loader" for Dojo. It provides an AMD-compliant loader that can be configured
|
10
|
-
// to operate in either synchronous or asynchronous modes. After the loader is defined, dojo is loaded
|
11
|
-
// IAW the package main module dojo/main. In the event you wish to use a foreign loader, you may load dojo as a package
|
12
|
-
// via the package main module dojo/main and this loader is not required; see dojo/package.json for details.
|
13
|
-
//
|
14
|
-
// In order to keep compatibility with the v1.x line, this loader includes additional machinery that enables
|
15
|
-
// the dojo.provide, dojo.require et al API. This machinery is loaded by default, but may be dynamically removed
|
16
|
-
// via the has.js API and statically removed via the build system.
|
17
|
-
//
|
18
|
-
// This loader includes sniffing machinery to determine the environment; the following environments are supported:
|
19
|
-
//
|
20
|
-
// * browser
|
21
|
-
// * node.js
|
22
|
-
// * rhino
|
23
|
-
//
|
24
|
-
// This is the so-called "source loader". As such, it includes many optional features that may be discadred by
|
25
|
-
// building a customized verion with the build system.
|
1
|
+
/*
|
2
|
+
Copyright (c) 2004-2011, The Dojo Foundation All Rights Reserved.
|
3
|
+
Available via Academic Free License >= 2.1 OR the modified BSD license.
|
4
|
+
see: http://dojotoolkit.org/license for details
|
5
|
+
*/
|
26
6
|
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
//
|
31
|
-
// This function defines an AMD-compliant (http://wiki.commonjs.org/wiki/Modules/AsynchronousDefinition)
|
32
|
-
// loader that can be configured to operate in either synchronous or asynchronous modes.
|
33
|
-
//
|
34
|
-
// Since this machinery implements a loader, it does not have the luxury of using a load system and/or
|
35
|
-
// leveraging a utility library. This results in an unpleasantly long file; here is a road map of the contents:
|
36
|
-
//
|
37
|
-
// 1. Small library for use implementing the loader.
|
38
|
-
// 2. Define the has.js API; this is used throughout the loader to bracket features.
|
39
|
-
// 3. Define the node.js and rhino sniffs and sniff.
|
40
|
-
// 4. Define the loader's data.
|
41
|
-
// 5. Define the configuration machinery.
|
42
|
-
// 6. Define the script element sniffing machinery and sniff for configuration data.
|
43
|
-
// 7. Configure the loader IAW the provided user, default, and sniffing data.
|
44
|
-
// 8. Define the global require function.
|
45
|
-
// 9. Define the module resolution machinery.
|
46
|
-
// 10. Define the module and plugin module definition machinery
|
47
|
-
// 11. Define the script injection machinery.
|
48
|
-
// 12. Define the window load detection.
|
49
|
-
// 13. Define the logging API.
|
50
|
-
// 14. Define the tracing API.
|
51
|
-
// 16. Define the AMD define function.
|
52
|
-
// 17. Define the dojo v1.x provide/require machinery--so called "legacy" modes.
|
53
|
-
// 18. Publish global variables.
|
54
|
-
//
|
55
|
-
// Language and Acronyms and Idioms
|
56
|
-
//
|
57
|
-
// moduleId: a CJS module identifier, (used for public APIs)
|
58
|
-
// mid: moduleId (used internally)
|
59
|
-
// packageId: a package identifier (used for public APIs)
|
60
|
-
// pid: packageId (used internally); the implied system or default package has pid===""
|
61
|
-
// pack: package is used internally to reference a package object (since javascript has reserved words including "package")
|
62
|
-
// prid: plugin resource identifier
|
63
|
-
// The integer constant 1 is used in place of true and 0 in place of false.
|
7
|
+
/*
|
8
|
+
This is an optimized version of Dojo, built for deployment and not for
|
9
|
+
development. To get sources and documentation, please visit:
|
64
10
|
|
65
|
-
|
66
|
-
|
67
|
-
},
|
11
|
+
http://dojotoolkit.org
|
12
|
+
*/
|
68
13
|
|
69
|
-
|
70
|
-
for(var p in it){
|
71
|
-
return 0;
|
72
|
-
}
|
73
|
-
return 1;
|
74
|
-
},
|
75
|
-
|
76
|
-
toString = {}.toString,
|
77
|
-
|
78
|
-
isFunction = function(it){
|
79
|
-
return toString.call(it) == "[object Function]";
|
80
|
-
},
|
81
|
-
|
82
|
-
isString = function(it){
|
83
|
-
return toString.call(it) == "[object String]";
|
84
|
-
},
|
85
|
-
|
86
|
-
isArray = function(it){
|
87
|
-
return toString.call(it) == "[object Array]";
|
88
|
-
},
|
89
|
-
|
90
|
-
forEach = function(vector, callback){
|
91
|
-
if(vector){
|
92
|
-
for(var i = 0; i < vector.length;){
|
93
|
-
callback(vector[i++]);
|
94
|
-
}
|
95
|
-
}
|
96
|
-
},
|
97
|
-
|
98
|
-
mix = function(dest, src){
|
99
|
-
for(var p in src){
|
100
|
-
dest[p] = src[p];
|
101
|
-
}
|
102
|
-
return dest;
|
103
|
-
},
|
104
|
-
|
105
|
-
makeError = function(error, info){
|
106
|
-
return mix(new Error(error), {src:"dojoLoader", info:info});
|
107
|
-
},
|
108
|
-
|
109
|
-
uidSeed = 1,
|
110
|
-
|
111
|
-
uid = function(){
|
112
|
-
// Returns a unique indentifier (within the lifetime of the document) of the form /_d+/.
|
113
|
-
return "_" + uidSeed++;
|
114
|
-
},
|
115
|
-
|
116
|
-
// FIXME: how to doc window.require() api
|
117
|
-
|
118
|
-
// this will be the global require function; define it immediately so we can start hanging things off of it
|
119
|
-
req = function(
|
120
|
-
config, //(object, optional) hash of configuration properties
|
121
|
-
dependencies, //(array of commonjs.moduleId, optional) list of modules to be loaded before applying callback
|
122
|
-
callback //(function, optional) lamda expression to apply to module values implied by dependencies
|
123
|
-
){
|
124
|
-
return contextRequire(config, dependencies, callback, 0, req);
|
125
|
-
},
|
126
|
-
|
127
|
-
// the loader uses the has.js API to control feature inclusion/exclusion; define then use throughout
|
128
|
-
global = this,
|
129
|
-
|
130
|
-
doc = global.document,
|
131
|
-
|
132
|
-
element = doc && doc.createElement("DiV"),
|
133
|
-
|
134
|
-
has = req.has = function(name){
|
135
|
-
return isFunction(hasCache[name]) ? (hasCache[name] = hasCache[name](global, doc, element)) : hasCache[name];
|
136
|
-
},
|
137
|
-
|
138
|
-
hasCache = has.cache = defaultConfig.hasCache;
|
139
|
-
|
140
|
-
has.add = function(name, test, now, force){
|
141
|
-
(hasCache[name]===undefined || force) && (hasCache[name] = test);
|
142
|
-
return now && has(name);
|
143
|
-
};
|
144
|
-
|
145
|
-
has.add("host-node", userConfig.has && "host-node" in userConfig.has ?
|
146
|
-
userConfig.has["host-node"] :
|
147
|
-
(typeof process == "object" && process.versions && process.versions.node && process.versions.v8));
|
148
|
-
if(has("host-node")){
|
149
|
-
// fixup the default config for node.js environment
|
150
|
-
require("./_base/configNode.js").config(defaultConfig);
|
151
|
-
// remember node's require (with respect to baseUrl==dojo's root)
|
152
|
-
defaultConfig.loaderPatch.nodeRequire = require;
|
153
|
-
}
|
154
|
-
|
155
|
-
has.add("host-rhino", userConfig.has && "host-rhino" in userConfig.has ?
|
156
|
-
userConfig.has["host-rhino"] :
|
157
|
-
(typeof load == "function" && (typeof Packages == "function" || typeof Packages == "object")));
|
158
|
-
if(has("host-rhino")){
|
159
|
-
// owing to rhino's lame feature that hides the source of the script, give the user a way to specify the baseUrl...
|
160
|
-
for(var baseUrl = userConfig.baseUrl || ".", arg, rhinoArgs = this.arguments, i = 0; i < rhinoArgs.length;){
|
161
|
-
arg = (rhinoArgs[i++] + "").split("=");
|
162
|
-
if(arg[0] == "baseUrl"){
|
163
|
-
baseUrl = arg[1];
|
164
|
-
break;
|
165
|
-
}
|
166
|
-
}
|
167
|
-
load(baseUrl + "/_base/configRhino.js");
|
168
|
-
rhinoDojoConfig(defaultConfig, baseUrl, rhinoArgs);
|
169
|
-
}
|
170
|
-
|
171
|
-
// userConfig has tests override defaultConfig has tests; do this after the environment detection because
|
172
|
-
// the environment detection usually sets some has feature values in the hasCache.
|
173
|
-
for(var p in userConfig.has){
|
174
|
-
has.add(p, userConfig.has[p], 0, 1);
|
175
|
-
}
|
176
|
-
|
177
|
-
//
|
178
|
-
// define the loader data
|
179
|
-
//
|
180
|
-
|
181
|
-
// the loader will use these like symbols if the loader has the traceApi; otherwise
|
182
|
-
// define magic numbers so that modules can be provided as part of defaultConfig
|
183
|
-
var requested = 1,
|
184
|
-
arrived = 2,
|
185
|
-
nonmodule = 3,
|
186
|
-
executing = 4,
|
187
|
-
executed = 5;
|
188
|
-
|
189
|
-
if(has("dojo-trace-api")){
|
190
|
-
// these make debugging nice; but using strings for symbols is a gross rookie error; don't do it for production code
|
191
|
-
requested = "requested";
|
192
|
-
arrived = "arrived";
|
193
|
-
nonmodule = "not-a-module";
|
194
|
-
executing = "executing";
|
195
|
-
executed = "executed";
|
196
|
-
}
|
197
|
-
|
198
|
-
var legacyMode = 0,
|
199
|
-
sync = "sync",
|
200
|
-
xd = "xd",
|
201
|
-
syncExecStack = [],
|
202
|
-
dojoRequirePlugin = 0,
|
203
|
-
checkDojoRequirePlugin = noop,
|
204
|
-
transformToAmd = noop,
|
205
|
-
getXhr;
|
206
|
-
if(has("dojo-sync-loader")){
|
207
|
-
req.isXdUrl = noop;
|
208
|
-
|
209
|
-
req.initSyncLoader = function(dojoRequirePlugin_, checkDojoRequirePlugin_, transformToAmd_){
|
210
|
-
if(!dojoRequirePlugin){
|
211
|
-
dojoRequirePlugin = dojoRequirePlugin_;
|
212
|
-
checkDojoRequirePlugin = checkDojoRequirePlugin_;
|
213
|
-
transformToAmd = transformToAmd_;
|
214
|
-
}
|
215
|
-
return {
|
216
|
-
sync:sync,
|
217
|
-
xd:xd,
|
218
|
-
arrived:arrived,
|
219
|
-
nonmodule:nonmodule,
|
220
|
-
executing:executing,
|
221
|
-
executed:executed,
|
222
|
-
syncExecStack:syncExecStack,
|
223
|
-
modules:modules,
|
224
|
-
execQ:execQ,
|
225
|
-
getModule:getModule,
|
226
|
-
injectModule:injectModule,
|
227
|
-
setArrived:setArrived,
|
228
|
-
signal:signal,
|
229
|
-
finishExec:finishExec,
|
230
|
-
execModule:execModule,
|
231
|
-
dojoRequirePlugin:dojoRequirePlugin,
|
232
|
-
getLegacyMode:function(){return legacyMode;},
|
233
|
-
holdIdle:function(){checkCompleteGuard++;},
|
234
|
-
releaseIdle:function(){checkIdle();}
|
235
|
-
};
|
236
|
-
};
|
237
|
-
|
238
|
-
if(has("dom")){
|
239
|
-
// in legacy sync mode, the loader needs a minimal XHR library to load dojo/_base/loader and dojo/_base/xhr
|
240
|
-
|
241
|
-
var locationProtocol = location.protocol,
|
242
|
-
locationHost = location.host,
|
243
|
-
fileProtocol = !locationHost;
|
244
|
-
req.isXdUrl = function(url){
|
245
|
-
if(fileProtocol || /^\./.test(url)){
|
246
|
-
// begins with a dot is always relative to page URL; therefore not xdomain
|
247
|
-
return false;
|
248
|
-
}
|
249
|
-
if(/^\/\//.test(url)){
|
250
|
-
// for v1.6- backcompat, url starting with // indicates xdomain
|
251
|
-
return true;
|
252
|
-
}
|
253
|
-
// get protocol and host
|
254
|
-
var match = url.match(/^([^\/\:]+\:)\/\/([^\/]+)/);
|
255
|
-
return match && (match[1] != locationProtocol || match[2] != locationHost);
|
256
|
-
};
|
257
|
-
|
258
|
-
// note: to get the file:// protocol to work in FF, you must set security.fileuri.strict_origin_policy to false in about:config
|
259
|
-
has.add("dojo-xhr-factory", 1);
|
260
|
-
has.add("dojo-force-activex-xhr", has("host-browser") && !doc.addEventListener && window.location.protocol == "file:");
|
261
|
-
has.add("native-xhr", typeof XMLHttpRequest != "undefined");
|
262
|
-
if(has("native-xhr") && !has("dojo-force-activex-xhr")){
|
263
|
-
getXhr = function(){
|
264
|
-
return new XMLHttpRequest();
|
265
|
-
};
|
266
|
-
}else{
|
267
|
-
// if in the browser an old IE; find an xhr
|
268
|
-
for(var XMLHTTP_PROGIDS = ['Msxml2.XMLHTTP', 'Microsoft.XMLHTTP', 'Msxml2.XMLHTTP.4.0'], progid, i = 0; i < 3;){
|
269
|
-
try{
|
270
|
-
progid = XMLHTTP_PROGIDS[i++];
|
271
|
-
if(new ActiveXObject(progid)){
|
272
|
-
// this progid works; therefore, use it from now on
|
273
|
-
break;
|
274
|
-
}
|
275
|
-
}catch(e){
|
276
|
-
// squelch; we're just trying to find a good ActiveX progid
|
277
|
-
// if they all fail, then progid ends up as the last attempt and that will signal the error
|
278
|
-
// the first time the client actually tries to exec an xhr
|
279
|
-
}
|
280
|
-
}
|
281
|
-
getXhr = function(){
|
282
|
-
return new ActiveXObject(progid);
|
283
|
-
};
|
284
|
-
}
|
285
|
-
req.getXhr = getXhr;
|
286
|
-
|
287
|
-
has.add("dojo-gettext-api", 1);
|
288
|
-
req.getText = function(url, async, onLoad){
|
289
|
-
var xhr = getXhr();
|
290
|
-
xhr.open('GET', fixupUrl(url), false);
|
291
|
-
xhr.send(null);
|
292
|
-
if(xhr.status == 200 || (!location.host && !xhr.status)){
|
293
|
-
if(onLoad){
|
294
|
-
onLoad(xhr.responseText, async);
|
295
|
-
}
|
296
|
-
}else{
|
297
|
-
throw makeError("xhrFailed", xhr.status);
|
298
|
-
}
|
299
|
-
return xhr.responseText;
|
300
|
-
};
|
301
|
-
}
|
302
|
-
}else{
|
303
|
-
req.async = 1;
|
304
|
-
}
|
305
|
-
|
306
|
-
//
|
307
|
-
// loader eval
|
308
|
-
//
|
309
|
-
var eval_ =
|
310
|
-
// use the function constructor so our eval is scoped close to (but not in) in the global space with minimal pollution
|
311
|
-
new Function('return eval(arguments[0]);');
|
312
|
-
|
313
|
-
req.eval =
|
314
|
-
function(text, hint){
|
315
|
-
return eval_(text + "\r\n////@ sourceURL=" + hint);
|
316
|
-
};
|
317
|
-
|
318
|
-
//
|
319
|
-
// loader micro events API
|
320
|
-
//
|
321
|
-
var listenerQueues = {},
|
322
|
-
error = "error",
|
323
|
-
signal = req.signal = function(type, args){
|
324
|
-
var queue = listenerQueues[type];
|
325
|
-
// notice we run a copy of the queue; this allows listeners to add/remove
|
326
|
-
// other listeners without affecting this particular signal
|
327
|
-
forEach(queue && queue.slice(0), function(listener){
|
328
|
-
listener.apply(null, isArray(args) ? args : [args]);
|
329
|
-
});
|
330
|
-
},
|
331
|
-
on = req.on = function(type, listener){
|
332
|
-
// notice a queue is not created until a client actually connects
|
333
|
-
var queue = listenerQueues[type] || (listenerQueues[type] = []);
|
334
|
-
queue.push(listener);
|
335
|
-
return {
|
336
|
-
remove:function(){
|
337
|
-
for(var i = 0; i<queue.length; i++){
|
338
|
-
if(queue[i]===listener){
|
339
|
-
queue.splice(i, 1);
|
340
|
-
return;
|
341
|
-
}
|
342
|
-
}
|
343
|
-
}
|
344
|
-
};
|
345
|
-
};
|
346
|
-
|
347
|
-
// configuration machinery; with an optimized/built defaultConfig, all configuration machinery can be discarded
|
348
|
-
// lexical variables hold key loader data structures to help with minification; these may be completely,
|
349
|
-
// one-time initialized by defaultConfig for optimized/built versions
|
350
|
-
var
|
351
|
-
aliases
|
352
|
-
// a vector of pairs of [regexs or string, replacement] => (alias, actual)
|
353
|
-
= [],
|
354
|
-
|
355
|
-
paths
|
356
|
-
// CommonJS paths
|
357
|
-
= {},
|
358
|
-
|
359
|
-
pathsMapProg
|
360
|
-
// list of (from-path, to-path, regex, length) derived from paths;
|
361
|
-
// a "program" to apply paths; see computeMapProg
|
362
|
-
= [],
|
363
|
-
|
364
|
-
packs
|
365
|
-
// a map from packageId to package configuration object; see fixupPackageInfo
|
366
|
-
= {},
|
367
|
-
|
368
|
-
packageMap
|
369
|
-
// map from package name to local-installed package name
|
370
|
-
= {},
|
371
|
-
|
372
|
-
packageMapProg
|
373
|
-
// list of (from-package, to-package, regex, length) derived from packageMap;
|
374
|
-
// a "program" to apply paths; see computeMapProg
|
375
|
-
= [],
|
376
|
-
|
377
|
-
modules
|
378
|
-
// A hash:(mid) --> (module-object) the module namespace
|
379
|
-
//
|
380
|
-
// pid: the package identifier to which the module belongs (e.g., "dojo"); "" indicates the system or default package
|
381
|
-
// mid: the fully-resolved (i.e., mappings have been applied) module identifier without the package identifier (e.g., "dojo/io/script")
|
382
|
-
// url: the URL from which the module was retrieved
|
383
|
-
// pack: the package object of the package to which the module belongs
|
384
|
-
// executed: 0 => not executed; executing => in the process of tranversing deps and running factory; executed => factory has been executed
|
385
|
-
// deps: the dependency vector for this module (vector of modules objects)
|
386
|
-
// def: the factory for this module
|
387
|
-
// result: the result of the running the factory for this module
|
388
|
-
// injected: (requested | arrived | nonmodule) the status of the module; nonmodule means the resource did not call define
|
389
|
-
// load: plugin load function; applicable only for plugins
|
390
|
-
//
|
391
|
-
// Modules go through several phases in creation:
|
392
|
-
//
|
393
|
-
// 1. Requested: some other module's definition or a require application contained the requested module in
|
394
|
-
// its dependency vector or executing code explicitly demands a module via req.require.
|
395
|
-
//
|
396
|
-
// 2. Injected: a script element has been appended to the insert-point element demanding the resource implied by the URL
|
397
|
-
//
|
398
|
-
// 3. Loaded: the resource injected in [2] has been evalated.
|
399
|
-
//
|
400
|
-
// 4. Defined: the resource contained a define statement that advised the loader about the module. Notice that some
|
401
|
-
// resources may just contain a bundle of code and never formally define a module via define
|
402
|
-
//
|
403
|
-
// 5. Evaluated: the module was defined via define and the loader has evaluated the factory and computed a result.
|
404
|
-
= {},
|
405
|
-
|
406
|
-
cacheBust
|
407
|
-
// query string to append to module URLs to bust browser cache
|
408
|
-
= "",
|
409
|
-
|
410
|
-
cache
|
411
|
-
// hash:(mid)-->(function)
|
412
|
-
//
|
413
|
-
// Gives the contents of a cached resource; function should cause the same actions as if the given mid was downloaded
|
414
|
-
// and evaluated by the host environment
|
415
|
-
= {},
|
416
|
-
|
417
|
-
pendingCacheInsert
|
418
|
-
// hash:(mid)-->(function)
|
419
|
-
//
|
420
|
-
// Gives a set of cache modules pending entry into cache. When cached modules are published to the loader, they are
|
421
|
-
// entered into pendingCacheInsert; modules are then pressed into cache upon (1) AMD define or (2) upon receiving another
|
422
|
-
// independent set of cached modules. (1) is the usual case, and this case allows normalizing mids given in the pending
|
423
|
-
// cache for the local configuration, possibly relocating modules.
|
424
|
-
= {},
|
425
|
-
|
426
|
-
dojoSniffConfig
|
427
|
-
// map of configuration variables
|
428
|
-
// give the data-dojo-config as sniffed from the document (if any)
|
429
|
-
= {};
|
430
|
-
|
431
|
-
if(has("dojo-config-api")){
|
432
|
-
var consumePendingCacheInsert = function(referenceModule){
|
433
|
-
var p, item, match, now;
|
434
|
-
for(p in pendingCacheInsert){
|
435
|
-
item = pendingCacheInsert[p];
|
436
|
-
match = p.match(/^url\:(.+)/);
|
437
|
-
if(match){
|
438
|
-
cache[toUrl(match[1], referenceModule)] = item;
|
439
|
-
}else if(p=="*now"){
|
440
|
-
now = item;
|
441
|
-
}else if(p!="*noref"){
|
442
|
-
cache[getModuleInfo(p, referenceModule).mid] = item;
|
443
|
-
}
|
444
|
-
}
|
445
|
-
if(now){
|
446
|
-
now(createRequire(referenceModule));
|
447
|
-
}
|
448
|
-
pendingCacheInsert = {};
|
449
|
-
},
|
450
|
-
|
451
|
-
computeMapProg = function(map, dest, packName){
|
452
|
-
// This routine takes a map target-prefix(string)-->replacement(string) into a vector
|
453
|
-
// of quads (target-prefix, replacement, regex-for-target-prefix, length-of-target-prefix)
|
454
|
-
//
|
455
|
-
// The loader contains processes that map one string prefix to another. These
|
456
|
-
// are encountered when applying the requirejs paths configuration and when mapping
|
457
|
-
// package names. We can make the mapping and any replacement easier and faster by
|
458
|
-
// replacing the map with a vector of quads and then using this structure in the simple machine runMapProg.
|
459
|
-
dest.splice(0, dest.length);
|
460
|
-
var p, i, item, reverseName = 0;
|
461
|
-
for(p in map){
|
462
|
-
dest.push([p, map[p]]);
|
463
|
-
if(map[p]==packName){
|
464
|
-
reverseName = p;
|
465
|
-
}
|
466
|
-
}
|
467
|
-
dest.sort(function(lhs, rhs){
|
468
|
-
return rhs[0].length - lhs[0].length;
|
469
|
-
});
|
470
|
-
for(i = 0; i < dest.length;){
|
471
|
-
item = dest[i++];
|
472
|
-
item[2] = new RegExp("^" + item[0].replace(/([\.$?*|{}\(\)\[\]\\\/\+^])/g, function(c){ return "\\" + c; }) + "(\/|$)");
|
473
|
-
item[3] = item[0].length + 1;
|
474
|
-
}
|
475
|
-
return reverseName;
|
476
|
-
},
|
477
|
-
|
478
|
-
fixupPackageInfo = function(packageInfo, baseUrl){
|
479
|
-
// calculate the precise (name, baseUrl, main, mappings) for a package
|
480
|
-
var name = packageInfo.name;
|
481
|
-
if(!name){
|
482
|
-
// packageInfo must be a string that gives the name
|
483
|
-
name = packageInfo;
|
484
|
-
packageInfo = {name:name};
|
485
|
-
}
|
486
|
-
packageInfo = mix({main:"main", mapProg:[]}, packageInfo);
|
487
|
-
packageInfo.location = (baseUrl || "") + (packageInfo.location ? packageInfo.location : name);
|
488
|
-
packageInfo.reverseName = computeMapProg(packageInfo.packageMap, packageInfo.mapProg, name);
|
489
|
-
|
490
|
-
if(!packageInfo.main.indexOf("./")){
|
491
|
-
packageInfo.main = packageInfo.main.substring(2);
|
492
|
-
}
|
493
|
-
|
494
|
-
// allow paths to be specified in the package info
|
495
|
-
// TODO: this is not supported; remove
|
496
|
-
mix(paths, packageInfo.paths);
|
497
|
-
|
498
|
-
// now that we've got a fully-resolved package object, push it into the configuration
|
499
|
-
packs[name] = packageInfo;
|
500
|
-
packageMap[name] = name;
|
501
|
-
},
|
502
|
-
|
503
|
-
config = function(config, booting){
|
504
|
-
for(var p in config){
|
505
|
-
if(p=="waitSeconds"){
|
506
|
-
req.waitms = (config[p] || 0) * 1000;
|
507
|
-
}
|
508
|
-
if(p=="cacheBust"){
|
509
|
-
cacheBust = config[p] ? (isString(config[p]) ? config[p] : (new Date()).getTime() + "") : "";
|
510
|
-
}
|
511
|
-
if(p=="baseUrl" || p=="combo"){
|
512
|
-
req[p] = config[p];
|
513
|
-
}
|
514
|
-
if(has("dojo-sync-loader") && p=="async"){
|
515
|
-
// falsy or "sync" => legacy sync loader
|
516
|
-
// "xd" => sync but loading xdomain tree and therefore loading asynchronously (not configurable, set automatically by the loader)
|
517
|
-
// "legacyAsync" => permanently in "xd" by choice
|
518
|
-
// "debugAtAllCosts" => trying to load everything via script injection (not implemented)
|
519
|
-
// otherwise, must be truthy => AMD
|
520
|
-
// legacyMode: sync | legacyAsync | xd | false
|
521
|
-
var mode = config[p];
|
522
|
-
req.legacyMode = legacyMode = (isString(mode) && /sync|legacyAsync/.test(mode) ? mode : (!mode ? "sync" : false));
|
523
|
-
req.async = !legacyMode;
|
524
|
-
}
|
525
|
-
if(config[p]!==hasCache){
|
526
|
-
// accumulate raw config info for client apps which can use this to pass their own config
|
527
|
-
req.rawConfig[p] = config[p];
|
528
|
-
p!="has" && has.add("config-"+p, config[p], 0, booting);
|
529
|
-
}
|
530
|
-
}
|
531
|
-
|
532
|
-
// make sure baseUrl exists
|
533
|
-
if(!req.baseUrl){
|
534
|
-
req.baseUrl = "./";
|
535
|
-
}
|
536
|
-
// make sure baseUrl ends with a slash
|
537
|
-
if(!/\/$/.test(req.baseUrl)){
|
538
|
-
req.baseUrl += "/";
|
539
|
-
}
|
540
|
-
|
541
|
-
// now do the special work for has, packages, packagePaths, paths, aliases, and cache
|
542
|
-
|
543
|
-
for(p in config.has){
|
544
|
-
has.add(p, config.has[p], 0, booting);
|
545
|
-
}
|
546
|
-
|
547
|
-
// for each package found in any packages config item, augment the packs map owned by the loader
|
548
|
-
forEach(config.packages, fixupPackageInfo);
|
549
|
-
|
550
|
-
// for each packagePath found in any packagePaths config item, augment the packs map owned by the loader
|
551
|
-
for(baseUrl in config.packagePaths){
|
552
|
-
forEach(config.packagePaths[baseUrl], function(packageInfo){
|
553
|
-
fixupPackageInfo(packageInfo, baseUrl + "/");
|
554
|
-
});
|
555
|
-
}
|
556
|
-
|
557
|
-
// push in any paths and recompute the internal pathmap
|
558
|
-
// warning: this cann't be done until the package config is processed since packages may include path info
|
559
|
-
computeMapProg(mix(paths, config.paths), pathsMapProg);
|
560
|
-
|
561
|
-
// aliases
|
562
|
-
forEach(config.aliases, function(pair){
|
563
|
-
if(isString(pair[0])){
|
564
|
-
pair[0] = new RegExp("^" + pair[0].replace(/([\.$?*|{}\(\)\[\]\\\/\+^])/g, function(c){return "\\" + c;}) + "$");
|
565
|
-
}
|
566
|
-
aliases.push(pair);
|
567
|
-
});
|
568
|
-
|
569
|
-
// mix any packageMap config item and recompute the internal packageMapProg
|
570
|
-
computeMapProg(mix(packageMap, config.packageMap), packageMapProg);
|
571
|
-
|
572
|
-
// push in any new cache values
|
573
|
-
if(config.cache){
|
574
|
-
consumePendingCacheInsert();
|
575
|
-
pendingCacheInsert = config.cache;
|
576
|
-
if(config.cache["*noref"]){
|
577
|
-
consumePendingCacheInsert();
|
578
|
-
}
|
579
|
-
}
|
580
|
-
|
581
|
-
signal("config", [config, req.rawConfig]);
|
582
|
-
};
|
583
|
-
|
584
|
-
//
|
585
|
-
// execute the various sniffs
|
586
|
-
//
|
587
|
-
|
588
|
-
if(has("dojo-cdn") || has("dojo-sniff")){
|
589
|
-
for(var dojoDir, src, match, scripts = doc.getElementsByTagName("script"), i = 0; i < scripts.length && !match; i++){
|
590
|
-
if((src = scripts[i].getAttribute("src")) && (match = src.match(/(.*)\/?dojo\.js(\W|$)/i))){
|
591
|
-
// if baseUrl wasn't explicitly set, set it here to the dojo directory; this is the 1.6- behavior
|
592
|
-
userConfig.baseUrl = dojoDir = userConfig.baseUrl || defaultConfig.baseUrl || match[1];
|
593
|
-
|
594
|
-
// see if there's a dojo configuration stuffed into the node
|
595
|
-
src = (scripts[i].getAttribute("data-dojo-config") || scripts[i].getAttribute("djConfig"));
|
596
|
-
if(src){
|
597
|
-
dojoSniffConfig = req.eval("({ " + src + " })", "data-dojo-config");
|
598
|
-
}
|
599
|
-
if(has("dojo-requirejs-api")){
|
600
|
-
var dataMain = scripts[i].getAttribute("data-main");
|
601
|
-
if(dataMain){
|
602
|
-
dojoSniffConfig.deps = dojoSniffConfig.deps || [dataMain];
|
603
|
-
}
|
604
|
-
}
|
605
|
-
}
|
606
|
-
}
|
607
|
-
}
|
608
|
-
|
609
|
-
if(has("dojo-test-sniff")){
|
610
|
-
// pass down doh.testConfig from parent as if it were a data-dojo-config
|
611
|
-
try{
|
612
|
-
if(window.parent != window && window.parent.require){
|
613
|
-
var doh = window.parent.require("doh");
|
614
|
-
doh && mix(dojoSniffConfig, doh.testConfig);
|
615
|
-
}
|
616
|
-
}catch(e){}
|
617
|
-
}
|
618
|
-
|
619
|
-
// configure the loader; let the user override defaults
|
620
|
-
req.rawConfig = {};
|
621
|
-
config(defaultConfig, 1);
|
622
|
-
config(userConfig, 1);
|
623
|
-
config(dojoSniffConfig, 1);
|
624
|
-
|
625
|
-
if(has("dojo-cdn")){
|
626
|
-
packs.dojo.location = dojoDir;
|
627
|
-
packs.dijit.location = dojoDir + "../dijit/";
|
628
|
-
packs.dojox.location = dojoDir + "../dojox/";
|
629
|
-
}
|
630
|
-
|
631
|
-
}else{
|
632
|
-
// no config API, assume defaultConfig has everything the loader needs...for the entire lifetime of the application
|
633
|
-
paths = defaultConfig.paths;
|
634
|
-
pathsMapProg = defaultConfig.pathsMapProg;
|
635
|
-
packs = defaultConfig.packs;
|
636
|
-
aliases = defaultConfig.aliases;
|
637
|
-
packageMap = defaultConfig.packageMap;
|
638
|
-
packageMapProg = defaultConfig.packageMapProg;
|
639
|
-
modules = defaultConfig.modules;
|
640
|
-
cache = defaultConfig.cache;
|
641
|
-
cacheBust = defaultConfig.cacheBust;
|
642
|
-
|
643
|
-
// remember the default config for other processes (e.g., dojo/config)
|
644
|
-
req.rawConfig = defaultConfig;
|
645
|
-
}
|
646
|
-
|
647
|
-
|
648
|
-
if(has("dojo-combo-api")){
|
649
|
-
req.combo = req.combo || {add:noop};
|
650
|
-
var comboPending = 0,
|
651
|
-
combosPending = [],
|
652
|
-
comboPendingTimer = null;
|
653
|
-
}
|
654
|
-
|
655
|
-
|
656
|
-
// build the loader machinery iaw configuration, including has feature tests
|
657
|
-
var injectDependencies = function(module){
|
658
|
-
// checkComplete!=0 holds the idle signal; we're not idle if we're injecting dependencies
|
659
|
-
checkCompleteGuard++;
|
660
|
-
forEach(module.deps, injectModule);
|
661
|
-
if(has("dojo-combo-api") && comboPending && !comboPendingTimer){
|
662
|
-
comboPendingTimer = setTimeout(function() {
|
663
|
-
comboPending = 0;
|
664
|
-
comboPendingTimer = null;
|
665
|
-
req.combo.done(function(mids, url) {
|
666
|
-
var onLoadCallback= function(){
|
667
|
-
// defQ is a vector of module definitions 1-to-1, onto mids
|
668
|
-
runDefQ(0, mids);
|
669
|
-
checkComplete();
|
670
|
-
};
|
671
|
-
combosPending.push(mids);
|
672
|
-
injectingModule = mids;
|
673
|
-
req.injectUrl(url, onLoadCallback, mids);
|
674
|
-
injectingModule = 0;
|
675
|
-
}, req);
|
676
|
-
}, 0);
|
677
|
-
}
|
678
|
-
checkIdle();
|
679
|
-
},
|
680
|
-
|
681
|
-
contextRequire = function(a1, a2, a3, referenceModule, contextRequire){
|
682
|
-
var module, syntheticMid;
|
683
|
-
if(isString(a1)){
|
684
|
-
// signature is (moduleId)
|
685
|
-
module = getModule(a1, referenceModule, true);
|
686
|
-
if(module && module.executed){
|
687
|
-
return module.result;
|
688
|
-
}
|
689
|
-
throw makeError("undefinedModule", a1);
|
690
|
-
}
|
691
|
-
if(!isArray(a1)){
|
692
|
-
// a1 is a configuration
|
693
|
-
config(a1);
|
694
|
-
|
695
|
-
// juggle args; (a2, a3) may be (dependencies, callback)
|
696
|
-
a1 = a2;
|
697
|
-
a2 = a3;
|
698
|
-
}
|
699
|
-
if(isArray(a1)){
|
700
|
-
// signature is (requestList [,callback])
|
701
|
-
if(!a1.length){
|
702
|
-
a2 && a2();
|
703
|
-
}else{
|
704
|
-
syntheticMid = "require*" + uid();
|
705
|
-
|
706
|
-
// resolve the request list with respect to the reference module
|
707
|
-
for(var mid, deps = [], i = 0; i < a1.length;){
|
708
|
-
mid = a1[i++];
|
709
|
-
if(mid in {exports:1, module:1}){
|
710
|
-
throw makeError("illegalModuleId", mid);
|
711
|
-
}
|
712
|
-
deps.push(getModule(mid, referenceModule));
|
713
|
-
}
|
714
|
-
|
715
|
-
// construct a synthetic module to control execution of the requestList, and, optionally, callback
|
716
|
-
module = mix(makeModuleInfo("", syntheticMid, 0, ""), {
|
717
|
-
injected: arrived,
|
718
|
-
deps: deps,
|
719
|
-
def: a2 || noop,
|
720
|
-
require: referenceModule ? referenceModule.require : req
|
721
|
-
});
|
722
|
-
modules[module.mid] = module;
|
723
|
-
|
724
|
-
// checkComplete!=0 holds the idle signal; we're not idle if we're injecting dependencies
|
725
|
-
injectDependencies(module);
|
726
|
-
|
727
|
-
// try to immediately execute
|
728
|
-
// if already traversing a factory tree, then strict causes circular dependency to abort the execution; maybe
|
729
|
-
// it's possible to execute this require later after the current traversal completes and avoid the circular dependency.
|
730
|
-
// ...but *always* insist on immediate in synch mode
|
731
|
-
var strict = checkCompleteGuard && req.async;
|
732
|
-
checkCompleteGuard++;
|
733
|
-
execModule(module, strict);
|
734
|
-
checkIdle();
|
735
|
-
if(!module.executed){
|
736
|
-
// some deps weren't on board or circular dependency detected and strict; therefore, push into the execQ
|
737
|
-
execQ.push(module);
|
738
|
-
}
|
739
|
-
checkComplete();
|
740
|
-
}
|
741
|
-
}
|
742
|
-
return contextRequire;
|
743
|
-
},
|
744
|
-
|
745
|
-
createRequire = function(module){
|
746
|
-
if(!module){
|
747
|
-
return req;
|
748
|
-
}
|
749
|
-
var result = module.require;
|
750
|
-
if(!result){
|
751
|
-
result = function(a1, a2, a3){
|
752
|
-
return contextRequire(a1, a2, a3, module, result);
|
753
|
-
};
|
754
|
-
module.require = mix(result, req);
|
755
|
-
result.module = module;
|
756
|
-
result.toUrl = function(name){
|
757
|
-
return toUrl(name, module);
|
758
|
-
};
|
759
|
-
result.toAbsMid = function(mid){
|
760
|
-
return toAbsMid(mid, module);
|
761
|
-
};
|
762
|
-
if(has("dojo-undef-api")){
|
763
|
-
result.undef = function(mid){
|
764
|
-
req.undef(mid, module);
|
765
|
-
};
|
766
|
-
}
|
767
|
-
if(has("dojo-sync-loader")){
|
768
|
-
result.syncLoadNls = function(mid){
|
769
|
-
var nlsModuleInfo = getModuleInfo(mid, module),
|
770
|
-
nlsModule = modules[nlsModuleInfo.mid];
|
771
|
-
if(!nlsModule || !nlsModule.executed){
|
772
|
-
cached = cache[nlsModuleInfo.mid] || cache[nlsModuleInfo.cacheId];
|
773
|
-
if(cached){
|
774
|
-
evalModuleText(cached);
|
775
|
-
nlsModule = modules[nlsModuleInfo.mid];
|
776
|
-
}
|
777
|
-
}
|
778
|
-
return nlsModule && nlsModule.executed && nlsModule.result;
|
779
|
-
};
|
780
|
-
}
|
781
|
-
|
782
|
-
}
|
783
|
-
return result;
|
784
|
-
},
|
785
|
-
|
786
|
-
execQ =
|
787
|
-
// The list of modules that need to be evaluated.
|
788
|
-
[],
|
789
|
-
|
790
|
-
defQ =
|
791
|
-
// The queue of define arguments sent to loader.
|
792
|
-
[],
|
793
|
-
|
794
|
-
waiting =
|
795
|
-
// The set of modules upon which the loader is waiting for definition to arrive
|
796
|
-
{},
|
797
|
-
|
798
|
-
setRequested = function(module){
|
799
|
-
module.injected = requested;
|
800
|
-
waiting[module.mid] = 1;
|
801
|
-
if(module.url){
|
802
|
-
waiting[module.url] = module.pack || 1;
|
803
|
-
}
|
804
|
-
},
|
805
|
-
|
806
|
-
setArrived = function(module){
|
807
|
-
module.injected = arrived;
|
808
|
-
delete waiting[module.mid];
|
809
|
-
if(module.url){
|
810
|
-
delete waiting[module.url];
|
811
|
-
}
|
812
|
-
if(isEmpty(waiting)){
|
813
|
-
clearTimer();
|
814
|
-
has("dojo-sync-loader") && legacyMode==xd && (legacyMode = sync);
|
815
|
-
}
|
816
|
-
},
|
817
|
-
|
818
|
-
execComplete = req.idle =
|
819
|
-
// says the loader has completed (or not) its work
|
820
|
-
function(){
|
821
|
-
return !defQ.length && isEmpty(waiting) && !execQ.length && !checkCompleteGuard;
|
822
|
-
},
|
823
|
-
|
824
|
-
runMapProg = function(targetMid, map){
|
825
|
-
// search for targetMid in map; return the map item if found; falsy otherwise
|
826
|
-
for(var i = 0; i < map.length; i++){
|
827
|
-
if(map[i][2].test(targetMid)){
|
828
|
-
return map[i];
|
829
|
-
}
|
830
|
-
}
|
831
|
-
return 0;
|
832
|
-
},
|
833
|
-
|
834
|
-
compactPath = function(path){
|
835
|
-
var result = [],
|
836
|
-
segment, lastSegment;
|
837
|
-
path = path.replace(/\\/g, '/').split('/');
|
838
|
-
while(path.length){
|
839
|
-
segment = path.shift();
|
840
|
-
if(segment==".." && result.length && lastSegment!=".."){
|
841
|
-
result.pop();
|
842
|
-
lastSegment = result[result.length - 1];
|
843
|
-
}else if(segment!="."){
|
844
|
-
result.push(lastSegment= segment);
|
845
|
-
} // else ignore "."
|
846
|
-
}
|
847
|
-
return result.join("/");
|
848
|
-
},
|
849
|
-
|
850
|
-
makeModuleInfo = function(pid, mid, pack, url, cacheId){
|
851
|
-
if(has("dojo-sync-loader")){
|
852
|
-
var xd= req.isXdUrl(url);
|
853
|
-
return {pid:pid, mid:mid, pack:pack, url:url, executed:0, def:0, isXd:xd, isAmd:!!(xd || (packs[pid] && packs[pid].isAmd)), cacheId:cacheId};
|
854
|
-
}else{
|
855
|
-
return {pid:pid, mid:mid, pack:pack, url:url, executed:0, def:0, cacheId:cacheId};
|
856
|
-
}
|
857
|
-
},
|
858
|
-
|
859
|
-
getModuleInfo_ = function(mid, referenceModule, packs, modules, baseUrl, packageMapProg, pathsMapProg, alwaysCreate){
|
860
|
-
// arguments are passed instead of using lexical variables so that this function my be used independent of the loader (e.g., the builder)
|
861
|
-
// alwaysCreate is useful in this case so that getModuleInfo never returns references to real modules owned by the loader
|
862
|
-
var pid, pack, midInPackage, mapProg, mapItem, path, url, result, isRelative, requestedMid, cacheId=0;
|
863
|
-
requestedMid = mid;
|
864
|
-
isRelative = /^\./.test(mid);
|
865
|
-
if(/(^\/)|(\:)|(\.js$)/.test(mid) || (isRelative && !referenceModule)){
|
866
|
-
// absolute path or protocol of .js filetype, or relative path but no reference module and therefore relative to page
|
867
|
-
// whatever it is, it's not a module but just a URL of some sort
|
868
|
-
return makeModuleInfo(0, mid, 0, mid);
|
869
|
-
}else{
|
870
|
-
// relative module ids are relative to the referenceModule; get rid of any dots
|
871
|
-
mid = compactPath(isRelative ? (referenceModule.mid + "/../" + mid) : mid);
|
872
|
-
if(/^\./.test(mid)){
|
873
|
-
throw makeError("irrationalPath", mid);
|
874
|
-
}
|
875
|
-
// find the package indicated by the mid, if any
|
876
|
-
mapProg = referenceModule && referenceModule.pack && referenceModule.pack.mapProg;
|
877
|
-
mapItem = (mapProg && runMapProg(mid, mapProg)) || runMapProg(mid, packageMapProg);
|
878
|
-
if(mapItem){
|
879
|
-
// mid specified a module that's a member of a package; figure out the package id and module id
|
880
|
-
// notice we expect pack.main to be valid with no pre or post slash
|
881
|
-
pid = mapItem[1];
|
882
|
-
mid = mid.substring(mapItem[3]);
|
883
|
-
pack = packs[pid];
|
884
|
-
if(!mid){
|
885
|
-
mid= pack.main;
|
886
|
-
}
|
887
|
-
midInPackage = mid;
|
888
|
-
cacheId = pack.reverseName + "/" + mid;
|
889
|
-
mid = pid + "/" + mid;
|
890
|
-
}else{
|
891
|
-
pid = "";
|
892
|
-
}
|
893
|
-
|
894
|
-
// search aliases
|
895
|
-
var candidateLength = 0,
|
896
|
-
candidate = 0;
|
897
|
-
forEach(aliases, function(pair){
|
898
|
-
var match = mid.match(pair[0]);
|
899
|
-
if(match && match.length>candidateLength){
|
900
|
-
candidate = isFunction(pair[1]) ? mid.replace(pair[0], pair[1]) : pair[1];
|
901
|
-
}
|
902
|
-
});
|
903
|
-
if(candidate){
|
904
|
-
return getModuleInfo_(candidate, 0, packs, modules, baseUrl, packageMapProg, pathsMapProg, alwaysCreate);
|
905
|
-
}
|
906
|
-
|
907
|
-
result = modules[mid];
|
908
|
-
if(result){
|
909
|
-
return alwaysCreate ? makeModuleInfo(result.pid, result.mid, result.pack, result.url, cacheId) : modules[mid];
|
910
|
-
}
|
911
|
-
}
|
912
|
-
// get here iff the sought-after module does not yet exist; therefore, we need to compute the URL given the
|
913
|
-
// fully resolved (i.e., all relative indicators and package mapping resolved) module id
|
914
|
-
|
915
|
-
mapItem = runMapProg(mid, pathsMapProg);
|
916
|
-
if(mapItem){
|
917
|
-
url = mapItem[1] + mid.substring(mapItem[3] - 1);
|
918
|
-
}else if(pid){
|
919
|
-
url = pack.location + "/" + midInPackage;
|
920
|
-
}else if(has("config-tlmSiblingOfDojo")){
|
921
|
-
url = "../" + mid;
|
922
|
-
}else{
|
923
|
-
url = mid;
|
924
|
-
}
|
925
|
-
// if result is not absolute, add baseUrl
|
926
|
-
if(!(/(^\/)|(\:)/.test(url))){
|
927
|
-
url = baseUrl + url;
|
928
|
-
}
|
929
|
-
url += ".js";
|
930
|
-
return makeModuleInfo(pid, mid, pack, compactPath(url), cacheId);
|
931
|
-
},
|
932
|
-
|
933
|
-
getModuleInfo = function(mid, referenceModule){
|
934
|
-
return getModuleInfo_(mid, referenceModule, packs, modules, req.baseUrl, packageMapProg, pathsMapProg);
|
935
|
-
},
|
936
|
-
|
937
|
-
resolvePluginResourceId = function(plugin, prid, referenceModule){
|
938
|
-
return plugin.normalize ? plugin.normalize(prid, function(mid){return toAbsMid(mid, referenceModule);}) : toAbsMid(prid, referenceModule);
|
939
|
-
},
|
940
|
-
|
941
|
-
dynamicPluginUidGenerator = 0,
|
942
|
-
|
943
|
-
getModule = function(mid, referenceModule, immediate){
|
944
|
-
// compute and optionally construct (if necessary) the module implied by the mid with respect to referenceModule
|
945
|
-
var match, plugin, prid, result;
|
946
|
-
match = mid.match(/^(.+?)\!(.*)$/);
|
947
|
-
if(match){
|
948
|
-
// name was <plugin-module>!<plugin-resource-id>
|
949
|
-
plugin = getModule(match[1], referenceModule, immediate);
|
950
|
-
|
951
|
-
if(has("dojo-sync-loader") && legacyMode == sync && !plugin.executed){
|
952
|
-
injectModule(plugin);
|
953
|
-
if(plugin.injected===arrived && !plugin.executed){
|
954
|
-
checkCompleteGuard++;
|
955
|
-
execModule(plugin);
|
956
|
-
checkIdle();
|
957
|
-
}
|
958
|
-
if(plugin.executed){
|
959
|
-
promoteModuleToPlugin(plugin);
|
960
|
-
}else{
|
961
|
-
// we are in xdomain mode for some reason
|
962
|
-
execQ.unshift(plugin);
|
963
|
-
}
|
964
|
-
}
|
965
|
-
|
966
|
-
|
967
|
-
|
968
|
-
if(plugin.executed === executed && !plugin.load){
|
969
|
-
// executed the module not knowing it was a plugin
|
970
|
-
promoteModuleToPlugin(plugin);
|
971
|
-
}
|
972
|
-
|
973
|
-
// if the plugin has not been loaded, then can't resolve the prid and must assume this plugin is dynamic until we find out otherwise
|
974
|
-
if(plugin.load){
|
975
|
-
prid = resolvePluginResourceId(plugin, match[2], referenceModule);
|
976
|
-
mid = (plugin.mid + "!" + (plugin.dynamic ? ++dynamicPluginUidGenerator + "!" : "") + prid);
|
977
|
-
}else{
|
978
|
-
prid = match[2];
|
979
|
-
mid = plugin.mid + "!" + (++dynamicPluginUidGenerator) + "!waitingForPlugin";
|
980
|
-
}
|
981
|
-
result = {plugin:plugin, mid:mid, req:createRequire(referenceModule), prid:prid};
|
982
|
-
}else{
|
983
|
-
result = getModuleInfo(mid, referenceModule);
|
984
|
-
}
|
985
|
-
return modules[result.mid] || (!immediate && (modules[result.mid] = result));
|
986
|
-
},
|
987
|
-
|
988
|
-
toAbsMid = req.toAbsMid = function(mid, referenceModule){
|
989
|
-
return getModuleInfo(mid, referenceModule).mid;
|
990
|
-
},
|
991
|
-
|
992
|
-
toUrl = req.toUrl = function(name, referenceModule){
|
993
|
-
var moduleInfo = getModuleInfo(name+"/x", referenceModule),
|
994
|
-
url = moduleInfo.url;
|
995
|
-
return fixupUrl(moduleInfo.pid===0 ?
|
996
|
-
// if pid===0, then name had a protocol or absolute path; either way, toUrl is the identify function in such cases
|
997
|
-
name :
|
998
|
-
// "/x.js" since getModuleInfo automatically appends ".js" and we appended "/x" to make name look likde a module id
|
999
|
-
url.substring(0, url.length-5)
|
1000
|
-
);
|
1001
|
-
},
|
1002
|
-
|
1003
|
-
nonModuleProps = {
|
1004
|
-
injected: arrived,
|
1005
|
-
executed: executed,
|
1006
|
-
def: nonmodule,
|
1007
|
-
result: nonmodule
|
1008
|
-
},
|
1009
|
-
|
1010
|
-
makeCjs = function(mid){
|
1011
|
-
return modules[mid] = mix({mid:mid}, nonModuleProps);
|
1012
|
-
},
|
1013
|
-
|
1014
|
-
cjsRequireModule = makeCjs("require"),
|
1015
|
-
cjsExportsModule = makeCjs("exports"),
|
1016
|
-
cjsModuleModule = makeCjs("module"),
|
1017
|
-
|
1018
|
-
runFactory = function(module, args){
|
1019
|
-
req.trace("loader-run-factory", [module.mid]);
|
1020
|
-
var factory = module.def,
|
1021
|
-
result;
|
1022
|
-
has("dojo-sync-loader") && syncExecStack.unshift(module);
|
1023
|
-
if(has("config-dojo-loader-catches")){
|
1024
|
-
try{
|
1025
|
-
result= isFunction(factory) ? factory.apply(null, args) : factory;
|
1026
|
-
}catch(e){
|
1027
|
-
signal(error, module.result = makeError("factoryThrew", [module, e]));
|
1028
|
-
}
|
1029
|
-
}else{
|
1030
|
-
result= isFunction(factory) ? factory.apply(null, args) : factory;
|
1031
|
-
}
|
1032
|
-
module.result = result===undefined && module.cjs ? module.cjs.exports : result;
|
1033
|
-
has("dojo-sync-loader") && syncExecStack.shift(module);
|
1034
|
-
},
|
1035
|
-
|
1036
|
-
abortExec = {},
|
1037
|
-
|
1038
|
-
defOrder = 0,
|
1039
|
-
|
1040
|
-
promoteModuleToPlugin = function(pluginModule){
|
1041
|
-
var plugin = pluginModule.result;
|
1042
|
-
pluginModule.dynamic = plugin.dynamic;
|
1043
|
-
pluginModule.normalize = plugin.normalize;
|
1044
|
-
pluginModule.load = plugin.load;
|
1045
|
-
return pluginModule;
|
1046
|
-
},
|
1047
|
-
|
1048
|
-
resolvePluginLoadQ = function(plugin){
|
1049
|
-
// plugins is a newly executed module that has a loadQ waiting to run
|
1050
|
-
|
1051
|
-
// step 1: traverse the loadQ and fixup the mid and prid; remember the map from original mid to new mid
|
1052
|
-
// recall the original mid was created before the plugin was on board and therefore it was impossible to
|
1053
|
-
// compute the final mid; accordingly, prid may or may not change, but the mid will definitely change
|
1054
|
-
var map = {};
|
1055
|
-
forEach(plugin.loadQ, function(pseudoPluginResource){
|
1056
|
-
// manufacture and insert the real module in modules
|
1057
|
-
var pseudoMid = pseudoPluginResource.mid,
|
1058
|
-
prid = resolvePluginResourceId(plugin, pseudoPluginResource.prid, pseudoPluginResource.req.module),
|
1059
|
-
mid = plugin.dynamic ? pseudoPluginResource.mid.replace(/waitingForPlugin$/, prid) : (plugin.mid + "!" + prid),
|
1060
|
-
pluginResource = mix(mix({}, pseudoPluginResource), {mid:mid, prid:prid, injected:0});
|
1061
|
-
if(!modules[mid]){
|
1062
|
-
// create a new (the real) plugin resource and inject it normally now that the plugin is on board
|
1063
|
-
injectPlugin(modules[mid] = pluginResource);
|
1064
|
-
} // else this was a duplicate request for the same (plugin, rid) for a nondynamic plugin
|
1065
|
-
|
1066
|
-
// pluginResource is really just a placeholder with the wrong mid (because we couldn't calculate it until the plugin was on board)
|
1067
|
-
// mark is as arrived and delete it from modules; the real module was requested above
|
1068
|
-
map[pseudoPluginResource.mid] = modules[mid];
|
1069
|
-
setArrived(pseudoPluginResource);
|
1070
|
-
delete modules[pseudoPluginResource.mid];
|
1071
|
-
});
|
1072
|
-
plugin.loadQ = 0;
|
1073
|
-
|
1074
|
-
// step2: replace all references to any placeholder modules with real modules
|
1075
|
-
var substituteModules = function(module){
|
1076
|
-
for(var replacement, deps = module.deps || [], i = 0; i<deps.length; i++){
|
1077
|
-
replacement = map[deps[i].mid];
|
1078
|
-
if(replacement){
|
1079
|
-
deps[i] = replacement;
|
1080
|
-
}
|
1081
|
-
}
|
1082
|
-
};
|
1083
|
-
for(var p in modules){
|
1084
|
-
substituteModules(modules[p]);
|
1085
|
-
}
|
1086
|
-
forEach(execQ, substituteModules);
|
1087
|
-
},
|
1088
|
-
|
1089
|
-
finishExec = function(module){
|
1090
|
-
req.trace("loader-finish-exec", [module.mid]);
|
1091
|
-
module.executed = executed;
|
1092
|
-
module.defOrder = defOrder++;
|
1093
|
-
has("dojo-sync-loader") && forEach(module.provides, function(cb){ cb(); });
|
1094
|
-
if(module.loadQ){
|
1095
|
-
// the module was a plugin
|
1096
|
-
promoteModuleToPlugin(module);
|
1097
|
-
resolvePluginLoadQ(module);
|
1098
|
-
}
|
1099
|
-
// remove all occurences of this module from the execQ
|
1100
|
-
for(i = 0; i < execQ.length;){
|
1101
|
-
if(execQ[i] === module){
|
1102
|
-
execQ.splice(i, 1);
|
1103
|
-
}else{
|
1104
|
-
i++;
|
1105
|
-
}
|
1106
|
-
}
|
1107
|
-
},
|
1108
|
-
|
1109
|
-
circleTrace = [],
|
1110
|
-
|
1111
|
-
execModule = function(module, strict){
|
1112
|
-
// run the dependency vector, then run the factory for module
|
1113
|
-
if(module.executed === executing){
|
1114
|
-
req.trace("loader-circular-dependency", [circleTrace.concat(mid).join("->")]);
|
1115
|
-
return (!module.def || strict) ? abortExec : (module.cjs && module.cjs.exports);
|
1116
|
-
}
|
1117
|
-
// at this point the module is either not executed or fully executed
|
1118
|
-
|
1119
|
-
|
1120
|
-
if(!module.executed){
|
1121
|
-
if(!module.def){
|
1122
|
-
return abortExec;
|
1123
|
-
}
|
1124
|
-
var mid = module.mid,
|
1125
|
-
deps = module.deps || [],
|
1126
|
-
arg, argResult,
|
1127
|
-
args = [],
|
1128
|
-
i = 0;
|
1129
|
-
|
1130
|
-
if(has("dojo-trace-api")){
|
1131
|
-
circleTrace.push(mid);
|
1132
|
-
req.trace("loader-exec-module", ["exec", circleTrace.length, mid]);
|
1133
|
-
}
|
1134
|
-
|
1135
|
-
// for circular dependencies, assume the first module encountered was executed OK
|
1136
|
-
// modules that circularly depend on a module that has not run its factory will get
|
1137
|
-
// the premade cjs.exports===module.result. They can take a reference to this object and/or
|
1138
|
-
// add properties to it. When the module finally runs its factory, the factory can
|
1139
|
-
// read/write/replace this object. Notice that so long as the object isn't replaced, any
|
1140
|
-
// reference taken earlier while walking the deps list is still valid.
|
1141
|
-
module.executed = executing;
|
1142
|
-
while(i < deps.length){
|
1143
|
-
arg = deps[i++];
|
1144
|
-
argResult = ((arg === cjsRequireModule) ? createRequire(module) :
|
1145
|
-
((arg === cjsExportsModule) ? module.cjs.exports :
|
1146
|
-
((arg === cjsModuleModule) ? module.cjs :
|
1147
|
-
execModule(arg, strict))));
|
1148
|
-
if(argResult === abortExec){
|
1149
|
-
module.executed = 0;
|
1150
|
-
req.trace("loader-exec-module", ["abort", mid]);
|
1151
|
-
has("dojo-trace-api") && circleTrace.pop();
|
1152
|
-
return abortExec;
|
1153
|
-
}
|
1154
|
-
args.push(argResult);
|
1155
|
-
}
|
1156
|
-
runFactory(module, args);
|
1157
|
-
finishExec(module);
|
1158
|
-
}
|
1159
|
-
// at this point the module is guaranteed fully executed
|
1160
|
-
|
1161
|
-
has("dojo-trace-api") && circleTrace.pop();
|
1162
|
-
return module.result;
|
1163
|
-
},
|
1164
|
-
|
1165
|
-
|
1166
|
-
checkCompleteGuard = 0,
|
1167
|
-
|
1168
|
-
checkComplete = function(){
|
1169
|
-
// keep going through the execQ as long as at least one factory is executed
|
1170
|
-
// plugins, recursion, cached modules all make for many execution path possibilities
|
1171
|
-
if(checkCompleteGuard){
|
1172
|
-
return;
|
1173
|
-
}
|
1174
|
-
checkCompleteGuard++;
|
1175
|
-
checkDojoRequirePlugin();
|
1176
|
-
for(var currentDefOrder, module, i = 0; i < execQ.length;){
|
1177
|
-
currentDefOrder = defOrder;
|
1178
|
-
module = execQ[i];
|
1179
|
-
execModule(module);
|
1180
|
-
if(currentDefOrder!=defOrder){
|
1181
|
-
// defOrder was bumped one or more times indicating something was executed (note, this indicates
|
1182
|
-
// the execQ was modified, maybe a lot (for example a later module causes an earlier module to execute)
|
1183
|
-
checkDojoRequirePlugin();
|
1184
|
-
i = 0;
|
1185
|
-
}else{
|
1186
|
-
// nothing happened; check the next module in the exec queue
|
1187
|
-
i++;
|
1188
|
-
}
|
1189
|
-
}
|
1190
|
-
checkIdle();
|
1191
|
-
},
|
1192
|
-
|
1193
|
-
checkIdle = function(){
|
1194
|
-
checkCompleteGuard--;
|
1195
|
-
if(execComplete()){
|
1196
|
-
signal("idle", []);
|
1197
|
-
}
|
1198
|
-
};
|
1199
|
-
|
1200
|
-
|
1201
|
-
if(has("dojo-undef-api")){
|
1202
|
-
req.undef = function(moduleId, referenceModule){
|
1203
|
-
// In order to reload a module, it must be undefined (this routine) and then re-requested.
|
1204
|
-
// This is useful for testing frameworks (at least).
|
1205
|
-
var module = getModule(moduleId, referenceModule);
|
1206
|
-
setArrived(module);
|
1207
|
-
delete modules[module.mid];
|
1208
|
-
};
|
1209
|
-
}
|
1210
|
-
|
1211
|
-
if(has("dojo-inject-api")){
|
1212
|
-
if(has("dojo-loader-eval-hint-url")===undefined){
|
1213
|
-
has.add("dojo-loader-eval-hint-url", 1);
|
1214
|
-
}
|
1215
|
-
|
1216
|
-
var fixupUrl= function(url){
|
1217
|
-
url += ""; // make sure url is a Javascript string (some paths may be a Java string)
|
1218
|
-
return url + (cacheBust ? ((/\?/.test(url) ? "&" : "?") + cacheBust) : "");
|
1219
|
-
},
|
1220
|
-
|
1221
|
-
injectPlugin = function(
|
1222
|
-
module
|
1223
|
-
){
|
1224
|
-
// injects the plugin module given by module; may have to inject the plugin itself
|
1225
|
-
var plugin = module.plugin;
|
1226
|
-
|
1227
|
-
if(plugin.executed === executed && !plugin.load){
|
1228
|
-
// executed the module not knowing it was a plugin
|
1229
|
-
promoteModuleToPlugin(plugin);
|
1230
|
-
}
|
1231
|
-
|
1232
|
-
var onLoad = function(def){
|
1233
|
-
module.result = def;
|
1234
|
-
setArrived(module);
|
1235
|
-
finishExec(module);
|
1236
|
-
checkComplete();
|
1237
|
-
};
|
1238
|
-
|
1239
|
-
if(plugin.load){
|
1240
|
-
plugin.load(module.prid, module.req, onLoad);
|
1241
|
-
}else if(plugin.loadQ){
|
1242
|
-
plugin.loadQ.push(module);
|
1243
|
-
}else{
|
1244
|
-
// the unshift instead of push is important: we don't want plugins to execute as
|
1245
|
-
// dependencies of some other module because this may cause circles when the plugin
|
1246
|
-
// loadQ is run; also, generally, we want plugins to run early since they may load
|
1247
|
-
// several other modules and therefore can potentially unblock many modules
|
1248
|
-
plugin.loadQ = [module];
|
1249
|
-
execQ.unshift(plugin);
|
1250
|
-
injectModule(plugin);
|
1251
|
-
}
|
1252
|
-
},
|
1253
|
-
|
1254
|
-
// for IE, injecting a module may result in a recursive execution if the module is in the cache
|
1255
|
-
|
1256
|
-
cached = 0,
|
1257
|
-
|
1258
|
-
injectingModule = 0,
|
1259
|
-
|
1260
|
-
injectingCachedModule = 0,
|
1261
|
-
|
1262
|
-
evalModuleText = function(text, module){
|
1263
|
-
// see def() for the injectingCachedModule bracket; it simply causes a short, safe curcuit
|
1264
|
-
injectingCachedModule = 1;
|
1265
|
-
if(has("config-dojo-loader-catches")){
|
1266
|
-
try{
|
1267
|
-
if(text===cached){
|
1268
|
-
cached.call(null);
|
1269
|
-
}else{
|
1270
|
-
req.eval(text, has("dojo-loader-eval-hint-url") ? module.url : module.mid);
|
1271
|
-
}
|
1272
|
-
}catch(e){
|
1273
|
-
signal(error, makeError("evalModuleThrew", module));
|
1274
|
-
}
|
1275
|
-
}else{
|
1276
|
-
if(text===cached){
|
1277
|
-
cached.call(null);
|
1278
|
-
}else{
|
1279
|
-
req.eval(text, has("dojo-loader-eval-hint-url") ? module.url : module.mid);
|
1280
|
-
}
|
1281
|
-
}
|
1282
|
-
injectingCachedModule = 0;
|
1283
|
-
},
|
1284
|
-
|
1285
|
-
injectModule = function(module){
|
1286
|
-
// Inject the module. In the browser environment, this means appending a script element into
|
1287
|
-
// the document; in other environments, it means loading a file.
|
1288
|
-
//
|
1289
|
-
// If in synchronous mode, then get the module synchronously if it's not xdomainLoading.
|
1290
|
-
|
1291
|
-
var mid = module.mid,
|
1292
|
-
url = module.url;
|
1293
|
-
if(module.executed || module.injected || waiting[mid] || (module.url && ((module.pack && waiting[module.url]===module.pack) || waiting[module.url]==1))){
|
1294
|
-
return;
|
1295
|
-
}
|
1296
|
-
setRequested(module);
|
1297
|
-
|
1298
|
-
if(has("dojo-combo-api")){
|
1299
|
-
var viaCombo = 0;
|
1300
|
-
if(module.plugin && module.plugin.isCombo){
|
1301
|
-
// a combo plugin; therefore, must be handled by combo service
|
1302
|
-
// the prid should have already been converted to a URL (if required by the plugin) during
|
1303
|
-
// the normalze process; in any event, there is no way for the loader to know how to
|
1304
|
-
// to the conversion; therefore the third argument is zero
|
1305
|
-
req.combo.add(module.plugin.mid, module.prid, 0, req);
|
1306
|
-
viaCombo = 1;
|
1307
|
-
}else if(!module.plugin){
|
1308
|
-
viaCombo = req.combo.add(0, module.mid, module.url, req);
|
1309
|
-
}
|
1310
|
-
if(viaCombo){
|
1311
|
-
comboPending= 1;
|
1312
|
-
return;
|
1313
|
-
}
|
1314
|
-
}
|
1315
|
-
|
1316
|
-
if(module.plugin){
|
1317
|
-
injectPlugin(module);
|
1318
|
-
return;
|
1319
|
-
} // else a normal module (not a plugin)
|
1320
|
-
|
1321
|
-
|
1322
|
-
var onLoadCallback = function(){
|
1323
|
-
runDefQ(module);
|
1324
|
-
if(module.injected !== arrived){
|
1325
|
-
// the script that contained the module arrived and has been executed yet
|
1326
|
-
// nothing was added to the defQ (so it wasn't an AMD module) and the module
|
1327
|
-
// wasn't marked as arrived by dojo.provide (so it wasn't a v1.6- module);
|
1328
|
-
// therefore, it must not have been a module; adjust state accordingly
|
1329
|
-
setArrived(module);
|
1330
|
-
mix(module, nonModuleProps);
|
1331
|
-
}
|
1332
|
-
|
1333
|
-
if(has("dojo-sync-loader") && legacyMode){
|
1334
|
-
// must call checkComplete even in for sync loader because we may be in xdomainLoading mode;
|
1335
|
-
// but, if xd loading, then don't call checkComplete until out of the current sync traversal
|
1336
|
-
// in order to preserve order of execution of the dojo.required modules
|
1337
|
-
!syncExecStack.length && checkComplete();
|
1338
|
-
}else{
|
1339
|
-
checkComplete();
|
1340
|
-
}
|
1341
|
-
};
|
1342
|
-
cached = cache[mid] || cache[module.cacheId];
|
1343
|
-
if(cached){
|
1344
|
-
req.trace("loader-inject", ["cache", module.mid, url]);
|
1345
|
-
evalModuleText(cached, module);
|
1346
|
-
onLoadCallback();
|
1347
|
-
return;
|
1348
|
-
}
|
1349
|
-
if(has("dojo-sync-loader") && legacyMode){
|
1350
|
-
if(module.isXd){
|
1351
|
-
// switch to async mode temporarily; if current legacyMode!=sync, then is must be one of {legacyAsync, xd, false}
|
1352
|
-
legacyMode==sync && (legacyMode = xd);
|
1353
|
-
// fall through and load via script injection
|
1354
|
-
}else if(module.isAmd && legacyMode!=sync){
|
1355
|
-
// fall through and load via script injection
|
1356
|
-
}else{
|
1357
|
-
// mode may be sync, xd/legacyAsync, or async; module may be AMD or legacy; but module is always located on the same domain
|
1358
|
-
var xhrCallback = function(text){
|
1359
|
-
if(legacyMode==sync){
|
1360
|
-
// the top of syncExecStack gives the current synchronously executing module; the loader needs
|
1361
|
-
// to know this if it has to switch to async loading in the middle of evaluating a legacy module
|
1362
|
-
// this happens when a modules dojo.require's a module that must be loaded async because it's xdomain
|
1363
|
-
// (using unshift/shift because there is no back() methods for Javascript arrays)
|
1364
|
-
syncExecStack.unshift(module);
|
1365
|
-
evalModuleText(text, module);
|
1366
|
-
syncExecStack.shift();
|
1367
|
-
|
1368
|
-
// maybe the module was an AMD module
|
1369
|
-
runDefQ(module);
|
1370
|
-
|
1371
|
-
// legacy modules never get to defineModule() => cjs and injected never set; also evaluation implies executing
|
1372
|
-
if(!module.cjs){
|
1373
|
-
setArrived(module);
|
1374
|
-
finishExec(module);
|
1375
|
-
}
|
1376
|
-
|
1377
|
-
if(module.finish){
|
1378
|
-
// while synchronously evaluating this module, dojo.require was applied referencing a module
|
1379
|
-
// that had to be loaded async; therefore, the loader stopped answering all dojo.require
|
1380
|
-
// requests so they could be answered completely in the correct sequence; module.finish gives
|
1381
|
-
// the list of dojo.requires that must be re-applied once all target modules are available;
|
1382
|
-
// make a synthetic module to execute the dojo.require's in the correct order
|
1383
|
-
|
1384
|
-
// compute a guarnateed-unique mid for the synthetic finish module; remember the finish vector; remove it from the reference module
|
1385
|
-
// TODO: can we just leave the module.finish...what's it hurting?
|
1386
|
-
var finishMid = mid + "*finish",
|
1387
|
-
finish = module.finish;
|
1388
|
-
delete module.finish;
|
1389
|
-
|
1390
|
-
def(finishMid, ["dojo", ("dojo/require!" + finish.join(",")).replace(/\./g, "/")], function(dojo){
|
1391
|
-
forEach(finish, function(mid){ dojo.require(mid); });
|
1392
|
-
});
|
1393
|
-
// unshift, not push, which causes the current traversal to be reattempted from the top
|
1394
|
-
execQ.unshift(getModule(finishMid));
|
1395
|
-
}
|
1396
|
-
onLoadCallback();
|
1397
|
-
}else{
|
1398
|
-
text = transformToAmd(module, text);
|
1399
|
-
if(text){
|
1400
|
-
evalModuleText(text, module);
|
1401
|
-
onLoadCallback();
|
1402
|
-
}else{
|
1403
|
-
// if transformToAmd returned falsy, then the module was already AMD and it can be script-injected
|
1404
|
-
// do so to improve debugability(even though it means another download...which probably won't happen with a good browser cache)
|
1405
|
-
injectingModule = module;
|
1406
|
-
req.injectUrl(fixupUrl(url), onLoadCallback, module);
|
1407
|
-
injectingModule = 0;
|
1408
|
-
}
|
1409
|
-
}
|
1410
|
-
};
|
1411
|
-
|
1412
|
-
req.trace("loader-inject", ["xhr", module.mid, url, legacyMode!=sync]);
|
1413
|
-
if(has("config-dojo-loader-catches")){
|
1414
|
-
try{
|
1415
|
-
req.getText(url, legacyMode!=sync, xhrCallback);
|
1416
|
-
}catch(e){
|
1417
|
-
signal(error, makeError("xhrInjectFailed", [module, e]));
|
1418
|
-
}
|
1419
|
-
}else{
|
1420
|
-
req.getText(url, legacyMode!=sync, xhrCallback);
|
1421
|
-
}
|
1422
|
-
return;
|
1423
|
-
}
|
1424
|
-
} // else async mode or fell through in xdomain loading mode; either way, load by script injection
|
1425
|
-
req.trace("loader-inject", ["script", module.mid, url]);
|
1426
|
-
injectingModule = module;
|
1427
|
-
req.injectUrl(fixupUrl(url), onLoadCallback, module);
|
1428
|
-
injectingModule = 0;
|
1429
|
-
},
|
1430
|
-
|
1431
|
-
defineModule = function(module, deps, def){
|
1432
|
-
req.trace("loader-define-module", [module.mid, deps]);
|
1433
|
-
|
1434
|
-
if(has("dojo-combo-api") && module.plugin && module.plugin.isCombo){
|
1435
|
-
// the module is a plugin resource loaded by the combo service
|
1436
|
-
// note: check for module.plugin should be enough since normal plugin resources should
|
1437
|
-
// not follow this path; module.plugin.isCombo is future-proofing belt and suspenders
|
1438
|
-
module.result = isFunction(def) ? def() : def;
|
1439
|
-
setArrived(module);
|
1440
|
-
finishExec(module);
|
1441
|
-
return module;
|
1442
|
-
};
|
1443
|
-
|
1444
|
-
var mid = module.mid;
|
1445
|
-
if(module.injected === arrived){
|
1446
|
-
signal(error, makeError("multipleDefine", module));
|
1447
|
-
return module;
|
1448
|
-
}
|
1449
|
-
mix(module, {
|
1450
|
-
deps: deps,
|
1451
|
-
def: def,
|
1452
|
-
cjs: {
|
1453
|
-
id: module.mid,
|
1454
|
-
uri: module.url,
|
1455
|
-
exports: (module.result = {}),
|
1456
|
-
setExports: function(exports){
|
1457
|
-
module.cjs.exports = exports;
|
1458
|
-
}
|
1459
|
-
}
|
1460
|
-
});
|
1461
|
-
|
1462
|
-
// resolve deps with respect to this module
|
1463
|
-
for(var i = 0; i < deps.length; i++){
|
1464
|
-
deps[i] = getModule(deps[i], module);
|
1465
|
-
}
|
1466
|
-
|
1467
|
-
if(has("dojo-sync-loader") && legacyMode && !waiting[mid]){
|
1468
|
-
// the module showed up without being asked for; it was probably in a <script> element
|
1469
|
-
injectDependencies(module);
|
1470
|
-
execQ.push(module);
|
1471
|
-
checkComplete();
|
1472
|
-
}
|
1473
|
-
setArrived(module);
|
1474
|
-
|
1475
|
-
if(!isFunction(def) && !deps.length){
|
1476
|
-
module.result = def;
|
1477
|
-
finishExec(module);
|
1478
|
-
}
|
1479
|
-
|
1480
|
-
return module;
|
1481
|
-
},
|
1482
|
-
|
1483
|
-
runDefQ = function(referenceModule, mids){
|
1484
|
-
// defQ is an array of [id, dependencies, factory]
|
1485
|
-
// mids (if any) is a vector of mids given by a combo service
|
1486
|
-
var definedModules = [],
|
1487
|
-
module, args;
|
1488
|
-
while(defQ.length){
|
1489
|
-
args = defQ.shift();
|
1490
|
-
mids && (args[0]= mids.shift());
|
1491
|
-
// explicit define indicates possible multiple modules in a single file; delay injecting dependencies until defQ fully
|
1492
|
-
// processed since modules earlier in the queue depend on already-arrived modules that are later in the queue
|
1493
|
-
// TODO: what if no args[0] and no referenceModule
|
1494
|
-
module = (args[0] && getModule(args[0])) || referenceModule;
|
1495
|
-
definedModules.push([module, args[1], args[2]]);
|
1496
|
-
}
|
1497
|
-
consumePendingCacheInsert(referenceModule);
|
1498
|
-
forEach(definedModules, function(args){
|
1499
|
-
injectDependencies(defineModule.apply(null, args));
|
1500
|
-
});
|
1501
|
-
};
|
1502
|
-
}
|
1503
|
-
|
1504
|
-
var timerId = 0,
|
1505
|
-
clearTimer = noop,
|
1506
|
-
startTimer = noop;
|
1507
|
-
if(has("dojo-timeout-api")){
|
1508
|
-
// Timer machinery that monitors how long the loader is waiting and signals an error when the timer runs out.
|
1509
|
-
clearTimer = function(){
|
1510
|
-
timerId && clearTimeout(timerId);
|
1511
|
-
timerId = 0;
|
1512
|
-
},
|
1513
|
-
|
1514
|
-
startTimer = function(){
|
1515
|
-
clearTimer();
|
1516
|
-
req.waitms && (timerId = setTimeout(function(){
|
1517
|
-
clearTimer();
|
1518
|
-
signal(error, makeError("timeout", waiting));
|
1519
|
-
}, req.waitms));
|
1520
|
-
};
|
1521
|
-
}
|
1522
|
-
|
1523
|
-
if(has("dom")){
|
1524
|
-
has.add("ie-event-behavior", doc.attachEvent && (typeof opera === "undefined" || opera.toString() != "[object Opera]"));
|
1525
|
-
}
|
1526
|
-
|
1527
|
-
if(has("dom") && (has("dojo-inject-api") || has("dojo-dom-ready-api"))){
|
1528
|
-
var domOn = function(node, eventName, ieEventName, handler){
|
1529
|
-
// Add an event listener to a DOM node using the API appropriate for the current browser;
|
1530
|
-
// return a function that will disconnect the listener.
|
1531
|
-
if(!has("ie-event-behavior")){
|
1532
|
-
node.addEventListener(eventName, handler, false);
|
1533
|
-
return function(){
|
1534
|
-
node.removeEventListener(eventName, handler, false);
|
1535
|
-
};
|
1536
|
-
}else{
|
1537
|
-
node.attachEvent(ieEventName, handler);
|
1538
|
-
return function(){
|
1539
|
-
node.detachEvent(ieEventName, handler);
|
1540
|
-
};
|
1541
|
-
}
|
1542
|
-
},
|
1543
|
-
windowOnLoadListener = domOn(window, "load", "onload", function(){
|
1544
|
-
req.pageLoaded = 1;
|
1545
|
-
doc.readyState!="complete" && (doc.readyState = "complete");
|
1546
|
-
windowOnLoadListener();
|
1547
|
-
});
|
1548
|
-
|
1549
|
-
if(has("dojo-inject-api")){
|
1550
|
-
// if the loader is on the page, there must be at least one script element
|
1551
|
-
// getting its parent and then doing insertBefore solves the "Operation Aborted"
|
1552
|
-
// error in IE from appending to a node that isn't properly closed; see
|
1553
|
-
// dojo/tests/_base/loader/requirejs/simple-badbase.html for an example
|
1554
|
-
var sibling = doc.getElementsByTagName("script")[0],
|
1555
|
-
insertPoint= sibling.parentNode;
|
1556
|
-
req.injectUrl = function(url, callback, owner){
|
1557
|
-
// insert a script element to the insert-point element with src=url;
|
1558
|
-
// apply callback upon detecting the script has loaded.
|
1559
|
-
|
1560
|
-
startTimer();
|
1561
|
-
var node = owner.node = doc.createElement("script"),
|
1562
|
-
onLoad = function(e){
|
1563
|
-
e = e || window.event;
|
1564
|
-
var node = e.target || e.srcElement;
|
1565
|
-
if(e.type === "load" || /complete|loaded/.test(node.readyState)){
|
1566
|
-
disconnector();
|
1567
|
-
callback && callback();
|
1568
|
-
}
|
1569
|
-
},
|
1570
|
-
disconnector = domOn(node, "load", "onreadystatechange", onLoad);
|
1571
|
-
node.type = "text/javascript";
|
1572
|
-
node.charset = "utf-8";
|
1573
|
-
node.src = url;
|
1574
|
-
insertPoint.insertBefore(node, sibling);
|
1575
|
-
return node;
|
1576
|
-
};
|
1577
|
-
}
|
1578
|
-
}
|
1579
|
-
|
1580
|
-
if(has("dojo-log-api")){
|
1581
|
-
req.log = function(){
|
1582
|
-
try{
|
1583
|
-
for(var i = 0; i < arguments.length; i++){
|
1584
|
-
console.log(arguments[i]);
|
1585
|
-
}
|
1586
|
-
}catch(e){}
|
1587
|
-
};
|
1588
|
-
}else{
|
1589
|
-
req.log = noop;
|
1590
|
-
}
|
1591
|
-
|
1592
|
-
if(has("dojo-trace-api")){
|
1593
|
-
var trace = req.trace = function(
|
1594
|
-
group, // the trace group to which this application belongs
|
1595
|
-
args // the contents of the trace
|
1596
|
-
){
|
1597
|
-
///
|
1598
|
-
// Tracing interface by group.
|
1599
|
-
//
|
1600
|
-
// Sends the contents of args to the console iff (req.trace.on && req.trace[group])
|
1601
|
-
|
1602
|
-
if(trace.on && trace.group[group]){
|
1603
|
-
signal("trace", [group, args]);
|
1604
|
-
for(var arg, dump = [], text= "trace:" + group + (args.length ? (":" + args[0]) : ""), i= 1; i<args.length;){
|
1605
|
-
arg = args[i++];
|
1606
|
-
if(isString(arg)){
|
1607
|
-
text += ", " + arg;
|
1608
|
-
}else{
|
1609
|
-
dump.push(arg);
|
1610
|
-
}
|
1611
|
-
}
|
1612
|
-
req.log(text);
|
1613
|
-
dump.length && dump.push(".");
|
1614
|
-
req.log.apply(req, dump);
|
1615
|
-
}
|
1616
|
-
};
|
1617
|
-
mix(trace, {
|
1618
|
-
on:1,
|
1619
|
-
group:{},
|
1620
|
-
set:function(group, value){
|
1621
|
-
if(isString(group)){
|
1622
|
-
trace.group[group]= value;
|
1623
|
-
}else{
|
1624
|
-
mix(trace.group, group);
|
1625
|
-
}
|
1626
|
-
}
|
1627
|
-
});
|
1628
|
-
trace.set(mix(mix(mix({}, defaultConfig.trace), userConfig.trace), dojoSniffConfig.trace));
|
1629
|
-
on("config", function(config){
|
1630
|
-
config.trace && trace.set(config.trace);
|
1631
|
-
});
|
1632
|
-
}else{
|
1633
|
-
req.trace = noop;
|
1634
|
-
}
|
1635
|
-
|
1636
|
-
var def = function(
|
1637
|
-
mid, //(commonjs.moduleId, optional) list of modules to be loaded before running factory
|
1638
|
-
dependencies, //(array of commonjs.moduleId, optional)
|
1639
|
-
factory //(any)
|
1640
|
-
){
|
1641
|
-
///
|
1642
|
-
// Advises the loader of a module factory. //Implements http://wiki.commonjs.org/wiki/Modules/AsynchronousDefinition.
|
1643
|
-
///
|
1644
|
-
//note
|
1645
|
-
// CommonJS factory scan courtesy of http://requirejs.org
|
1646
|
-
|
1647
|
-
var arity = arguments.length,
|
1648
|
-
args = 0,
|
1649
|
-
defaultDeps = ["require", "exports", "module"];
|
1650
|
-
|
1651
|
-
if(has("dojo-amd-factory-scan")){
|
1652
|
-
if(arity == 1 && isFunction(mid)){
|
1653
|
-
dependencies = [];
|
1654
|
-
mid.toString()
|
1655
|
-
.replace(/(\/\*([\s\S]*?)\*\/|\/\/(.*)$)/mg, "")
|
1656
|
-
.replace(/require\(["']([\w\!\-_\.\/]+)["']\)/g, function (match, dep){
|
1657
|
-
dependencies.push(dep);
|
1658
|
-
});
|
1659
|
-
args = [0, defaultDeps.concat(dependencies), mid];
|
1660
|
-
}
|
1661
|
-
}
|
1662
|
-
if(!args){
|
1663
|
-
args = arity == 1 ? [0, defaultDeps, mid] :
|
1664
|
-
(arity == 2 ? (isArray(mid) ? [0, mid, dependencies] : (isFunction(dependencies) ? [mid, defaultDeps, dependencies] : [mid, [], dependencies])) :
|
1665
|
-
[mid, dependencies, factory]);
|
1666
|
-
}
|
1667
|
-
req.trace("loader-define", args.slice(0, 2));
|
1668
|
-
var targetModule = args[0] && getModule(args[0]),
|
1669
|
-
module;
|
1670
|
-
if(targetModule && !waiting[targetModule.mid]){
|
1671
|
-
// given a mid that hasn't been requested; therefore, defined through means other than injecting
|
1672
|
-
// consequent to a require() or define() application; examples include defining modules on-the-fly
|
1673
|
-
// due to some code path or including a module in a script element. In any case,
|
1674
|
-
// there is no callback waiting to finish processing and nothing to trigger the defQ and the
|
1675
|
-
// dependencies are never requested; therefore, do it here.
|
1676
|
-
injectDependencies(defineModule(targetModule, args[1], args[2]));
|
1677
|
-
}else if(!has("ie-event-behavior") || !has("host-browser") || injectingCachedModule){
|
1678
|
-
// not IE path: anonymous module and therefore must have been injected; therefore, onLoad will fire immediately
|
1679
|
-
// after script finishes being evaluated and the defQ can be run from that callback to detect the module id
|
1680
|
-
defQ.push(args);
|
1681
|
-
}else{
|
1682
|
-
// IE path: possibly anonymous module and therefore injected; therefore, cannot depend on 1-to-1,
|
1683
|
-
// in-order exec of onLoad with script eval (since it's IE) and must manually detect here
|
1684
|
-
targetModule = targetModule || injectingModule;
|
1685
|
-
if(!targetModule){
|
1686
|
-
for(mid in waiting){
|
1687
|
-
module = modules[mid];
|
1688
|
-
if(module && module.node && module.node.readyState === 'interactive'){
|
1689
|
-
targetModule = module;
|
1690
|
-
break;
|
1691
|
-
}
|
1692
|
-
}
|
1693
|
-
if(has("dojo-combo-api") && !targetModule){
|
1694
|
-
for(var i = 0; i<combosPending.length; i++){
|
1695
|
-
targetModule = combosPending[i];
|
1696
|
-
if(targetModule.node && targetModule.node.readyState === 'interactive'){
|
1697
|
-
break;
|
1698
|
-
}
|
1699
|
-
targetModule= 0;
|
1700
|
-
}
|
1701
|
-
}
|
1702
|
-
}
|
1703
|
-
if(has("dojo-combo-api") && isArray(targetModule)){
|
1704
|
-
injectDependencies(defineModule(getModule(targetModule.shift()), args[1], args[2]));
|
1705
|
-
if(!targetModule.length){
|
1706
|
-
combosPending.splice(i, 1);
|
1707
|
-
}
|
1708
|
-
}else if(targetModule){
|
1709
|
-
consumePendingCacheInsert(targetModule);
|
1710
|
-
injectDependencies(defineModule(targetModule, args[1], args[2]));
|
1711
|
-
}else{
|
1712
|
-
signal(error, makeError("ieDefineFailed", args[0]));
|
1713
|
-
}
|
1714
|
-
checkComplete();
|
1715
|
-
}
|
1716
|
-
};
|
1717
|
-
def.amd = {
|
1718
|
-
vendor:"dojotoolkit.org"
|
1719
|
-
};
|
1720
|
-
|
1721
|
-
if(has("dojo-requirejs-api")){
|
1722
|
-
req.def = def;
|
1723
|
-
}
|
1724
|
-
|
1725
|
-
// allow config to override default implemention of named functions; this is useful for
|
1726
|
-
// non-browser environments, e.g., overriding injectUrl, getText, log, etc. in node.js, Rhino, etc.
|
1727
|
-
// also useful for testing and monkey patching loader
|
1728
|
-
mix(mix(req, defaultConfig.loaderPatch), userConfig.loaderPatch);
|
1729
|
-
|
1730
|
-
// now that req is fully initialized and won't change, we can hook it up to the error signal
|
1731
|
-
on(error, function(arg){
|
1732
|
-
try{
|
1733
|
-
console.error(arg);
|
1734
|
-
if(arg instanceof Error){
|
1735
|
-
for(var p in arg){
|
1736
|
-
console.log(p + ":", arg[p]);
|
1737
|
-
}
|
1738
|
-
console.log(".");
|
1739
|
-
}
|
1740
|
-
}catch(e){}
|
1741
|
-
});
|
1742
|
-
|
1743
|
-
// always publish these
|
1744
|
-
mix(req, {
|
1745
|
-
uid:uid,
|
1746
|
-
cache:cache,
|
1747
|
-
packs:packs
|
1748
|
-
});
|
1749
|
-
|
1750
|
-
|
1751
|
-
if(has("dojo-publish-privates")){
|
1752
|
-
mix(req, {
|
1753
|
-
// these may be interesting to look at when debugging
|
1754
|
-
paths:paths,
|
1755
|
-
aliases:aliases,
|
1756
|
-
packageMap:packageMap,
|
1757
|
-
modules:modules,
|
1758
|
-
legacyMode:legacyMode,
|
1759
|
-
execQ:execQ,
|
1760
|
-
defQ:defQ,
|
1761
|
-
waiting:waiting,
|
1762
|
-
|
1763
|
-
// these are used for testing
|
1764
|
-
// TODO: move testing infrastructure to a different has feature
|
1765
|
-
pathsMapProg:pathsMapProg,
|
1766
|
-
packageMapProg:packageMapProg,
|
1767
|
-
listenerQueues:listenerQueues,
|
1768
|
-
|
1769
|
-
// these are used by the builder (at least)
|
1770
|
-
computeMapProg:computeMapProg,
|
1771
|
-
runMapProg:runMapProg,
|
1772
|
-
compactPath:compactPath,
|
1773
|
-
getModuleInfo:getModuleInfo_
|
1774
|
-
});
|
1775
|
-
}
|
1776
|
-
|
1777
|
-
// the loader can be defined exactly once; look for global define which is the symbol AMD loaders are
|
1778
|
-
// *required* to define (as opposed to require, which is optional)
|
1779
|
-
if(global.define){
|
1780
|
-
if(has("dojo-log-api")){
|
1781
|
-
signal(error, makeError("defineAlreadyDefined", 0));
|
1782
|
-
}
|
1783
|
-
}else{
|
1784
|
-
global.define = def;
|
1785
|
-
global.require = req;
|
1786
|
-
}
|
1787
|
-
|
1788
|
-
if(has("dojo-combo-api") && req.combo && req.combo.plugins){
|
1789
|
-
var plugins = req.combo.plugins,
|
1790
|
-
pluginName;
|
1791
|
-
for(pluginName in plugins){
|
1792
|
-
mix(mix(getModule(pluginName), plugins[pluginName]), {isCombo:1, executed:"executed", load:1});
|
1793
|
-
}
|
1794
|
-
}
|
1795
|
-
|
1796
|
-
if(has("dojo-config-api")){
|
1797
|
-
var bootDeps = dojoSniffConfig.deps || userConfig.deps || defaultConfig.deps,
|
1798
|
-
bootCallback = dojoSniffConfig.callback || userConfig.callback || defaultConfig.callback;
|
1799
|
-
req.boot = (bootDeps || bootCallback) ? [bootDeps || [], bootCallback] : 0;
|
1800
|
-
}
|
1801
|
-
if(!has("dojo-built")){
|
1802
|
-
!req.async && req(["dojo"]);
|
1803
|
-
req.boot && req.apply(null, req.boot);
|
1804
|
-
}
|
1805
|
-
})
|
1806
|
-
//>>excludeStart("replaceLoaderConfig", kwArgs.replaceLoaderConfig);
|
1807
|
-
(
|
1808
|
-
// userConfig
|
1809
|
-
(function(){
|
1810
|
-
// make sure we're looking at global dojoConfig etc.
|
1811
|
-
return this.dojoConfig || this.djConfig || this.require || {};
|
1812
|
-
})(),
|
1813
|
-
|
1814
|
-
// defaultConfig
|
1815
|
-
{
|
1816
|
-
// the default configuration for a browser; this will be modified by other environments
|
1817
|
-
hasCache:{
|
1818
|
-
"host-browser":1,
|
1819
|
-
"dom":1,
|
1820
|
-
"dojo-amd-factory-scan":1,
|
1821
|
-
"dojo-loader":1,
|
1822
|
-
"dojo-has-api":1,
|
1823
|
-
"dojo-inject-api":1,
|
1824
|
-
"dojo-timeout-api":1,
|
1825
|
-
"dojo-trace-api":1,
|
1826
|
-
"dojo-log-api":1,
|
1827
|
-
"dojo-dom-ready-api":1,
|
1828
|
-
"dojo-publish-privates":1,
|
1829
|
-
"dojo-config-api":1,
|
1830
|
-
"dojo-sniff":1,
|
1831
|
-
"dojo-sync-loader":1,
|
1832
|
-
"dojo-test-sniff":1,
|
1833
|
-
"config-tlmSiblingOfDojo":1
|
1834
|
-
},
|
1835
|
-
packages:[{
|
1836
|
-
// note: like v1.6-, this bootstrap computes baseUrl to be the dojo directory
|
1837
|
-
name:'dojo',
|
1838
|
-
location:'.'
|
1839
|
-
},{
|
1840
|
-
name:'tests',
|
1841
|
-
location:'./tests'
|
1842
|
-
},{
|
1843
|
-
name:'dijit',
|
1844
|
-
location:'../dijit'
|
1845
|
-
},{
|
1846
|
-
name:'build',
|
1847
|
-
location:'../util/build'
|
1848
|
-
},{
|
1849
|
-
name:'doh',
|
1850
|
-
location:'../util/doh'
|
1851
|
-
},{
|
1852
|
-
name:'dojox',
|
1853
|
-
location:'../dojox'
|
1854
|
-
},{
|
1855
|
-
name:'demos',
|
1856
|
-
location:'../demos'
|
1857
|
-
}],
|
1858
|
-
trace:{
|
1859
|
-
// these are listed so it's simple to turn them on/off while debugging loading
|
1860
|
-
"loader-inject":0,
|
1861
|
-
"loader-define":0,
|
1862
|
-
"loader-exec-module":0,
|
1863
|
-
"loader-run-factory":0,
|
1864
|
-
"loader-finish-exec":0,
|
1865
|
-
"loader-define-module":0,
|
1866
|
-
"loader-circular-dependency":0
|
1867
|
-
},
|
1868
|
-
async:0,
|
1869
|
-
waitSeconds:15
|
1870
|
-
}
|
1871
|
-
);
|
1872
|
-
//>>excludeEnd("replaceLoaderConfig")
|
14
|
+
//>>built
|
15
|
+
(function(_1,_2){var _3=function(){},_4=function(it){for(var p in it){return 0;}return 1;},_5={}.toString,_6=function(it){return _5.call(it)=="[object Function]";},_7=function(it){return _5.call(it)=="[object String]";},_8=function(it){return _5.call(it)=="[object Array]";},_9=function(_a,_b){if(_a){for(var i=0;i<_a.length;){_b(_a[i++]);}}},_c=function(_d,_e){for(var p in _e){_d[p]=_e[p];}return _d;},_f=function(_10,_11){return _c(new Error(_10),{src:"dojoLoader",info:_11});},_12=1,uid=function(){return "_"+_12++;},req=function(_13,_14,_15){return _16(_13,_14,_15,0,req);},_17=this,doc=_17.document,_18=doc&&doc.createElement("DiV"),has=req.has=function(_19){return _6(_1a[_19])?(_1a[_19]=_1a[_19](_17,doc,_18)):_1a[_19];},_1a=has.cache=_2.hasCache;has.add=function(_1b,_1c,now,_1d){(_1a[_1b]===undefined||_1d)&&(_1a[_1b]=_1c);return now&&has(_1b);};0&&has.add("host-node",_1.has&&"host-node" in _1.has?_1.has["host-node"]:(typeof process=="object"&&process.versions&&process.versions.node&&process.versions.v8));if(0){require("./_base/configNode.js").config(_2);_2.loaderPatch.nodeRequire=require;}0&&has.add("host-rhino",_1.has&&"host-rhino" in _1.has?_1.has["host-rhino"]:(typeof load=="function"&&(typeof Packages=="function"||typeof Packages=="object")));if(0){for(var _1e=_1.baseUrl||".",arg,_1f=this.arguments,i=0;i<_1f.length;){arg=(_1f[i++]+"").split("=");if(arg[0]=="baseUrl"){_1e=arg[1];break;}}load(_1e+"/_base/configRhino.js");rhinoDojoConfig(_2,_1e,_1f);}for(var p in _1.has){has.add(p,_1.has[p],0,1);}var _20=1,_21=2,_22=3,_23=4,_24=5;if(0){_20="requested";_21="arrived";_22="not-a-module";_23="executing";_24="executed";}var _25=0,_26="sync",xd="xd",_27=[],_28=0,_29=_3,_2a=_3,_2b;if(1){req.isXdUrl=_3;req.initSyncLoader=function(_2c,_2d,_2e){if(!_28){_28=_2c;_29=_2d;_2a=_2e;}return {sync:_26,requested:_20,arrived:_21,nonmodule:_22,executing:_23,executed:_24,syncExecStack:_27,modules:_2f,execQ:_30,getModule:_31,injectModule:_32,setArrived:_33,signal:_34,finishExec:_35,execModule:_36,dojoRequirePlugin:_28,getLegacyMode:function(){return _25;},guardCheckComplete:_37};};if(1){var _38=location.protocol,_39=location.host;req.isXdUrl=function(url){if(/^\./.test(url)){return false;}if(/^\/\//.test(url)){return true;}var _3a=url.match(/^([^\/\:]+\:)\/+([^\/]+)/);return _3a&&(_3a[1]!=_38||(_39&&_3a[2]!=_39));};1||has.add("dojo-xhr-factory",1);has.add("dojo-force-activex-xhr",1&&!doc.addEventListener&&window.location.protocol=="file:");has.add("native-xhr",typeof XMLHttpRequest!="undefined");if(has("native-xhr")&&!has("dojo-force-activex-xhr")){_2b=function(){return new XMLHttpRequest();};}else{for(var _3b=["Msxml2.XMLHTTP","Microsoft.XMLHTTP","Msxml2.XMLHTTP.4.0"],_3c,i=0;i<3;){try{_3c=_3b[i++];if(new ActiveXObject(_3c)){break;}}catch(e){}}_2b=function(){return new ActiveXObject(_3c);};}req.getXhr=_2b;has.add("dojo-gettext-api",1);req.getText=function(url,_3d,_3e){var xhr=_2b();xhr.open("GET",_3f(url),false);xhr.send(null);if(xhr.status==200||(!location.host&&!xhr.status)){if(_3e){_3e(xhr.responseText,_3d);}}else{throw _f("xhrFailed",xhr.status);}return xhr.responseText;};}}else{req.async=1;}var _40=new Function("return eval(arguments[0]);");req.eval=function(_41,_42){return _40(_41+"\r\n////@ sourceURL="+_42);};var _43={},_44="error",_34=req.signal=function(_45,_46){var _47=_43[_45];_9(_47&&_47.slice(0),function(_48){_48.apply(null,_8(_46)?_46:[_46]);});},on=req.on=function(_49,_4a){var _4b=_43[_49]||(_43[_49]=[]);_4b.push(_4a);return {remove:function(){for(var i=0;i<_4b.length;i++){if(_4b[i]===_4a){_4b.splice(i,1);return;}}}};};var _4c=[],_4d={},_4e=[],_4f={},map=req.map={},_50=[],_2f={},_51="",_52={},_53="url:",_54={},_55={};if(1){var _56=function(_57){var p,_58,_59,now,m;for(p in _54){_58=_54[p];_59=p.match(/^url\:(.+)/);if(_59){_52[_53+_5a(_59[1],_57)]=_58;}else{if(p=="*now"){now=_58;}else{if(p!="*noref"){m=_5b(p,_57);_52[m.mid]=_52[_53+m.url]=_58;}}}}if(now){now(_5c(_57));}_54={};},_5d=function(s){return s.replace(/([\.$?*|{}\(\)\[\]\\\/\+^])/g,function(c){return "\\"+c;});},_5e=function(map,_5f){_5f.splice(0,_5f.length);for(var p in map){_5f.push([p,map[p],new RegExp("^"+_5d(p)+"(/|$)"),p.length]);}_5f.sort(function(lhs,rhs){return rhs[3]-lhs[3];});return _5f;},_60=function(_61){var _62=_61.name;if(!_62){_62=_61;_61={name:_62};}_61=_c({main:"main"},_61);_61.location=_61.location?_61.location:_62;if(_61.packageMap){map[_62]=_61.packageMap;}if(!_61.main.indexOf("./")){_61.main=_61.main.substring(2);}_4f[_62]=_61;},_63=function(_64,_65,_66){for(var p in _64){if(p=="waitSeconds"){req.waitms=(_64[p]||0)*1000;}if(p=="cacheBust"){_51=_64[p]?(_7(_64[p])?_64[p]:(new Date()).getTime()+""):"";}if(p=="baseUrl"||p=="combo"){req[p]=_64[p];}if(1&&p=="async"){var _67=_64[p];req.legacyMode=_25=(_7(_67)&&/sync|legacyAsync/.test(_67)?_67:(!_67?_26:false));req.async=!_25;}if(_64[p]!==_1a){req.rawConfig[p]=_64[p];p!="has"&&has.add("config-"+p,_64[p],0,_65);}}if(!req.baseUrl){req.baseUrl="./";}if(!/\/$/.test(req.baseUrl)){req.baseUrl+="/";}for(p in _64.has){has.add(p,_64.has[p],0,_65);}_9(_64.packages,_60);for(_1e in _64.packagePaths){_9(_64.packagePaths[_1e],function(_68){var _69=_1e+"/"+_68;if(_7(_68)){_68={name:_68};}_68.location=_69;_60(_68);});}_5e(_c(map,_64.map),_50);_9(_50,function(_6a){_6a[1]=_5e(_6a[1],[]);if(_6a[0]=="*"){_50.star=_6a[1];}});_5e(_c(_4d,_64.paths),_4e);_9(_64.aliases,function(_6b){if(_7(_6b[0])){_6b[0]=new RegExp("^"+_5d(_6b[0])+"$");}_4c.push(_6b);});for(p in _64.config){var _6c=_31(p,_66);_6c.config=_c(_6c.config||{},_64.config[p]);}if(_64.cache){_56();_54=_64.cache;if(_64.cache["*noref"]){_56();}}_34("config",[_64,req.rawConfig]);};if(has("dojo-cdn")||1){var _6d=doc.getElementsByTagName("script"),i=0,_6e,_6f,src,_70;while(i<_6d.length){_6e=_6d[i++];if((src=_6e.getAttribute("src"))&&(_70=src.match(/(((.*)\/)|^)dojo\.js(\W|$)/i))){_6f=_70[3]||"";_2.baseUrl=_2.baseUrl||_6f;src=(_6e.getAttribute("data-dojo-config")||_6e.getAttribute("djConfig"));if(src){_55=req.eval("({ "+src+" })","data-dojo-config");}if(0){var _71=_6e.getAttribute("data-main");if(_71){_55.deps=_55.deps||[_71];}}break;}}}if(0){try{if(window.parent!=window&&window.parent.require){var doh=window.parent.require("doh");doh&&_c(_55,doh.testConfig);}}catch(e){}}req.rawConfig={};_63(_2,1);if(has("dojo-cdn")){_4f.dojo.location=_6f;if(_6f){_6f+="/";}_4f.dijit.location=_6f+"../dijit/";_4f.dojox.location=_6f+"../dojox/";}_63(_1,1);_63(_55,1);}else{_4d=_2.paths;_4e=_2.pathsMapProg;_4f=_2.packs;_4c=_2.aliases;_50=_2.mapProgs;_2f=_2.modules;_52=_2.cache;_51=_2.cacheBust;req.rawConfig=_2;}if(0){req.combo=req.combo||{add:_3};var _72=0,_73=[],_74=null;}var _75=function(_76){_37(function(){_9(_76.deps,_32);if(0&&_72&&!_74){_74=setTimeout(function(){_72=0;_74=null;req.combo.done(function(_77,url){var _78=function(){_79(0,_77);_7a();};_73.push(_77);_7b=_77;req.injectUrl(url,_78,_77);_7b=0;},req);},0);}});},_16=function(a1,a2,a3,_7c,_7d){var _7e,_7f;if(_7(a1)){_7e=_31(a1,_7c,true);if(_7e&&_7e.executed){return _7e.result;}throw _f("undefinedModule",a1);}if(!_8(a1)){_63(a1,0,_7c);a1=a2;a2=a3;}if(_8(a1)){if(!a1.length){a2&&a2();}else{_7f="require*"+uid();for(var mid,_80=[],i=0;i<a1.length;){mid=a1[i++];_80.push(_31(mid,_7c));}_7e=_c(_81("",_7f,0,""),{injected:_21,deps:_80,def:a2||_3,require:_7c?_7c.require:req,gc:1});_2f[_7e.mid]=_7e;_75(_7e);var _82=_83&&_25!=_26;_37(function(){_36(_7e,_82);});if(!_7e.executed){_30.push(_7e);}_7a();}}return _7d;},_5c=function(_84){if(!_84){return req;}var _85=_84.require;if(!_85){_85=function(a1,a2,a3){return _16(a1,a2,a3,_84,_85);};_84.require=_c(_85,req);_85.module=_84;_85.toUrl=function(_86){return _5a(_86,_84);};_85.toAbsMid=function(mid){return _b3(mid,_84);};if(0){_85.undef=function(mid){req.undef(mid,_84);};}if(1){_85.syncLoadNls=function(mid){var _87=_5b(mid,_84),_88=_2f[_87.mid];if(!_88||!_88.executed){_89=_52[_87.mid]||_52[_53+_87.url];if(_89){_8a(_89);_88=_2f[_87.mid];}}return _88&&_88.executed&&_88.result;};}}return _85;},_30=[],_8b=[],_8c={},_8d=function(_8e){_8e.injected=_20;_8c[_8e.mid]=1;if(_8e.url){_8c[_8e.url]=_8e.pack||1;}_8f();},_33=function(_90){_90.injected=_21;delete _8c[_90.mid];if(_90.url){delete _8c[_90.url];}if(_4(_8c)){_91();1&&_25==xd&&(_25=_26);}},_92=req.idle=function(){return !_8b.length&&_4(_8c)&&!_30.length&&!_83;},_93=function(_94,map){if(map){for(var i=0;i<map.length;i++){if(map[i][2].test(_94)){return map[i];}}}return 0;},_95=function(_96){var _97=[],_98,_99;_96=_96.replace(/\\/g,"/").split("/");while(_96.length){_98=_96.shift();if(_98==".."&&_97.length&&_99!=".."){_97.pop();_99=_97[_97.length-1];}else{if(_98!="."){_97.push(_99=_98);}}}return _97.join("/");},_81=function(pid,mid,_9a,url){if(1){var xd=req.isXdUrl(url);return {pid:pid,mid:mid,pack:_9a,url:url,executed:0,def:0,isXd:xd,isAmd:!!(xd||(_4f[pid]&&_4f[pid].isAmd))};}else{return {pid:pid,mid:mid,pack:_9a,url:url,executed:0,def:0};}},_9b=function(mid,_9c,_9d,_9e,_9f,_a0,_a1,_a2){var pid,_a3,_a4,_a5,_a6,url,_a7,_a8,_a9;_a9=mid;_a8=/^\./.test(mid);if(/(^\/)|(\:)|(\.js$)/.test(mid)||(_a8&&!_9c)){return _81(0,mid,0,mid);}else{mid=_95(_a8?(_9c.mid+"/../"+mid):mid);if(/^\./.test(mid)){throw _f("irrationalPath",mid);}if(_9c){_a6=_93(_9c.mid,_a0);}_a6=_a6||_a0.star;_a6=_a6&&_93(mid,_a6[1]);if(_a6){mid=_a6[1]+mid.substring(_a6[3]);}_70=mid.match(/^([^\/]+)(\/(.+))?$/);pid=_70?_70[1]:"";if((_a3=_9d[pid])){mid=pid+"/"+(_a4=(_70[3]||_a3.main));}else{pid="";}var _aa=0,_ab=0;_9(_4c,function(_ac){var _ad=mid.match(_ac[0]);if(_ad&&_ad.length>_aa){_ab=_6(_ac[1])?mid.replace(_ac[0],_ac[1]):_ac[1];}});if(_ab){return _9b(_ab,0,_9d,_9e,_9f,_a0,_a1,_a2);}_a7=_9e[mid];if(_a7){return _a2?_81(_a7.pid,_a7.mid,_a7.pack,_a7.url):_9e[mid];}}_a6=_93(mid,_a1);if(_a6){url=_a6[1]+mid.substring(_a6[3]);}else{if(pid){url=_a3.location+"/"+_a4;}else{if(has("config-tlmSiblingOfDojo")){url="../"+mid;}else{url=mid;}}}if(!(/(^\/)|(\:)/.test(url))){url=_9f+url;}url+=".js";return _81(pid,mid,_a3,_95(url));},_5b=function(mid,_ae){return _9b(mid,_ae,_4f,_2f,req.baseUrl,_50,_4e);},_af=function(_b0,_b1,_b2){return _b0.normalize?_b0.normalize(_b1,function(mid){return _b3(mid,_b2);}):_b3(_b1,_b2);},_b4=0,_31=function(mid,_b5,_b6){var _b7,_b8,_b9,_ba;_b7=mid.match(/^(.+?)\!(.*)$/);if(_b7){_b8=_31(_b7[1],_b5,_b6);if(1&&_25==_26&&!_b8.executed){_32(_b8);if(_b8.injected===_21&&!_b8.executed){_37(function(){_36(_b8);});}if(_b8.executed){_bb(_b8);}else{_30.unshift(_b8);}}if(_b8.executed===_24&&!_b8.load){_bb(_b8);}if(_b8.load){_b9=_af(_b8,_b7[2],_b5);mid=(_b8.mid+"!"+(_b8.dynamic?++_b4+"!":"")+_b9);}else{_b9=_b7[2];mid=_b8.mid+"!"+(++_b4)+"!waitingForPlugin";}_ba={plugin:_b8,mid:mid,req:_5c(_b5),prid:_b9};}else{_ba=_5b(mid,_b5);}return _2f[_ba.mid]||(!_b6&&(_2f[_ba.mid]=_ba));},_b3=req.toAbsMid=function(mid,_bc){return _5b(mid,_bc).mid;},_5a=req.toUrl=function(_bd,_be){var _bf=_5b(_bd+"/x",_be),url=_bf.url;return _3f(_bf.pid===0?_bd:url.substring(0,url.length-5));},_c0={injected:_21,executed:_24,def:_22,result:_22},_c1=function(mid){return _2f[mid]=_c({mid:mid},_c0);},_c2=_c1("require"),_c3=_c1("exports"),_c4=_c1("module"),_c5=function(_c6,_c7){req.trace("loader-run-factory",[_c6.mid]);var _c8=_c6.def,_c9;1&&_27.unshift(_c6);if(has("config-dojo-loader-catches")){try{_c9=_6(_c8)?_c8.apply(null,_c7):_c8;}catch(e){_34(_44,_c6.result=_f("factoryThrew",[_c6,e]));}}else{_c9=_6(_c8)?_c8.apply(null,_c7):_c8;}_c6.result=_c9===undefined&&_c6.cjs?_c6.cjs.exports:_c9;1&&_27.shift(_c6);},_ca={},_cb=0,_bb=function(_cc){var _cd=_cc.result;_cc.dynamic=_cd.dynamic;_cc.normalize=_cd.normalize;_cc.load=_cd.load;return _cc;},_ce=function(_cf){var map={};_9(_cf.loadQ,function(_d0){var _d1=_af(_cf,_d0.prid,_d0.req.module),mid=_cf.dynamic?_d0.mid.replace(/waitingForPlugin$/,_d1):(_cf.mid+"!"+_d1),_d2=_c(_c({},_d0),{mid:mid,prid:_d1,injected:0});if(!_2f[mid]){_e4(_2f[mid]=_d2);}map[_d0.mid]=_2f[mid];_33(_d0);delete _2f[_d0.mid];});_cf.loadQ=0;var _d3=function(_d4){for(var _d5,_d6=_d4.deps||[],i=0;i<_d6.length;i++){_d5=map[_d6[i].mid];if(_d5){_d6[i]=_d5;}}};for(var p in _2f){_d3(_2f[p]);}_9(_30,_d3);},_35=function(_d7){req.trace("loader-finish-exec",[_d7.mid]);_d7.executed=_24;_d7.defOrder=_cb++;1&&_9(_d7.provides,function(cb){cb();});if(_d7.loadQ){_bb(_d7);_ce(_d7);}for(i=0;i<_30.length;){if(_30[i]===_d7){_30.splice(i,1);}else{i++;}}if(/^require\*/.test(_d7.mid)){delete _2f[_d7.mid];}},_d8=[],_36=function(_d9,_da){if(_d9.executed===_23){req.trace("loader-circular-dependency",[_d8.concat(_d9.mid).join("->")]);return (!_d9.def||_da)?_ca:(_d9.cjs&&_d9.cjs.exports);}if(!_d9.executed){if(!_d9.def){return _ca;}var mid=_d9.mid,_db=_d9.deps||[],arg,_dc,_dd=[],i=0;if(0){_d8.push(mid);req.trace("loader-exec-module",["exec",_d8.length,mid]);}_d9.executed=_23;while(i<_db.length){arg=_db[i++];_dc=((arg===_c2)?_5c(_d9):((arg===_c3)?_d9.cjs.exports:((arg===_c4)?_d9.cjs:_36(arg,_da))));if(_dc===_ca){_d9.executed=0;req.trace("loader-exec-module",["abort",mid]);0&&_d8.pop();return _ca;}_dd.push(_dc);}_c5(_d9,_dd);_35(_d9);0&&_d8.pop();}return _d9.result;},_83=0,_37=function(_de){try{_83++;_de();}finally{_83--;}if(_92()){_34("idle",[]);}},_7a=function(){if(_83){return;}_37(function(){_29();for(var _df,_e0,i=0;i<_30.length;){_df=_cb;_e0=_30[i];_36(_e0);if(_df!=_cb){_29();i=0;}else{i++;}}});};if(0){req.undef=function(_e1,_e2){var _e3=_31(_e1,_e2);_33(_e3);delete _2f[_e3.mid];};}if(1){if(has("dojo-loader-eval-hint-url")===undefined){has.add("dojo-loader-eval-hint-url",1);}var _3f=function(url){url+="";return url+(_51?((/\?/.test(url)?"&":"?")+_51):"");},_e4=function(_e5){var _e6=_e5.plugin;if(_e6.executed===_24&&!_e6.load){_bb(_e6);}var _e7=function(def){_e5.result=def;_33(_e5);_35(_e5);_7a();};if(_e6.load){_e6.load(_e5.prid,_e5.req,_e7);}else{if(_e6.loadQ){_e6.loadQ.push(_e5);}else{_e6.loadQ=[_e5];_30.unshift(_e6);_32(_e6);}}},_89=0,_7b=0,_e8=0,_8a=function(_e9,_ea){if(has("config-stripStrict")){_e9=_e9.replace(/"use strict"/g,"");}_e8=1;if(has("config-dojo-loader-catches")){try{if(_e9===_89){_89.call(null);}else{req.eval(_e9,has("dojo-loader-eval-hint-url")?_ea.url:_ea.mid);}}catch(e){_34(_44,_f("evalModuleThrew",_ea));}}else{if(_e9===_89){_89.call(null);}else{req.eval(_e9,has("dojo-loader-eval-hint-url")?_ea.url:_ea.mid);}}_e8=0;},_32=function(_eb){var mid=_eb.mid,url=_eb.url;if(_eb.executed||_eb.injected||_8c[mid]||(_eb.url&&((_eb.pack&&_8c[_eb.url]===_eb.pack)||_8c[_eb.url]==1))){return;}_8d(_eb);if(0){var _ec=0;if(_eb.plugin&&_eb.plugin.isCombo){req.combo.add(_eb.plugin.mid,_eb.prid,0,req);_ec=1;}else{if(!_eb.plugin){_ec=req.combo.add(0,_eb.mid,_eb.url,req);}}if(_ec){_72=1;return;}}if(_eb.plugin){_e4(_eb);return;}var _ed=function(){_79(_eb);if(_eb.injected!==_21){_33(_eb);_c(_eb,_c0);req.trace("loader-define-nonmodule",[_eb.url]);}if(1&&_25){!_27.length&&_7a();}else{_7a();}};_89=_52[mid]||_52[_53+_eb.url];if(_89){req.trace("loader-inject",["cache",_eb.mid,url]);_8a(_89,_eb);_ed();return;}if(1&&_25){if(_eb.isXd){_25==_26&&(_25=xd);}else{if(_eb.isAmd&&_25!=_26){}else{var _ee=function(_ef){if(_25==_26){_27.unshift(_eb);_8a(_ef,_eb);_27.shift();_79(_eb);if(!_eb.cjs){_33(_eb);_35(_eb);}if(_eb.finish){var _f0=mid+"*finish",_f1=_eb.finish;delete _eb.finish;def(_f0,["dojo",("dojo/require!"+_f1.join(",")).replace(/\./g,"/")],function(_f2){_9(_f1,function(mid){_f2.require(mid);});});_30.unshift(_31(_f0));}_ed();}else{_ef=_2a(_eb,_ef);if(_ef){_8a(_ef,_eb);_ed();}else{_7b=_eb;req.injectUrl(_3f(url),_ed,_eb);_7b=0;}}};req.trace("loader-inject",["xhr",_eb.mid,url,_25!=_26]);if(has("config-dojo-loader-catches")){try{req.getText(url,_25!=_26,_ee);}catch(e){_34(_44,_f("xhrInjectFailed",[_eb,e]));}}else{req.getText(url,_25!=_26,_ee);}return;}}}req.trace("loader-inject",["script",_eb.mid,url]);_7b=_eb;req.injectUrl(_3f(url),_ed,_eb);_7b=0;},_f3=function(_f4,_f5,def){req.trace("loader-define-module",[_f4.mid,_f5]);if(0&&_f4.plugin&&_f4.plugin.isCombo){_f4.result=_6(def)?def():def;_33(_f4);_35(_f4);return _f4;}var mid=_f4.mid;if(_f4.injected===_21){_34(_44,_f("multipleDefine",_f4));return _f4;}_c(_f4,{deps:_f5,def:def,cjs:{id:_f4.mid,uri:_f4.url,exports:(_f4.result={}),setExports:function(_f6){_f4.cjs.exports=_f6;},config:function(){return _f4.config;}}});for(var i=0;i<_f5.length;i++){_f5[i]=_31(_f5[i],_f4);}if(1&&_25&&!_8c[mid]){_75(_f4);_30.push(_f4);_7a();}_33(_f4);if(!_6(def)&&!_f5.length){_f4.result=def;_35(_f4);}return _f4;},_79=function(_f7,_f8){var _f9=[],_fa,_fb;while(_8b.length){_fb=_8b.shift();_f8&&(_fb[0]=_f8.shift());_fa=(_fb[0]&&_31(_fb[0]))||_f7;_f9.push([_fa,_fb[1],_fb[2]]);}_56(_f7);_9(_f9,function(_fc){_75(_f3.apply(null,_fc));});};}var _fd=0,_91=_3,_8f=_3;if(1){_91=function(){_fd&&clearTimeout(_fd);_fd=0;},_8f=function(){_91();if(req.waitms){_fd=window.setTimeout(function(){_91();_34(_44,_f("timeout",_8c));},req.waitms);}};}if(1){has.add("ie-event-behavior",!!doc.attachEvent&&(typeof opera==="undefined"||opera.toString()!="[object Opera]"));}if(1&&(1||1)){var _fe=function(_ff,_100,_101,_102){if(!has("ie-event-behavior")){_ff.addEventListener(_100,_102,false);return function(){_ff.removeEventListener(_100,_102,false);};}else{_ff.attachEvent(_101,_102);return function(){_ff.detachEvent(_101,_102);};}},_103=_fe(window,"load","onload",function(){req.pageLoaded=1;doc.readyState!="complete"&&(doc.readyState="complete");_103();});if(1){var _104=doc.getElementsByTagName("script")[0],_105=_104.parentNode;req.injectUrl=function(url,_106,_107){var node=_107.node=doc.createElement("script"),_108=function(e){e=e||window.event;var node=e.target||e.srcElement;if(e.type==="load"||/complete|loaded/.test(node.readyState)){_109();_10a();_106&&_106();}},_109=_fe(node,"load","onreadystatechange",_108),_10a=_fe(node,"error","onerror",function(e){_109();_10a();_34(_44,_f("scriptError",[url,e]));});node.type="text/javascript";node.charset="utf-8";node.src=url;_105.insertBefore(node,_104);return node;};}}if(1){req.log=function(){try{for(var i=0;i<arguments.length;i++){}}catch(e){}};}else{req.log=_3;}if(0){var _10b=req.trace=function(_10c,args){if(_10b.on&&_10b.group[_10c]){_34("trace",[_10c,args]);for(var arg,dump=[],text="trace:"+_10c+(args.length?(":"+args[0]):""),i=1;i<args.length;){arg=args[i++];if(_7(arg)){text+=", "+arg;}else{dump.push(arg);}}req.log(text);dump.length&&dump.push(".");req.log.apply(req,dump);}};_c(_10b,{on:1,group:{},set:function(_10d,_10e){if(_7(_10d)){_10b.group[_10d]=_10e;}else{_c(_10b.group,_10d);}}});_10b.set(_c(_c(_c({},_2.trace),_1.trace),_55.trace));on("config",function(_10f){_10f.trace&&_10b.set(_10f.trace);});}else{req.trace=_3;}var def=function(mid,_110,_111){var _112=arguments.length,_113=["require","exports","module"],args=[0,mid,_110];if(_112==1){args=[0,(_6(mid)?_113:[]),mid];}else{if(_112==2&&_7(mid)){args=[mid,(_6(_110)?_113:[]),_110];}else{if(_112==3){args=[mid,_110,_111];}}}if(0&&args[1]===_113){args[2].toString().replace(/(\/\*([\s\S]*?)\*\/|\/\/(.*)$)/mg,"").replace(/require\(["']([\w\!\-_\.\/]+)["']\)/g,function(_114,dep){args[1].push(dep);});}req.trace("loader-define",args.slice(0,2));var _115=args[0]&&_31(args[0]),_116;if(_115&&!_8c[_115.mid]){_75(_f3(_115,args[1],args[2]));}else{if(!has("ie-event-behavior")||!1||_e8){_8b.push(args);}else{_115=_115||_7b;if(!_115){for(mid in _8c){_116=_2f[mid];if(_116&&_116.node&&_116.node.readyState==="interactive"){_115=_116;break;}}if(0&&!_115){for(var i=0;i<_73.length;i++){_115=_73[i];if(_115.node&&_115.node.readyState==="interactive"){break;}_115=0;}}}if(0&&_8(_115)){_75(_f3(_31(_115.shift()),args[1],args[2]));if(!_115.length){_73.splice(i,1);}}else{if(_115){_56(_115);_75(_f3(_115,args[1],args[2]));}else{_34(_44,_f("ieDefineFailed",args[0]));}}_7a();}}};def.amd={vendor:"dojotoolkit.org"};if(0){req.def=def;}_c(_c(req,_2.loaderPatch),_1.loaderPatch);on(_44,function(arg){try{console.error(arg);if(arg instanceof Error){for(var p in arg){}}}catch(e){}});_c(req,{uid:uid,cache:_52,packs:_4f});if(0){_c(req,{paths:_4d,aliases:_4c,modules:_2f,legacyMode:_25,execQ:_30,defQ:_8b,waiting:_8c,packs:_4f,mapProgs:_50,pathsMapProg:_4e,listenerQueues:_43,computeMapProg:_5e,runMapProg:_93,compactPath:_95,getModuleInfo:_9b});}if(_17.define){if(1){_34(_44,_f("defineAlreadyDefined",0));}return;}else{_17.define=def;_17.require=req;if(0){require=req;}}if(0&&req.combo&&req.combo.plugins){var _117=req.combo.plugins,_118;for(_118 in _117){_c(_c(_31(_118),_117[_118]),{isCombo:1,executed:"executed",load:1});}}if(1){var _119=_55.deps||_1.deps||_2.deps,_11a=_55.callback||_1.callback||_2.callback;req.boot=(_119||_11a)?[_119||[],_11a]:0;}if(!1){!req.async&&req(["dojo"]);req.boot&&req.apply(null,req.boot);}})(this.dojoConfig||this.djConfig||this.require||{},{async:0,hasCache:{"config-selectorEngine":"acme","config-tlmSiblingOfDojo":1,"dojo-built":1,"dojo-loader":1,dom:1,"host-browser":1},packages:[{location:"../dijit",name:"dijit"},{location:"../dojox",name:"dojox"},{location:".",name:"dojo"}]});require({cache:{"dojo/_base/fx":function(){define(["./kernel","./config","./lang","../Evented","./Color","./connect","./sniff","../dom","../dom-style"],function(dojo,_11b,lang,_11c,_11d,_11e,has,dom,_11f){var _120=lang.mixin;var _121={};var _122=_121._Line=function(_123,end){this.start=_123;this.end=end;};_122.prototype.getValue=function(n){return ((this.end-this.start)*n)+this.start;};var _124=_121.Animation=function(args){_120(this,args);if(lang.isArray(this.curve)){this.curve=new _122(this.curve[0],this.curve[1]);}};_124.prototype=new _11c();lang.extend(_124,{duration:350,repeat:0,rate:20,_percent:0,_startRepeatCount:0,_getStep:function(){var _125=this._percent,_126=this.easing;return _126?_126(_125):_125;},_fire:function(evt,args){var a=args||[];if(this[evt]){if(_11b.debugAtAllCosts){this[evt].apply(this,a);}else{try{this[evt].apply(this,a);}catch(e){console.error("exception in animation handler for:",evt);console.error(e);}}}return this;},play:function(_127,_128){var _129=this;if(_129._delayTimer){_129._clearTimer();}if(_128){_129._stopTimer();_129._active=_129._paused=false;_129._percent=0;}else{if(_129._active&&!_129._paused){return _129;}}_129._fire("beforeBegin",[_129.node]);var de=_127||_129.delay,_12a=lang.hitch(_129,"_play",_128);if(de>0){_129._delayTimer=setTimeout(_12a,de);return _129;}_12a();return _129;},_play:function(_12b){var _12c=this;if(_12c._delayTimer){_12c._clearTimer();}_12c._startTime=new Date().valueOf();if(_12c._paused){_12c._startTime-=_12c.duration*_12c._percent;}_12c._active=true;_12c._paused=false;var _12d=_12c.curve.getValue(_12c._getStep());if(!_12c._percent){if(!_12c._startRepeatCount){_12c._startRepeatCount=_12c.repeat;}_12c._fire("onBegin",[_12d]);}_12c._fire("onPlay",[_12d]);_12c._cycle();return _12c;},pause:function(){var _12e=this;if(_12e._delayTimer){_12e._clearTimer();}_12e._stopTimer();if(!_12e._active){return _12e;}_12e._paused=true;_12e._fire("onPause",[_12e.curve.getValue(_12e._getStep())]);return _12e;},gotoPercent:function(_12f,_130){var _131=this;_131._stopTimer();_131._active=_131._paused=true;_131._percent=_12f;if(_130){_131.play();}return _131;},stop:function(_132){var _133=this;if(_133._delayTimer){_133._clearTimer();}if(!_133._timer){return _133;}_133._stopTimer();if(_132){_133._percent=1;}_133._fire("onStop",[_133.curve.getValue(_133._getStep())]);_133._active=_133._paused=false;return _133;},status:function(){if(this._active){return this._paused?"paused":"playing";}return "stopped";},_cycle:function(){var _134=this;if(_134._active){var curr=new Date().valueOf();var step=_134.duration===0?1:(curr-_134._startTime)/(_134.duration);if(step>=1){step=1;}_134._percent=step;if(_134.easing){step=_134.easing(step);}_134._fire("onAnimate",[_134.curve.getValue(step)]);if(_134._percent<1){_134._startTimer();}else{_134._active=false;if(_134.repeat>0){_134.repeat--;_134.play(null,true);}else{if(_134.repeat==-1){_134.play(null,true);}else{if(_134._startRepeatCount){_134.repeat=_134._startRepeatCount;_134._startRepeatCount=0;}}}_134._percent=0;_134._fire("onEnd",[_134.node]);!_134.repeat&&_134._stopTimer();}}return _134;},_clearTimer:function(){clearTimeout(this._delayTimer);delete this._delayTimer;}});var ctr=0,_135=null,_136={run:function(){}};lang.extend(_124,{_startTimer:function(){if(!this._timer){this._timer=_11e.connect(_136,"run",this,"_cycle");ctr++;}if(!_135){_135=setInterval(lang.hitch(_136,"run"),this.rate);}},_stopTimer:function(){if(this._timer){_11e.disconnect(this._timer);this._timer=null;ctr--;}if(ctr<=0){clearInterval(_135);_135=null;ctr=0;}}});var _137=has("ie")?function(node){var ns=node.style;if(!ns.width.length&&_11f.get(node,"width")=="auto"){ns.width="auto";}}:function(){};_121._fade=function(args){args.node=dom.byId(args.node);var _138=_120({properties:{}},args),_139=(_138.properties.opacity={});_139.start=!("start" in _138)?function(){return +_11f.get(_138.node,"opacity")||0;}:_138.start;_139.end=_138.end;var anim=_121.animateProperty(_138);_11e.connect(anim,"beforeBegin",lang.partial(_137,_138.node));return anim;};_121.fadeIn=function(args){return _121._fade(_120({end:1},args));};_121.fadeOut=function(args){return _121._fade(_120({end:0},args));};_121._defaultEasing=function(n){return 0.5+((Math.sin((n+1.5)*Math.PI))/2);};var _13a=function(_13b){this._properties=_13b;for(var p in _13b){var prop=_13b[p];if(prop.start instanceof _11d){prop.tempColor=new _11d();}}};_13a.prototype.getValue=function(r){var ret={};for(var p in this._properties){var prop=this._properties[p],_13c=prop.start;if(_13c instanceof _11d){ret[p]=_11d.blendColors(_13c,prop.end,r,prop.tempColor).toCss();}else{if(!lang.isArray(_13c)){ret[p]=((prop.end-_13c)*r)+_13c+(p!="opacity"?prop.units||"px":0);}}}return ret;};_121.animateProperty=function(args){var n=args.node=dom.byId(args.node);if(!args.easing){args.easing=dojo._defaultEasing;}var anim=new _124(args);_11e.connect(anim,"beforeBegin",anim,function(){var pm={};for(var p in this.properties){if(p=="width"||p=="height"){this.node.display="block";}var prop=this.properties[p];if(lang.isFunction(prop)){prop=prop(n);}prop=pm[p]=_120({},(lang.isObject(prop)?prop:{end:prop}));if(lang.isFunction(prop.start)){prop.start=prop.start(n);}if(lang.isFunction(prop.end)){prop.end=prop.end(n);}var _13d=(p.toLowerCase().indexOf("color")>=0);function _13e(node,p){var v={height:node.offsetHeight,width:node.offsetWidth}[p];if(v!==undefined){return v;}v=_11f.get(node,p);return (p=="opacity")?+v:(_13d?v:parseFloat(v));};if(!("end" in prop)){prop.end=_13e(n,p);}else{if(!("start" in prop)){prop.start=_13e(n,p);}}if(_13d){prop.start=new _11d(prop.start);prop.end=new _11d(prop.end);}else{prop.start=(p=="opacity")?+prop.start:parseFloat(prop.start);}}this.curve=new _13a(pm);});_11e.connect(anim,"onAnimate",lang.hitch(_11f,"set",anim.node));return anim;};_121.anim=function(node,_13f,_140,_141,_142,_143){return _121.animateProperty({node:node,duration:_140||_124.prototype.duration,properties:_13f,easing:_141,onEnd:_142}).play(_143||0);};if(1){_120(dojo,_121);dojo._Animation=_124;}return _121;});},"dojo/dom-form":function(){define(["./_base/lang","./dom","./io-query","./json"],function(lang,dom,ioq,json){function _144(obj,name,_145){if(_145===null){return;}var val=obj[name];if(typeof val=="string"){obj[name]=[val,_145];}else{if(lang.isArray(val)){val.push(_145);}else{obj[name]=_145;}}};var _146="file|submit|image|reset|button";var form={fieldToObject:function fieldToObject(_147){var ret=null;_147=dom.byId(_147);if(_147){var _148=_147.name,type=(_147.type||"").toLowerCase();if(_148&&type&&!_147.disabled){if(type=="radio"||type=="checkbox"){if(_147.checked){ret=_147.value;}}else{if(_147.multiple){ret=[];var _149=[_147.firstChild];while(_149.length){for(var node=_149.pop();node;node=node.nextSibling){if(node.nodeType==1&&node.tagName.toLowerCase()=="option"){if(node.selected){ret.push(node.value);}}else{if(node.nextSibling){_149.push(node.nextSibling);}if(node.firstChild){_149.push(node.firstChild);}break;}}}}else{ret=_147.value;}}}}return ret;},toObject:function formToObject(_14a){var ret={},_14b=dom.byId(_14a).elements;for(var i=0,l=_14b.length;i<l;++i){var item=_14b[i],_14c=item.name,type=(item.type||"").toLowerCase();if(_14c&&type&&_146.indexOf(type)<0&&!item.disabled){_144(ret,_14c,form.fieldToObject(item));if(type=="image"){ret[_14c+".x"]=ret[_14c+".y"]=ret[_14c].x=ret[_14c].y=0;}}}return ret;},toQuery:function formToQuery(_14d){return ioq.objectToQuery(form.toObject(_14d));},toJson:function formToJson(_14e,_14f){return json.stringify(form.toObject(_14e),null,_14f?4:0);}};return form;});},"dojo/i18n":function(){define(["./_base/kernel","require","./has","./_base/array","./_base/config","./_base/lang","./_base/xhr","./json","module"],function(dojo,_150,has,_151,_152,lang,xhr,json,_153){has.add("dojo-preload-i18n-Api",1);1||has.add("dojo-v1x-i18n-Api",1);var _154=dojo.i18n={},_155=/(^.*(^|\/)nls)(\/|$)([^\/]*)\/?([^\/]*)/,_156=function(root,_157,_158,_159){for(var _15a=[_158+_159],_15b=_157.split("-"),_15c="",i=0;i<_15b.length;i++){_15c+=(_15c?"-":"")+_15b[i];if(!root||root[_15c]){_15a.push(_158+_15c+"/"+_159);}}return _15a;},_15d={},_15e=function(_15f,_160,_161){_161=_161?_161.toLowerCase():dojo.locale;_15f=_15f.replace(/\./g,"/");_160=_160.replace(/\./g,"/");return (/root/i.test(_161))?(_15f+"/nls/"+_160):(_15f+"/nls/"+_161+"/"+_160);},_162=dojo.getL10nName=function(_163,_164,_165){return _163=_153.id+"!"+_15e(_163,_164,_165);},_166=function(_167,_168,_169,_16a,_16b,load){_167([_168],function(root){var _16c=lang.clone(root.root),_16d=_156(!root._v1x&&root,_16b,_169,_16a);_167(_16d,function(){for(var i=1;i<_16d.length;i++){_16c=lang.mixin(lang.clone(_16c),arguments[i]);}var _16e=_168+"/"+_16b;_15d[_16e]=_16c;load();});});},_16f=function(id,_170){return /^\./.test(id)?_170(id):id;},_171=function(_172){var list=_152.extraLocale||[];list=lang.isArray(list)?list:[list];list.push(_172);return list;},load=function(id,_173,load){if(has("dojo-preload-i18n-Api")){var _174=id.split("*"),_175=_174[1]=="preload";if(_175){if(!_15d[id]){_15d[id]=1;_176(_174[2],json.parse(_174[3]),1,_173);}load(1);}if(_175||_177(id,_173,load)){return;}}var _178=_155.exec(id),_179=_178[1]+"/",_17a=_178[5]||_178[4],_17b=_179+_17a,_17c=(_178[5]&&_178[4]),_17d=_17c||dojo.locale,_17e=_17b+"/"+_17d,_17f=_17c?[_17d]:_171(_17d),_180=_17f.length,_181=function(){if(!--_180){load(lang.delegate(_15d[_17e]));}};_151.forEach(_17f,function(_182){var _183=_17b+"/"+_182;if(has("dojo-preload-i18n-Api")){_184(_183);}if(!_15d[_183]){_166(_173,_17b,_179,_17a,_182,_181);}else{_181();}});};if(has("dojo-unit-tests")){var _185=_154.unitTests=[];}if(has("dojo-preload-i18n-Api")||1){var _186=_154.normalizeLocale=function(_187){var _188=_187?_187.toLowerCase():dojo.locale;return _188=="root"?"ROOT":_188;},isXd=function(mid,_189){return (1&&1)?_189.isXdUrl(_150.toUrl(mid+".js")):true;},_18a=0,_18b=[],_176=_154._preloadLocalizations=function(_18c,_18d,_18e,_18f){_18f=_18f||_150;function _190(mid,_191){if(isXd(mid,_18f)||_18e){_18f([mid],_191);}else{_19b([mid],_191,_18f);}};function _192(_193,func){var _194=_193.split("-");while(_194.length){if(func(_194.join("-"))){return;}_194.pop();}func("ROOT");};function _195(_196){_196=_186(_196);_192(_196,function(loc){if(_151.indexOf(_18d,loc)>=0){var mid=_18c.replace(/\./g,"/")+"_"+loc;_18a++;_190(mid,function(_197){for(var p in _197){_15d[_150.toAbsMid(p)+"/"+loc]=_197[p];}--_18a;while(!_18a&&_18b.length){load.apply(null,_18b.shift());}});return true;}return false;});};_195();_151.forEach(dojo.config.extraLocale,_195);},_177=function(id,_198,load){if(_18a){_18b.push([id,_198,load]);}return _18a;},_184=function(){};}if(1){var _199={},_19a=new Function("__bundle","__checkForLegacyModules","__mid","__amdValue","var define = function(mid, factory){define.called = 1; __amdValue.result = factory || mid;},"+"\t require = function(){define.called = 1;};"+"try{"+"define.called = 0;"+"eval(__bundle);"+"if(define.called==1)"+"return __amdValue;"+"if((__checkForLegacyModules = __checkForLegacyModules(__mid)))"+"return __checkForLegacyModules;"+"}catch(e){}"+"try{"+"return eval('('+__bundle+')');"+"}catch(e){"+"return e;"+"}"),_19b=function(deps,_19c,_19d){var _19e=[];_151.forEach(deps,function(mid){var url=_19d.toUrl(mid+".js");function load(text){var _19f=_19a(text,_184,mid,_199);if(_19f===_199){_19e.push(_15d[url]=_199.result);}else{if(_19f instanceof Error){console.error("failed to evaluate i18n bundle; url="+url,_19f);_19f={};}_19e.push(_15d[url]=(/nls\/[^\/]+\/[^\/]+$/.test(url)?_19f:{root:_19f,_v1x:1}));}};if(_15d[url]){_19e.push(_15d[url]);}else{var _1a0=_19d.syncLoadNls(mid);if(_1a0){_19e.push(_1a0);}else{if(!xhr){try{_19d.getText(url,true,load);}catch(e){_19e.push(_15d[url]={});}}else{xhr.get({url:url,sync:true,load:load,error:function(){_19e.push(_15d[url]={});}});}}}});_19c&&_19c.apply(null,_19e);};_184=function(_1a1){for(var _1a2,_1a3=_1a1.split("/"),_1a4=dojo.global[_1a3[0]],i=1;_1a4&&i<_1a3.length-1;_1a4=_1a4[_1a3[i++]]){}if(_1a4){_1a2=_1a4[_1a3[i]];if(!_1a2){_1a2=_1a4[_1a3[i].replace(/-/g,"_")];}if(_1a2){_15d[_1a1]=_1a2;}}return _1a2;};_154.getLocalization=function(_1a5,_1a6,_1a7){var _1a8,_1a9=_15e(_1a5,_1a6,_1a7);load(_1a9,(!isXd(_1a9,_150)?function(deps,_1aa){_19b(deps,_1aa,_150);}:_150),function(_1ab){_1a8=_1ab;});return _1a8;};if(has("dojo-unit-tests")){_185.push(function(doh){doh.register("tests.i18n.unit",function(t){var _1ac;_1ac=_19a("{prop:1}",_184,"nonsense",_199);t.is({prop:1},_1ac);t.is(undefined,_1ac[1]);_1ac=_19a("({prop:1})",_184,"nonsense",_199);t.is({prop:1},_1ac);t.is(undefined,_1ac[1]);_1ac=_19a("{'prop-x':1}",_184,"nonsense",_199);t.is({"prop-x":1},_1ac);t.is(undefined,_1ac[1]);_1ac=_19a("({'prop-x':1})",_184,"nonsense",_199);t.is({"prop-x":1},_1ac);t.is(undefined,_1ac[1]);_1ac=_19a("define({'prop-x':1})",_184,"nonsense",_199);t.is(_199,_1ac);t.is({"prop-x":1},_199.result);_1ac=_19a("define('some/module', {'prop-x':1})",_184,"nonsense",_199);t.is(_199,_1ac);t.is({"prop-x":1},_199.result);_1ac=_19a("this is total nonsense and should throw an error",_184,"nonsense",_199);t.is(_1ac instanceof Error,true);});});}}return lang.mixin(_154,{dynamic:true,normalize:_16f,load:load,cache:_15d});});},"dojo/promise/tracer":function(){define(["../_base/lang","./Promise","../Evented"],function(lang,_1ad,_1ae){"use strict";var _1af=new _1ae;var emit=_1af.emit;_1af.emit=null;function _1b0(args){setTimeout(function(){emit.apply(_1af,args);},0);};_1ad.prototype.trace=function(){var args=lang._toArray(arguments);this.then(function(_1b1){_1b0(["resolved",_1b1].concat(args));},function(_1b2){_1b0(["rejected",_1b2].concat(args));},function(_1b3){_1b0(["progress",_1b3].concat(args));});return this;};_1ad.prototype.traceRejected=function(){var args=lang._toArray(arguments);this.otherwise(function(_1b4){_1b0(["rejected",_1b4].concat(args));});return this;};return _1af;});},"dojo/errors/RequestError":function(){define(["./create"],function(_1b5){return _1b5("RequestError",function(_1b6,_1b7){this.response=_1b7;});});},"dojo/_base/html":function(){define("dojo/_base/html",["./kernel","../dom","../dom-style","../dom-attr","../dom-prop","../dom-class","../dom-construct","../dom-geometry"],function(dojo,dom,_1b8,attr,prop,cls,ctr,geom){dojo.byId=dom.byId;dojo.isDescendant=dom.isDescendant;dojo.setSelectable=dom.setSelectable;dojo.getAttr=attr.get;dojo.setAttr=attr.set;dojo.hasAttr=attr.has;dojo.removeAttr=attr.remove;dojo.getNodeProp=attr.getNodeProp;dojo.attr=function(node,name,_1b9){if(arguments.length==2){return attr[typeof name=="string"?"get":"set"](node,name);}return attr.set(node,name,_1b9);};dojo.hasClass=cls.contains;dojo.addClass=cls.add;dojo.removeClass=cls.remove;dojo.toggleClass=cls.toggle;dojo.replaceClass=cls.replace;dojo._toDom=dojo.toDom=ctr.toDom;dojo.place=ctr.place;dojo.create=ctr.create;dojo.empty=function(node){ctr.empty(node);};dojo._destroyElement=dojo.destroy=function(node){ctr.destroy(node);};dojo._getPadExtents=dojo.getPadExtents=geom.getPadExtents;dojo._getBorderExtents=dojo.getBorderExtents=geom.getBorderExtents;dojo._getPadBorderExtents=dojo.getPadBorderExtents=geom.getPadBorderExtents;dojo._getMarginExtents=dojo.getMarginExtents=geom.getMarginExtents;dojo._getMarginSize=dojo.getMarginSize=geom.getMarginSize;dojo._getMarginBox=dojo.getMarginBox=geom.getMarginBox;dojo.setMarginBox=geom.setMarginBox;dojo._getContentBox=dojo.getContentBox=geom.getContentBox;dojo.setContentSize=geom.setContentSize;dojo._isBodyLtr=dojo.isBodyLtr=geom.isBodyLtr;dojo._docScroll=dojo.docScroll=geom.docScroll;dojo._getIeDocumentElementOffset=dojo.getIeDocumentElementOffset=geom.getIeDocumentElementOffset;dojo._fixIeBiDiScrollLeft=dojo.fixIeBiDiScrollLeft=geom.fixIeBiDiScrollLeft;dojo.position=geom.position;dojo.marginBox=function marginBox(node,box){return box?geom.setMarginBox(node,box):geom.getMarginBox(node);};dojo.contentBox=function contentBox(node,box){return box?geom.setContentSize(node,box):geom.getContentBox(node);};dojo.coords=function(node,_1ba){dojo.deprecated("dojo.coords()","Use dojo.position() or dojo.marginBox().");node=dom.byId(node);var s=_1b8.getComputedStyle(node),mb=geom.getMarginBox(node,s);var abs=geom.position(node,_1ba);mb.x=abs.x;mb.y=abs.y;return mb;};dojo.getProp=prop.get;dojo.setProp=prop.set;dojo.prop=function(node,name,_1bb){if(arguments.length==2){return prop[typeof name=="string"?"get":"set"](node,name);}return prop.set(node,name,_1bb);};dojo.getStyle=_1b8.get;dojo.setStyle=_1b8.set;dojo.getComputedStyle=_1b8.getComputedStyle;dojo.__toPixelValue=dojo.toPixelValue=_1b8.toPixelValue;dojo.style=function(node,name,_1bc){switch(arguments.length){case 1:return _1b8.get(node);case 2:return _1b8[typeof name=="string"?"get":"set"](node,name);}return _1b8.set(node,name,_1bc);};return dojo;});},"dojo/_base/kernel":function(){define(["../has","./config","require","module"],function(has,_1bd,_1be,_1bf){var i,p,_1c0={},_1c1={},dojo={config:_1bd,global:this,dijit:_1c0,dojox:_1c1};var _1c2={dojo:["dojo",dojo],dijit:["dijit",_1c0],dojox:["dojox",_1c1]},_1c3=(_1be.map&&_1be.map[_1bf.id.match(/[^\/]+/)[0]]),item;for(p in _1c3){if(_1c2[p]){_1c2[p][0]=_1c3[p];}else{_1c2[p]=[_1c3[p],{}];}}for(p in _1c2){item=_1c2[p];item[1]._scopeName=item[0];if(!_1bd.noGlobals){this[item[0]]=item[1];}}dojo.scopeMap=_1c2;dojo.baseUrl=dojo.config.baseUrl=_1be.baseUrl;dojo.isAsync=!1||_1be.async;dojo.locale=_1bd.locale;var rev="$Rev: 29458 $".match(/\d+/);dojo.version={major:1,minor:8,patch:0,flag:"",revision:rev?+rev[0]:NaN,toString:function(){var v=dojo.version;return v.major+"."+v.minor+"."+v.patch+v.flag+" ("+v.revision+")";}};1||has.add("extend-dojo",1);(Function("d","d.eval = function(){return d.global.eval ? d.global.eval(arguments[0]) : eval(arguments[0]);}"))(dojo);if(0){dojo.exit=function(_1c4){quit(_1c4);};}else{dojo.exit=function(){};}1||has.add("dojo-guarantee-console",1);if(1){typeof console!="undefined"||(console={});var cn=["assert","count","debug","dir","dirxml","error","group","groupEnd","info","profile","profileEnd","time","timeEnd","trace","warn","log"];var tn;i=0;while((tn=cn[i++])){if(!console[tn]){(function(){var tcn=tn+"";console[tcn]=("log" in console)?function(){var a=Array.apply({},arguments);a.unshift(tcn+":");console["log"](a.join(" "));}:function(){};console[tcn]._fake=true;})();}}}has.add("dojo-debug-messages",!!_1bd.isDebug);dojo.deprecated=dojo.experimental=function(){};if(has("dojo-debug-messages")){dojo.deprecated=function(_1c5,_1c6,_1c7){var _1c8="DEPRECATED: "+_1c5;if(_1c6){_1c8+=" "+_1c6;}if(_1c7){_1c8+=" -- will be removed in version: "+_1c7;}console.warn(_1c8);};dojo.experimental=function(_1c9,_1ca){var _1cb="EXPERIMENTAL: "+_1c9+" -- APIs subject to change without notice.";if(_1ca){_1cb+=" "+_1ca;}console.warn(_1cb);};}1||has.add("dojo-modulePaths",1);if(1){if(_1bd.modulePaths){dojo.deprecated("dojo.modulePaths","use paths configuration");var _1cc={};for(p in _1bd.modulePaths){_1cc[p.replace(/\./g,"/")]=_1bd.modulePaths[p];}_1be({paths:_1cc});}}1||has.add("dojo-moduleUrl",1);if(1){dojo.moduleUrl=function(_1cd,url){dojo.deprecated("dojo.moduleUrl()","use require.toUrl","2.0");var _1ce=null;if(_1cd){_1ce=_1be.toUrl(_1cd.replace(/\./g,"/")+(url?("/"+url):"")+"/*.*").replace(/\/\*\.\*/,"")+(url?"":"/");}return _1ce;};}dojo._hasResource={};return dojo;});},"dojo/io-query":function(){define(["./_base/lang"],function(lang){var _1cf={};return {objectToQuery:function objectToQuery(map){var enc=encodeURIComponent,_1d0=[];for(var name in map){var _1d1=map[name];if(_1d1!=_1cf[name]){var _1d2=enc(name)+"=";if(lang.isArray(_1d1)){for(var i=0,l=_1d1.length;i<l;++i){_1d0.push(_1d2+enc(_1d1[i]));}}else{_1d0.push(_1d2+enc(_1d1));}}}return _1d0.join("&");},queryToObject:function queryToObject(str){var dec=decodeURIComponent,qp=str.split("&"),ret={},name,val;for(var i=0,l=qp.length,item;i<l;++i){item=qp[i];if(item.length){var s=item.indexOf("=");if(s<0){name=dec(item);val="";}else{name=dec(item.slice(0,s));val=dec(item.slice(s+1));}if(typeof ret[name]=="string"){ret[name]=[ret[name]];}if(lang.isArray(ret[name])){ret[name].push(val);}else{ret[name]=val;}}}return ret;}};});},"dojo/_base/Deferred":function(){define(["./kernel","../Deferred","../promise/Promise","../errors/CancelError","../has","./lang","../when"],function(dojo,_1d3,_1d4,_1d5,has,lang,when){var _1d6=function(){};var _1d7=Object.freeze||function(){};var _1d8=dojo.Deferred=function(_1d9){var _1da,_1db,_1dc,head,_1dd;var _1de=(this.promise=new _1d4());function _1df(_1e0){if(_1db){throw new Error("This deferred has already been resolved");}_1da=_1e0;_1db=true;_1e1();};function _1e1(){var _1e2;while(!_1e2&&_1dd){var _1e3=_1dd;_1dd=_1dd.next;if((_1e2=(_1e3.progress==_1d6))){_1db=false;}var func=(_1dc?_1e3.error:_1e3.resolved);if(has("config-useDeferredInstrumentation")){if(_1dc&&_1d3.instrumentRejected){_1d3.instrumentRejected(_1da,!!func);}}if(func){try{var _1e4=func(_1da);if(_1e4&&typeof _1e4.then==="function"){_1e4.then(lang.hitch(_1e3.deferred,"resolve"),lang.hitch(_1e3.deferred,"reject"),lang.hitch(_1e3.deferred,"progress"));continue;}var _1e5=_1e2&&_1e4===undefined;if(_1e2&&!_1e5){_1dc=_1e4 instanceof Error;}_1e3.deferred[_1e5&&_1dc?"reject":"resolve"](_1e5?_1da:_1e4);}catch(e){_1e3.deferred.reject(e);}}else{if(_1dc){_1e3.deferred.reject(_1da);}else{_1e3.deferred.resolve(_1da);}}}};this.resolve=this.callback=function(_1e6){this.fired=0;this.results=[_1e6,null];_1df(_1e6);};this.reject=this.errback=function(_1e7){_1dc=true;this.fired=1;if(has("config-useDeferredInstrumentation")){if(_1d3.instrumentRejected){_1d3.instrumentRejected(_1e7,!!_1dd);}}_1df(_1e7);this.results=[null,_1e7];};this.progress=function(_1e8){var _1e9=_1dd;while(_1e9){var _1ea=_1e9.progress;_1ea&&_1ea(_1e8);_1e9=_1e9.next;}};this.addCallbacks=function(_1eb,_1ec){this.then(_1eb,_1ec,_1d6);return this;};_1de.then=this.then=function(_1ed,_1ee,_1ef){var _1f0=_1ef==_1d6?this:new _1d8(_1de.cancel);var _1f1={resolved:_1ed,error:_1ee,progress:_1ef,deferred:_1f0};if(_1dd){head=head.next=_1f1;}else{_1dd=head=_1f1;}if(_1db){_1e1();}return _1f0.promise;};var _1f2=this;_1de.cancel=this.cancel=function(){if(!_1db){var _1f3=_1d9&&_1d9(_1f2);if(!_1db){if(!(_1f3 instanceof Error)){_1f3=new _1d5(_1f3);}_1f3.log=false;_1f2.reject(_1f3);}}};_1d7(_1de);};lang.extend(_1d8,{addCallback:function(_1f4){return this.addCallbacks(lang.hitch.apply(dojo,arguments));},addErrback:function(_1f5){return this.addCallbacks(null,lang.hitch.apply(dojo,arguments));},addBoth:function(_1f6){var _1f7=lang.hitch.apply(dojo,arguments);return this.addCallbacks(_1f7,_1f7);},fired:-1});_1d8.when=dojo.when=when;return _1d8;});},"dojo/NodeList-dom":function(){define(["./_base/kernel","./query","./_base/array","./_base/lang","./dom-class","./dom-construct","./dom-geometry","./dom-attr","./dom-style"],function(dojo,_1f8,_1f9,lang,_1fa,_1fb,_1fc,_1fd,_1fe){var _1ff=function(a){return a.length==1&&(typeof a[0]=="string");};var _200=function(node){var p=node.parentNode;if(p){p.removeChild(node);}};var _201=_1f8.NodeList,awc=_201._adaptWithCondition,aafe=_201._adaptAsForEach,aam=_201._adaptAsMap;function _202(_203){return function(node,name,_204){if(arguments.length==2){return _203[typeof name=="string"?"get":"set"](node,name);}return _203.set(node,name,_204);};};lang.extend(_201,{_normalize:function(_205,_206){var _207=_205.parse===true;if(typeof _205.template=="string"){var _208=_205.templateFunc||(dojo.string&&dojo.string.substitute);_205=_208?_208(_205.template,_205):_205;}var type=(typeof _205);if(type=="string"||type=="number"){_205=_1fb.toDom(_205,(_206&&_206.ownerDocument));if(_205.nodeType==11){_205=lang._toArray(_205.childNodes);}else{_205=[_205];}}else{if(!lang.isArrayLike(_205)){_205=[_205];}else{if(!lang.isArray(_205)){_205=lang._toArray(_205);}}}if(_207){_205._runParse=true;}return _205;},_cloneNode:function(node){return node.cloneNode(true);},_place:function(ary,_209,_20a,_20b){if(_209.nodeType!=1&&_20a=="only"){return;}var _20c=_209,_20d;var _20e=ary.length;for(var i=_20e-1;i>=0;i--){var node=(_20b?this._cloneNode(ary[i]):ary[i]);if(ary._runParse&&dojo.parser&&dojo.parser.parse){if(!_20d){_20d=_20c.ownerDocument.createElement("div");}_20d.appendChild(node);dojo.parser.parse(_20d);node=_20d.firstChild;while(_20d.firstChild){_20d.removeChild(_20d.firstChild);}}if(i==_20e-1){_1fb.place(node,_20c,_20a);}else{_20c.parentNode.insertBefore(node,_20c);}_20c=node;}},position:aam(_1fc.position),attr:awc(_202(_1fd),_1ff),style:awc(_202(_1fe),_1ff),addClass:aafe(_1fa.add),removeClass:aafe(_1fa.remove),toggleClass:aafe(_1fa.toggle),replaceClass:aafe(_1fa.replace),empty:aafe(_1fb.empty),removeAttr:aafe(_1fd.remove),marginBox:aam(_1fc.getMarginBox),place:function(_20f,_210){var item=_1f8(_20f)[0];return this.forEach(function(node){_1fb.place(node,item,_210);});},orphan:function(_211){return (_211?_1f8._filterResult(this,_211):this).forEach(_200);},adopt:function(_212,_213){return _1f8(_212).place(this[0],_213)._stash(this);},query:function(_214){if(!_214){return this;}var ret=new _201;this.map(function(node){_1f8(_214,node).forEach(function(_215){if(_215!==undefined){ret.push(_215);}});});return ret._stash(this);},filter:function(_216){var a=arguments,_217=this,_218=0;if(typeof _216=="string"){_217=_1f8._filterResult(this,a[0]);if(a.length==1){return _217._stash(this);}_218=1;}return this._wrap(_1f9.filter(_217,a[_218],a[_218+1]),this);},addContent:function(_219,_21a){_219=this._normalize(_219,this[0]);for(var i=0,node;(node=this[i]);i++){this._place(_219,node,_21a,i>0);}return this;}});return _201;});},"dojo/query":function(){define(["./_base/kernel","./has","./dom","./on","./_base/array","./_base/lang","./selector/_loader","./selector/_loader!default"],function(dojo,has,dom,on,_21b,lang,_21c,_21d){"use strict";has.add("array-extensible",function(){return lang.delegate([],{length:1}).length==1&&!has("bug-for-in-skips-shadowed");});var ap=Array.prototype,aps=ap.slice,apc=ap.concat,_21e=_21b.forEach;var tnl=function(a,_21f,_220){var _221=new (_220||this._NodeListCtor||nl)(a);return _21f?_221._stash(_21f):_221;};var _222=function(f,a,o){a=[0].concat(aps.call(a,0));o=o||dojo.global;return function(node){a[0]=node;return f.apply(o,a);};};var _223=function(f,o){return function(){this.forEach(_222(f,arguments,o));return this;};};var _224=function(f,o){return function(){return this.map(_222(f,arguments,o));};};var _225=function(f,o){return function(){return this.filter(_222(f,arguments,o));};};var _226=function(f,g,o){return function(){var a=arguments,body=_222(f,a,o);if(g.call(o||dojo.global,a)){return this.map(body);}this.forEach(body);return this;};};var _227=function(_228){var _229=this instanceof nl&&has("array-extensible");if(typeof _228=="number"){_228=Array(_228);}var _22a=(_228&&"length" in _228)?_228:arguments;if(_229||!_22a.sort){var _22b=_229?this:[],l=_22b.length=_22a.length;for(var i=0;i<l;i++){_22b[i]=_22a[i];}if(_229){return _22b;}_22a=_22b;}lang._mixin(_22a,nlp);_22a._NodeListCtor=function(_22c){return nl(_22c);};return _22a;};var nl=_227,nlp=nl.prototype=has("array-extensible")?[]:{};nl._wrap=nlp._wrap=tnl;nl._adaptAsMap=_224;nl._adaptAsForEach=_223;nl._adaptAsFilter=_225;nl._adaptWithCondition=_226;_21e(["slice","splice"],function(name){var f=ap[name];nlp[name]=function(){return this._wrap(f.apply(this,arguments),name=="slice"?this:null);};});_21e(["indexOf","lastIndexOf","every","some"],function(name){var f=_21b[name];nlp[name]=function(){return f.apply(dojo,[this].concat(aps.call(arguments,0)));};});lang.extend(_227,{constructor:nl,_NodeListCtor:nl,toString:function(){return this.join(",");},_stash:function(_22d){this._parent=_22d;return this;},on:function(_22e,_22f){var _230=this.map(function(node){return on(node,_22e,_22f);});_230.remove=function(){for(var i=0;i<_230.length;i++){_230[i].remove();}};return _230;},end:function(){if(this._parent){return this._parent;}else{return new this._NodeListCtor(0);}},concat:function(item){var t=aps.call(this,0),m=_21b.map(arguments,function(a){return aps.call(a,0);});return this._wrap(apc.apply(t,m),this);},map:function(func,obj){return this._wrap(_21b.map(this,func,obj),this);},forEach:function(_231,_232){_21e(this,_231,_232);return this;},filter:function(_233){var a=arguments,_234=this,_235=0;if(typeof _233=="string"){_234=_236._filterResult(this,a[0]);if(a.length==1){return _234._stash(this);}_235=1;}return this._wrap(_21b.filter(_234,a[_235],a[_235+1]),this);},instantiate:function(_237,_238){var c=lang.isFunction(_237)?_237:lang.getObject(_237);_238=_238||{};return this.forEach(function(node){new c(_238,node);});},at:function(){var t=new this._NodeListCtor(0);_21e(arguments,function(i){if(i<0){i=this.length+i;}if(this[i]){t.push(this[i]);}},this);return t._stash(this);}});function _239(_23a,_23b){var _23c=function(_23d,root){if(typeof root=="string"){root=dom.byId(root);if(!root){return new _23b([]);}}var _23e=typeof _23d=="string"?_23a(_23d,root):_23d?_23d.orphan?_23d:[_23d]:[];if(_23e.orphan){return _23e;}return new _23b(_23e);};_23c.matches=_23a.match||function(node,_23f,root){return _23c.filter([node],_23f,root).length>0;};_23c.filter=_23a.filter||function(_240,_241,root){return _23c(_241,root).filter(function(node){return _21b.indexOf(_240,node)>-1;});};if(typeof _23a!="function"){var _242=_23a.search;_23a=function(_243,root){return _242(root||document,_243);};}return _23c;};var _236=_239(_21d,_227);dojo.query=_239(_21d,function(_244){return _227(_244);});_236.load=function(id,_245,_246){_21c.load(id,_245,function(_247){_246(_239(_247,_227));});};dojo._filterQueryResult=_236._filterResult=function(_248,_249,root){return new _227(_236.filter(_248,_249,root));};dojo.NodeList=_236.NodeList=_227;return _236;});},"dojo/has":function(){define(["require","module"],function(_24a,_24b){var has=_24a.has||function(){};if(!1){var _24c=typeof window!="undefined"&&typeof location!="undefined"&&typeof document!="undefined"&&window.location==location&&window.document==document,_24d=this,doc=_24c&&document,_24e=doc&&doc.createElement("DiV"),_24f=(_24b.config&&_24b.config())||{};has=function(name){return typeof _24f[name]=="function"?(_24f[name]=_24f[name](_24d,doc,_24e)):_24f[name];};has.cache=_24f;has.add=function(name,test,now,_250){(typeof _24f[name]=="undefined"||_250)&&(_24f[name]=test);return now&&has(name);};1||has.add("host-browser",_24c);1||has.add("dom",_24c);1||has.add("dojo-dom-ready-api",1);1||has.add("dojo-sniff",1);}if(1){has.add("dom-addeventlistener",!!document.addEventListener);has.add("touch","ontouchstart" in document);has.add("device-width",screen.availWidth||innerWidth);var form=document.createElement("form");has.add("dom-attributes-explicit",form.attributes.length==0);has.add("dom-attributes-specified-flag",form.attributes.length>0&&form.attributes.length<40);}has.clearElement=function(_251){_251.innerHTML="";return _251;};has.normalize=function(id,_252){var _253=id.match(/[\?:]|[^:\?]*/g),i=0,get=function(skip){var term=_253[i++];if(term==":"){return 0;}else{if(_253[i++]=="?"){if(!skip&&has(term)){return get();}else{get(true);return get(skip);}}return term||0;}};id=get();return id&&_252(id);};has.load=function(id,_254,_255){if(id){_254([id],_255);}else{_255();}};return has;});},"dojo/_base/loader":function(){define(["./kernel","../has","require","module","./json","./lang","./array"],function(dojo,has,_256,_257,json,lang,_258){if(!1){console.error("cannot load the Dojo v1.x loader with a foreign loader");return 0;}1||has.add("dojo-fast-sync-require",1);var _259=function(id){return {src:_257.id,id:id};},_25a=function(name){return name.replace(/\./g,"/");},_25b=/\/\/>>built/,_25c=[],_25d=[],_25e=function(mid,_25f,_260){_25c.push(_260);_258.forEach(mid.split(","),function(mid){var _261=_262(mid,_25f.module);_25d.push(_261);_263(_261);});_264();},_264=(1?function(){var _265,mid;for(mid in _266){_265=_266[mid];if(_265.noReqPluginCheck===undefined){_265.noReqPluginCheck=/loadInit\!/.test(mid)||/require\!/.test(mid)?1:0;}if(!_265.executed&&!_265.noReqPluginCheck&&_265.injected==_267){return;}}_268(function(){var _269=_25c;_25c=[];_258.forEach(_269,function(cb){cb(1);});});}:(function(){var _26a,_26b=function(m){_26a[m.mid]=1;for(var t,_26c,deps=m.deps||[],i=0;i<deps.length;i++){_26c=deps[i];if(!(t=_26a[_26c.mid])){if(t===0||!_26b(_26c)){_26a[m.mid]=0;return false;}}}return true;};return function(){var _26d,mid;_26a={};for(mid in _266){_26d=_266[mid];if(_26d.executed||_26d.noReqPluginCheck){_26a[mid]=1;}else{if(_26d.noReqPluginCheck!==0){_26d.noReqPluginCheck=/loadInit\!/.test(mid)||/require\!/.test(mid)?1:0;}if(_26d.noReqPluginCheck){_26a[mid]=1;}else{if(_26d.injected!==_299){_26a[mid]=0;}}}}for(var t,i=0,end=_25d.length;i<end;i++){_26d=_25d[i];if(!(t=_26a[_26d.mid])){if(t===0||!_26b(_26d)){return;}}}_268(function(){var _26e=_25c;_25c=[];_258.forEach(_26e,function(cb){cb(1);});});};})()),_26f=function(mid,_270,_271){_270([mid],function(_272){_270(_272.names,function(){for(var _273="",args=[],i=0;i<arguments.length;i++){_273+="var "+_272.names[i]+"= arguments["+i+"]; ";args.push(arguments[i]);}eval(_273);var _274=_270.module,_275=[],_276,_277={provide:function(_278){_278=_25a(_278);var _279=_262(_278,_274);if(_279!==_274){_29f(_279);}},require:function(_27a,_27b){_27a=_25a(_27a);_27b&&(_262(_27a,_274).result=_29a);_275.push(_27a);},requireLocalization:function(_27c,_27d,_27e){if(!_276){_276=["dojo/i18n"];}_27e=(_27e||dojo.locale).toLowerCase();_27c=_25a(_27c)+"/nls/"+(/root/i.test(_27e)?"":_27e+"/")+_25a(_27d);if(_262(_27c,_274).isXd){_276.push("dojo/i18n!"+_27c);}},loadInit:function(f){f();}},hold={},p;try{for(p in _277){hold[p]=dojo[p];dojo[p]=_277[p];}_272.def.apply(null,args);}catch(e){_27f("error",[_259("failedDojoLoadInit"),e]);}finally{for(p in _277){dojo[p]=hold[p];}}if(_276){_275=_275.concat(_276);}if(_275.length){_25e(_275.join(","),_270,_271);}else{_271();}});});},_280=function(text,_281,_282){var _283=/\(|\)/g,_284=1,_285;_283.lastIndex=_281;while((_285=_283.exec(text))){if(_285[0]==")"){_284-=1;}else{_284+=1;}if(_284==0){break;}}if(_284!=0){throw "unmatched paren around character "+_283.lastIndex+" in: "+text;}return [dojo.trim(text.substring(_282,_283.lastIndex))+";\n",_283.lastIndex];},_286=/(\/\*([\s\S]*?)\*\/|\/\/(.*)$)/mg,_287=/(^|\s)dojo\.(loadInit|require|provide|requireLocalization|requireIf|requireAfterIf|platformRequire)\s*\(/mg,_288=/(^|\s)(require|define)\s*\(/m,_289=function(text,_28a){var _28b,_28c,_28d,_28e,_28f=[],_290=[],_291=[];_28a=_28a||text.replace(_286,function(_292){_287.lastIndex=_288.lastIndex=0;return (_287.test(_292)||_288.test(_292))?"":_292;});while((_28b=_287.exec(_28a))){_28c=_287.lastIndex;_28d=_28c-_28b[0].length;_28e=_280(_28a,_28c,_28d);if(_28b[2]=="loadInit"){_28f.push(_28e[0]);}else{_290.push(_28e[0]);}_287.lastIndex=_28e[1];}_291=_28f.concat(_290);if(_291.length||!_288.test(_28a)){return [text.replace(/(^|\s)dojo\.loadInit\s*\(/g,"\n0 && dojo.loadInit("),_291.join(""),_291];}else{return 0;}},_293=function(_294,text){var _295,id,_296=[],_297=[];if(_25b.test(text)||!(_295=_289(text))){return 0;}id=_294.mid+"-*loadInit";for(var p in _262("dojo",_294).result.scopeMap){_296.push(p);_297.push("\""+p+"\"");}return "// xdomain rewrite of "+_294.mid+"\n"+"define('"+id+"',{\n"+"\tnames:"+dojo.toJson(_296)+",\n"+"\tdef:function("+_296.join(",")+"){"+_295[1]+"}"+"});\n\n"+"define("+dojo.toJson(_296.concat(["dojo/loadInit!"+id]))+", function("+_296.join(",")+"){\n"+_295[0]+"});";},_298=_256.initSyncLoader(_25e,_264,_293),sync=_298.sync,_267=_298.requested,_299=_298.arrived,_29a=_298.nonmodule,_29b=_298.executing,_29c=_298.executed,_29d=_298.syncExecStack,_266=_298.modules,_29e=_298.execQ,_262=_298.getModule,_263=_298.injectModule,_29f=_298.setArrived,_27f=_298.signal,_2a0=_298.finishExec,_2a1=_298.execModule,_2a2=_298.getLegacyMode,_268=_298.guardCheckComplete;_25e=_298.dojoRequirePlugin;dojo.provide=function(mid){var _2a3=_29d[0],_2a4=lang.mixin(_262(_25a(mid),_256.module),{executed:_29b,result:lang.getObject(mid,true)});_29f(_2a4);if(_2a3){(_2a3.provides||(_2a3.provides=[])).push(function(){_2a4.result=lang.getObject(mid);delete _2a4.provides;_2a4.executed!==_29c&&_2a0(_2a4);});}return _2a4.result;};has.add("config-publishRequireResult",1,0,0);dojo.require=function(_2a5,_2a6){function _2a7(mid,_2a8){var _2a9=_262(_25a(mid),_256.module);if(_29d.length&&_29d[0].finish){_29d[0].finish.push(mid);return undefined;}if(_2a9.executed){return _2a9.result;}_2a8&&(_2a9.result=_29a);var _2aa=_2a2();_263(_2a9);_2aa=_2a2();if(_2a9.executed!==_29c&&_2a9.injected===_299){_298.guardCheckComplete(function(){_2a1(_2a9);});}if(_2a9.executed){return _2a9.result;}if(_2aa==sync){if(_2a9.cjs){_29e.unshift(_2a9);}else{_29d.length&&(_29d[0].finish=[mid]);}}else{_29e.push(_2a9);}return undefined;};var _2ab=_2a7(_2a5,_2a6);if(has("config-publishRequireResult")&&!lang.exists(_2a5)&&_2ab!==undefined){lang.setObject(_2a5,_2ab);}return _2ab;};dojo.loadInit=function(f){f();};dojo.registerModulePath=function(_2ac,_2ad){var _2ae={};_2ae[_2ac.replace(/\./g,"/")]=_2ad;_256({paths:_2ae});};dojo.platformRequire=function(_2af){var _2b0=(_2af.common||[]).concat(_2af[dojo._name]||_2af["default"]||[]),temp;while(_2b0.length){if(lang.isArray(temp=_2b0.shift())){dojo.require.apply(dojo,temp);}else{dojo.require(temp);}}};dojo.requireIf=dojo.requireAfterIf=function(_2b1,_2b2,_2b3){if(_2b1){dojo.require(_2b2,_2b3);}};dojo.requireLocalization=function(_2b4,_2b5,_2b6){_256(["../i18n"],function(i18n){i18n.getLocalization(_2b4,_2b5,_2b6);});};return {extractLegacyApiApplications:_289,require:_25e,loadInit:_26f};});},"dojo/json":function(){define(["./has"],function(has){"use strict";var _2b7=typeof JSON!="undefined";has.add("json-parse",_2b7);has.add("json-stringify",_2b7&&JSON.stringify({a:0},function(k,v){return v||1;})=="{\"a\":1}");if(has("json-stringify")){return JSON;}else{var _2b8=function(str){return ("\""+str.replace(/(["\\])/g,"\\$1")+"\"").replace(/[\f]/g,"\\f").replace(/[\b]/g,"\\b").replace(/[\n]/g,"\\n").replace(/[\t]/g,"\\t").replace(/[\r]/g,"\\r");};return {parse:has("json-parse")?JSON.parse:function(str,_2b9){if(_2b9&&!/^([\s\[\{]*(?:"(?:\\.|[^"])+"|-?\d[\d\.]*(?:[Ee][+-]?\d+)?|null|true|false|)[\s\]\}]*(?:,|:|$))+$/.test(str)){throw new SyntaxError("Invalid characters in JSON");}return eval("("+str+")");},stringify:function(_2ba,_2bb,_2bc){var _2bd;if(typeof _2bb=="string"){_2bc=_2bb;_2bb=null;}function _2be(it,_2bf,key){if(_2bb){it=_2bb(key,it);}var val,_2c0=typeof it;if(_2c0=="number"){return isFinite(it)?it+"":"null";}if(_2c0=="boolean"){return it+"";}if(it===null){return "null";}if(typeof it=="string"){return _2b8(it);}if(_2c0=="function"||_2c0=="undefined"){return _2bd;}if(typeof it.toJSON=="function"){return _2be(it.toJSON(key),_2bf,key);}if(it instanceof Date){return "\"{FullYear}-{Month+}-{Date}T{Hours}:{Minutes}:{Seconds}Z\"".replace(/\{(\w+)(\+)?\}/g,function(t,prop,plus){var num=it["getUTC"+prop]()+(plus?1:0);return num<10?"0"+num:num;});}if(it.valueOf()!==it){return _2be(it.valueOf(),_2bf,key);}var _2c1=_2bc?(_2bf+_2bc):"";var sep=_2bc?" ":"";var _2c2=_2bc?"\n":"";if(it instanceof Array){var itl=it.length,res=[];for(key=0;key<itl;key++){var obj=it[key];val=_2be(obj,_2c1,key);if(typeof val!="string"){val="null";}res.push(_2c2+_2c1+val);}return "["+res.join(",")+_2c2+_2bf+"]";}var _2c3=[];for(key in it){var _2c4;if(it.hasOwnProperty(key)){if(typeof key=="number"){_2c4="\""+key+"\"";}else{if(typeof key=="string"){_2c4=_2b8(key);}else{continue;}}val=_2be(it[key],_2c1,key);if(typeof val!="string"){continue;}_2c3.push(_2c2+_2c1+_2c4+":"+sep+val);}}return "{"+_2c3.join(",")+_2c2+_2bf+"}";};return _2be(_2ba,"","");}};}});},"dojo/_base/declare":function(){define(["./kernel","../has","./lang"],function(dojo,has,lang){var mix=lang.mixin,op=Object.prototype,opts=op.toString,xtor=new Function,_2c5=0,_2c6="constructor";function err(msg,cls){throw new Error("declare"+(cls?" "+cls:"")+": "+msg);};function _2c7(_2c8,_2c9){var _2ca=[],_2cb=[{cls:0,refs:[]}],_2cc={},_2cd=1,l=_2c8.length,i=0,j,lin,base,top,_2ce,rec,name,refs;for(;i<l;++i){base=_2c8[i];if(!base){err("mixin #"+i+" is unknown. Did you use dojo.require to pull it in?",_2c9);}else{if(opts.call(base)!="[object Function]"){err("mixin #"+i+" is not a callable constructor.",_2c9);}}lin=base._meta?base._meta.bases:[base];top=0;for(j=lin.length-1;j>=0;--j){_2ce=lin[j].prototype;if(!_2ce.hasOwnProperty("declaredClass")){_2ce.declaredClass="uniqName_"+(_2c5++);}name=_2ce.declaredClass;if(!_2cc.hasOwnProperty(name)){_2cc[name]={count:0,refs:[],cls:lin[j]};++_2cd;}rec=_2cc[name];if(top&&top!==rec){rec.refs.push(top);++top.count;}top=rec;}++top.count;_2cb[0].refs.push(top);}while(_2cb.length){top=_2cb.pop();_2ca.push(top.cls);--_2cd;while(refs=top.refs,refs.length==1){top=refs[0];if(!top||--top.count){top=0;break;}_2ca.push(top.cls);--_2cd;}if(top){for(i=0,l=refs.length;i<l;++i){top=refs[i];if(!--top.count){_2cb.push(top);}}}}if(_2cd){err("can't build consistent linearization",_2c9);}base=_2c8[0];_2ca[0]=base?base._meta&&base===_2ca[_2ca.length-base._meta.bases.length]?base._meta.bases.length:1:0;return _2ca;};function _2cf(args,a,f){var name,_2d0,_2d1,_2d2,meta,base,_2d3,opf,pos,_2d4=this._inherited=this._inherited||{};if(typeof args=="string"){name=args;args=a;a=f;}f=0;_2d2=args.callee;name=name||_2d2.nom;if(!name){err("can't deduce a name to call inherited()",this.declaredClass);}meta=this.constructor._meta;_2d1=meta.bases;pos=_2d4.p;if(name!=_2c6){if(_2d4.c!==_2d2){pos=0;base=_2d1[0];meta=base._meta;if(meta.hidden[name]!==_2d2){_2d0=meta.chains;if(_2d0&&typeof _2d0[name]=="string"){err("calling chained method with inherited: "+name,this.declaredClass);}do{meta=base._meta;_2d3=base.prototype;if(meta&&(_2d3[name]===_2d2&&_2d3.hasOwnProperty(name)||meta.hidden[name]===_2d2)){break;}}while(base=_2d1[++pos]);pos=base?pos:-1;}}base=_2d1[++pos];if(base){_2d3=base.prototype;if(base._meta&&_2d3.hasOwnProperty(name)){f=_2d3[name];}else{opf=op[name];do{_2d3=base.prototype;f=_2d3[name];if(f&&(base._meta?_2d3.hasOwnProperty(name):f!==opf)){break;}}while(base=_2d1[++pos]);}}f=base&&f||op[name];}else{if(_2d4.c!==_2d2){pos=0;meta=_2d1[0]._meta;if(meta&&meta.ctor!==_2d2){_2d0=meta.chains;if(!_2d0||_2d0.constructor!=="manual"){err("calling chained constructor with inherited",this.declaredClass);}while(base=_2d1[++pos]){meta=base._meta;if(meta&&meta.ctor===_2d2){break;}}pos=base?pos:-1;}}while(base=_2d1[++pos]){meta=base._meta;f=meta?meta.ctor:base;if(f){break;}}f=base&&f;}_2d4.c=f;_2d4.p=pos;if(f){return a===true?f:f.apply(this,a||args);}};function _2d5(name,args){if(typeof name=="string"){return this.__inherited(name,args,true);}return this.__inherited(name,true);};function _2d6(args,a1,a2){var f=this.getInherited(args,a1);if(f){return f.apply(this,a2||a1||args);}};var _2d7=dojo.config.isDebug?_2d6:_2cf;function _2d8(cls){var _2d9=this.constructor._meta.bases;for(var i=0,l=_2d9.length;i<l;++i){if(_2d9[i]===cls){return true;}}return this instanceof cls;};function _2da(_2db,_2dc){for(var name in _2dc){if(name!=_2c6&&_2dc.hasOwnProperty(name)){_2db[name]=_2dc[name];}}if(has("bug-for-in-skips-shadowed")){for(var _2dd=lang._extraNames,i=_2dd.length;i;){name=_2dd[--i];if(name!=_2c6&&_2dc.hasOwnProperty(name)){_2db[name]=_2dc[name];}}}};function _2de(_2df,_2e0){var name,t;for(name in _2e0){t=_2e0[name];if((t!==op[name]||!(name in op))&&name!=_2c6){if(opts.call(t)=="[object Function]"){t.nom=name;}_2df[name]=t;}}if(has("bug-for-in-skips-shadowed")){for(var _2e1=lang._extraNames,i=_2e1.length;i;){name=_2e1[--i];t=_2e0[name];if((t!==op[name]||!(name in op))&&name!=_2c6){if(opts.call(t)=="[object Function]"){t.nom=name;}_2df[name]=t;}}}return _2df;};function _2e2(_2e3){_2e4.safeMixin(this.prototype,_2e3);return this;};function _2e5(_2e6){return _2e4([this].concat(_2e6));};function _2e7(_2e8,_2e9){return function(){var a=arguments,args=a,a0=a[0],f,i,m,l=_2e8.length,_2ea;if(!(this instanceof a.callee)){return _2eb(a);}if(_2e9&&(a0&&a0.preamble||this.preamble)){_2ea=new Array(_2e8.length);_2ea[0]=a;for(i=0;;){a0=a[0];if(a0){f=a0.preamble;if(f){a=f.apply(this,a)||a;}}f=_2e8[i].prototype;f=f.hasOwnProperty("preamble")&&f.preamble;if(f){a=f.apply(this,a)||a;}if(++i==l){break;}_2ea[i]=a;}}for(i=l-1;i>=0;--i){f=_2e8[i];m=f._meta;f=m?m.ctor:f;if(f){f.apply(this,_2ea?_2ea[i]:a);}}f=this.postscript;if(f){f.apply(this,args);}};};function _2ec(ctor,_2ed){return function(){var a=arguments,t=a,a0=a[0],f;if(!(this instanceof a.callee)){return _2eb(a);}if(_2ed){if(a0){f=a0.preamble;if(f){t=f.apply(this,t)||t;}}f=this.preamble;if(f){f.apply(this,t);}}if(ctor){ctor.apply(this,a);}f=this.postscript;if(f){f.apply(this,a);}};};function _2ee(_2ef){return function(){var a=arguments,i=0,f,m;if(!(this instanceof a.callee)){return _2eb(a);}for(;f=_2ef[i];++i){m=f._meta;f=m?m.ctor:f;if(f){f.apply(this,a);break;}}f=this.postscript;if(f){f.apply(this,a);}};};function _2f0(name,_2f1,_2f2){return function(){var b,m,f,i=0,step=1;if(_2f2){i=_2f1.length-1;step=-1;}for(;b=_2f1[i];i+=step){m=b._meta;f=(m?m.hidden:b.prototype)[name];if(f){f.apply(this,arguments);}}};};function _2f3(ctor){xtor.prototype=ctor.prototype;var t=new xtor;xtor.prototype=null;return t;};function _2eb(args){var ctor=args.callee,t=_2f3(ctor);ctor.apply(t,args);return t;};function _2e4(_2f4,_2f5,_2f6){if(typeof _2f4!="string"){_2f6=_2f5;_2f5=_2f4;_2f4="";}_2f6=_2f6||{};var _2f7,i,t,ctor,name,_2f8,_2f9,_2fa=1,_2fb=_2f5;if(opts.call(_2f5)=="[object Array]"){_2f8=_2c7(_2f5,_2f4);t=_2f8[0];_2fa=_2f8.length-t;_2f5=_2f8[_2fa];}else{_2f8=[0];if(_2f5){if(opts.call(_2f5)=="[object Function]"){t=_2f5._meta;_2f8=_2f8.concat(t?t.bases:_2f5);}else{err("base class is not a callable constructor.",_2f4);}}else{if(_2f5!==null){err("unknown base class. Did you use dojo.require to pull it in?",_2f4);}}}if(_2f5){for(i=_2fa-1;;--i){_2f7=_2f3(_2f5);if(!i){break;}t=_2f8[i];(t._meta?_2da:mix)(_2f7,t.prototype);ctor=new Function;ctor.superclass=_2f5;ctor.prototype=_2f7;_2f5=_2f7.constructor=ctor;}}else{_2f7={};}_2e4.safeMixin(_2f7,_2f6);t=_2f6.constructor;if(t!==op.constructor){t.nom=_2c6;_2f7.constructor=t;}for(i=_2fa-1;i;--i){t=_2f8[i]._meta;if(t&&t.chains){_2f9=mix(_2f9||{},t.chains);}}if(_2f7["-chains-"]){_2f9=mix(_2f9||{},_2f7["-chains-"]);}t=!_2f9||!_2f9.hasOwnProperty(_2c6);_2f8[0]=ctor=(_2f9&&_2f9.constructor==="manual")?_2ee(_2f8):(_2f8.length==1?_2ec(_2f6.constructor,t):_2e7(_2f8,t));ctor._meta={bases:_2f8,hidden:_2f6,chains:_2f9,parents:_2fb,ctor:_2f6.constructor};ctor.superclass=_2f5&&_2f5.prototype;ctor.extend=_2e2;ctor.createSubclass=_2e5;ctor.prototype=_2f7;_2f7.constructor=ctor;_2f7.getInherited=_2d5;_2f7.isInstanceOf=_2d8;_2f7.inherited=_2d7;_2f7.__inherited=_2cf;if(_2f4){_2f7.declaredClass=_2f4;lang.setObject(_2f4,ctor);}if(_2f9){for(name in _2f9){if(_2f7[name]&&typeof _2f9[name]=="string"&&name!=_2c6){t=_2f7[name]=_2f0(name,_2f8,_2f9[name]==="after");t.nom=name;}}}return ctor;};dojo.safeMixin=_2e4.safeMixin=_2de;dojo.declare=_2e4;return _2e4;});},"dojo/dom":function(){define(["./sniff","./_base/lang","./_base/window"],function(has,lang,win){if(has("ie")<=7){try{document.execCommand("BackgroundImageCache",false,true);}catch(e){}}var dom={};if(has("ie")){dom.byId=function(id,doc){if(typeof id!="string"){return id;}var _2fc=doc||win.doc,te=id&&_2fc.getElementById(id);if(te&&(te.attributes.id.value==id||te.id==id)){return te;}else{var eles=_2fc.all[id];if(!eles||eles.nodeName){eles=[eles];}var i=0;while((te=eles[i++])){if((te.attributes&&te.attributes.id&&te.attributes.id.value==id)||te.id==id){return te;}}}};}else{dom.byId=function(id,doc){return ((typeof id=="string")?(doc||win.doc).getElementById(id):id)||null;};}dom.isDescendant=function(node,_2fd){try{node=dom.byId(node);_2fd=dom.byId(_2fd);while(node){if(node==_2fd){return true;}node=node.parentNode;}}catch(e){}return false;};dom.setSelectable=function(node,_2fe){node=dom.byId(node);if(has("mozilla")){node.style.MozUserSelect=_2fe?"":"none";}else{if(has("khtml")||has("webkit")){node.style.KhtmlUserSelect=_2fe?"auto":"none";}else{if(has("ie")){var v=(node.unselectable=_2fe?"":"on"),cs=node.getElementsByTagName("*"),i=0,l=cs.length;for(;i<l;++i){cs.item(i).unselectable=v;}}}}};return dom;});},"dojo/_base/browser":function(){if(require.has){require.has.add("config-selectorEngine","acme");}define(["../ready","./kernel","./connect","./unload","./window","./event","./html","./NodeList","../query","./xhr","./fx"],function(dojo){return dojo;});},"dojo/selector/acme":function(){define(["../dom","../sniff","../_base/array","../_base/lang","../_base/window"],function(dom,has,_2ff,lang,win){var trim=lang.trim;var each=_2ff.forEach;var _300=function(){return win.doc;};var _301=(_300().compatMode)=="BackCompat";var _302=">~+";var _303=false;var _304=function(){return true;};var _305=function(_306){if(_302.indexOf(_306.slice(-1))>=0){_306+=" * ";}else{_306+=" ";}var ts=function(s,e){return trim(_306.slice(s,e));};var _307=[];var _308=-1,_309=-1,_30a=-1,_30b=-1,_30c=-1,inId=-1,_30d=-1,_30e,lc="",cc="",_30f;var x=0,ql=_306.length,_310=null,_311=null;var _312=function(){if(_30d>=0){var tv=(_30d==x)?null:ts(_30d,x);_310[(_302.indexOf(tv)<0)?"tag":"oper"]=tv;_30d=-1;}};var _313=function(){if(inId>=0){_310.id=ts(inId,x).replace(/\\/g,"");inId=-1;}};var _314=function(){if(_30c>=0){_310.classes.push(ts(_30c+1,x).replace(/\\/g,""));_30c=-1;}};var _315=function(){_313();_312();_314();};var _316=function(){_315();if(_30b>=0){_310.pseudos.push({name:ts(_30b+1,x)});}_310.loops=(_310.pseudos.length||_310.attrs.length||_310.classes.length);_310.oquery=_310.query=ts(_30f,x);_310.otag=_310.tag=(_310["oper"])?null:(_310.tag||"*");if(_310.tag){_310.tag=_310.tag.toUpperCase();}if(_307.length&&(_307[_307.length-1].oper)){_310.infixOper=_307.pop();_310.query=_310.infixOper.query+" "+_310.query;}_307.push(_310);_310=null;};for(;lc=cc,cc=_306.charAt(x),x<ql;x++){if(lc=="\\"){continue;}if(!_310){_30f=x;_310={query:null,pseudos:[],attrs:[],classes:[],tag:null,oper:null,id:null,getTag:function(){return _303?this.otag:this.tag;}};_30d=x;}if(_30e){if(cc==_30e){_30e=null;}continue;}else{if(cc=="'"||cc=="\""){_30e=cc;continue;}}if(_308>=0){if(cc=="]"){if(!_311.attr){_311.attr=ts(_308+1,x);}else{_311.matchFor=ts((_30a||_308+1),x);}var cmf=_311.matchFor;if(cmf){if((cmf.charAt(0)=="\"")||(cmf.charAt(0)=="'")){_311.matchFor=cmf.slice(1,-1);}}if(_311.matchFor){_311.matchFor=_311.matchFor.replace(/\\/g,"");}_310.attrs.push(_311);_311=null;_308=_30a=-1;}else{if(cc=="="){var _317=("|~^$*".indexOf(lc)>=0)?lc:"";_311.type=_317+cc;_311.attr=ts(_308+1,x-_317.length);_30a=x+1;}}}else{if(_309>=0){if(cc==")"){if(_30b>=0){_311.value=ts(_309+1,x);}_30b=_309=-1;}}else{if(cc=="#"){_315();inId=x+1;}else{if(cc=="."){_315();_30c=x;}else{if(cc==":"){_315();_30b=x;}else{if(cc=="["){_315();_308=x;_311={};}else{if(cc=="("){if(_30b>=0){_311={name:ts(_30b+1,x),value:null};_310.pseudos.push(_311);}_309=x;}else{if((cc==" ")&&(lc!=cc)){_316();}}}}}}}}}return _307;};var _318=function(_319,_31a){if(!_319){return _31a;}if(!_31a){return _319;}return function(){return _319.apply(window,arguments)&&_31a.apply(window,arguments);};};var _31b=function(i,arr){var r=arr||[];if(i){r.push(i);}return r;};var _31c=function(n){return (1==n.nodeType);};var _31d="";var _31e=function(elem,attr){if(!elem){return _31d;}if(attr=="class"){return elem.className||_31d;}if(attr=="for"){return elem.htmlFor||_31d;}if(attr=="style"){return elem.style.cssText||_31d;}return (_303?elem.getAttribute(attr):elem.getAttribute(attr,2))||_31d;};var _31f={"*=":function(attr,_320){return function(elem){return (_31e(elem,attr).indexOf(_320)>=0);};},"^=":function(attr,_321){return function(elem){return (_31e(elem,attr).indexOf(_321)==0);};},"$=":function(attr,_322){return function(elem){var ea=" "+_31e(elem,attr);var _323=ea.lastIndexOf(_322);return _323>-1&&(_323==(ea.length-_322.length));};},"~=":function(attr,_324){var tval=" "+_324+" ";return function(elem){var ea=" "+_31e(elem,attr)+" ";return (ea.indexOf(tval)>=0);};},"|=":function(attr,_325){var _326=_325+"-";return function(elem){var ea=_31e(elem,attr);return ((ea==_325)||(ea.indexOf(_326)==0));};},"=":function(attr,_327){return function(elem){return (_31e(elem,attr)==_327);};}};var _328=(typeof _300().firstChild.nextElementSibling=="undefined");var _329=!_328?"nextElementSibling":"nextSibling";var _32a=!_328?"previousElementSibling":"previousSibling";var _32b=(_328?_31c:_304);var _32c=function(node){while(node=node[_32a]){if(_32b(node)){return false;}}return true;};var _32d=function(node){while(node=node[_329]){if(_32b(node)){return false;}}return true;};var _32e=function(node){var root=node.parentNode;root=root.nodeType!=7?root:root.nextSibling;var i=0,tret=root.children||root.childNodes,ci=(node["_i"]||node.getAttribute("_i")||-1),cl=(root["_l"]||(typeof root.getAttribute!=="undefined"?root.getAttribute("_l"):-1));if(!tret){return -1;}var l=tret.length;if(cl==l&&ci>=0&&cl>=0){return ci;}if(has("ie")&&typeof root.setAttribute!=="undefined"){root.setAttribute("_l",l);}else{root["_l"]=l;}ci=-1;for(var te=root["firstElementChild"]||root["firstChild"];te;te=te[_329]){if(_32b(te)){if(has("ie")){te.setAttribute("_i",++i);}else{te["_i"]=++i;}if(node===te){ci=i;}}}return ci;};var _32f=function(elem){return !((_32e(elem))%2);};var _330=function(elem){return ((_32e(elem))%2);};var _331={"checked":function(name,_332){return function(elem){return !!("checked" in elem?elem.checked:elem.selected);};},"disabled":function(name,_333){return function(elem){return elem.disabled;};},"enabled":function(name,_334){return function(elem){return !elem.disabled;};},"first-child":function(){return _32c;},"last-child":function(){return _32d;},"only-child":function(name,_335){return function(node){return _32c(node)&&_32d(node);};},"empty":function(name,_336){return function(elem){var cn=elem.childNodes;var cnl=elem.childNodes.length;for(var x=cnl-1;x>=0;x--){var nt=cn[x].nodeType;if((nt===1)||(nt==3)){return false;}}return true;};},"contains":function(name,_337){var cz=_337.charAt(0);if(cz=="\""||cz=="'"){_337=_337.slice(1,-1);}return function(elem){return (elem.innerHTML.indexOf(_337)>=0);};},"not":function(name,_338){var p=_305(_338)[0];var _339={el:1};if(p.tag!="*"){_339.tag=1;}if(!p.classes.length){_339.classes=1;}var ntf=_33a(p,_339);return function(elem){return (!ntf(elem));};},"nth-child":function(name,_33b){var pi=parseInt;if(_33b=="odd"){return _330;}else{if(_33b=="even"){return _32f;}}if(_33b.indexOf("n")!=-1){var _33c=_33b.split("n",2);var pred=_33c[0]?((_33c[0]=="-")?-1:pi(_33c[0])):1;var idx=_33c[1]?pi(_33c[1]):0;var lb=0,ub=-1;if(pred>0){if(idx<0){idx=(idx%pred)&&(pred+(idx%pred));}else{if(idx>0){if(idx>=pred){lb=idx-idx%pred;}idx=idx%pred;}}}else{if(pred<0){pred*=-1;if(idx>0){ub=idx;idx=idx%pred;}}}if(pred>0){return function(elem){var i=_32e(elem);return (i>=lb)&&(ub<0||i<=ub)&&((i%pred)==idx);};}else{_33b=idx;}}var _33d=pi(_33b);return function(elem){return (_32e(elem)==_33d);};}};var _33e=(has("ie")&&(has("ie")<9||has("quirks")))?function(cond){var clc=cond.toLowerCase();if(clc=="class"){cond="className";}return function(elem){return (_303?elem.getAttribute(cond):elem[cond]||elem[clc]);};}:function(cond){return function(elem){return (elem&&elem.getAttribute&&elem.hasAttribute(cond));};};var _33a=function(_33f,_340){if(!_33f){return _304;}_340=_340||{};var ff=null;if(!("el" in _340)){ff=_318(ff,_31c);}if(!("tag" in _340)){if(_33f.tag!="*"){ff=_318(ff,function(elem){return (elem&&((_303?elem.tagName:elem.tagName.toUpperCase())==_33f.getTag()));});}}if(!("classes" in _340)){each(_33f.classes,function(_341,idx,arr){var re=new RegExp("(?:^|\\s)"+_341+"(?:\\s|$)");ff=_318(ff,function(elem){return re.test(elem.className);});ff.count=idx;});}if(!("pseudos" in _340)){each(_33f.pseudos,function(_342){var pn=_342.name;if(_331[pn]){ff=_318(ff,_331[pn](pn,_342.value));}});}if(!("attrs" in _340)){each(_33f.attrs,function(attr){var _343;var a=attr.attr;if(attr.type&&_31f[attr.type]){_343=_31f[attr.type](a,attr.matchFor);}else{if(a.length){_343=_33e(a);}}if(_343){ff=_318(ff,_343);}});}if(!("id" in _340)){if(_33f.id){ff=_318(ff,function(elem){return (!!elem&&(elem.id==_33f.id));});}}if(!ff){if(!("default" in _340)){ff=_304;}}return ff;};var _344=function(_345){return function(node,ret,bag){while(node=node[_329]){if(_328&&(!_31c(node))){continue;}if((!bag||_346(node,bag))&&_345(node)){ret.push(node);}break;}return ret;};};var _347=function(_348){return function(root,ret,bag){var te=root[_329];while(te){if(_32b(te)){if(bag&&!_346(te,bag)){break;}if(_348(te)){ret.push(te);}}te=te[_329];}return ret;};};var _349=function(_34a){_34a=_34a||_304;return function(root,ret,bag){var te,x=0,tret=root.children||root.childNodes;while(te=tret[x++]){if(_32b(te)&&(!bag||_346(te,bag))&&(_34a(te,x))){ret.push(te);}}return ret;};};var _34b=function(node,root){var pn=node.parentNode;while(pn){if(pn==root){break;}pn=pn.parentNode;}return !!pn;};var _34c={};var _34d=function(_34e){var _34f=_34c[_34e.query];if(_34f){return _34f;}var io=_34e.infixOper;var oper=(io?io.oper:"");var _350=_33a(_34e,{el:1});var qt=_34e.tag;var _351=("*"==qt);var ecs=_300()["getElementsByClassName"];if(!oper){if(_34e.id){_350=(!_34e.loops&&_351)?_304:_33a(_34e,{el:1,id:1});_34f=function(root,arr){var te=dom.byId(_34e.id,(root.ownerDocument||root));if(!te||!_350(te)){return;}if(9==root.nodeType){return _31b(te,arr);}else{if(_34b(te,root)){return _31b(te,arr);}}};}else{if(ecs&&/\{\s*\[native code\]\s*\}/.test(String(ecs))&&_34e.classes.length&&!_301){_350=_33a(_34e,{el:1,classes:1,id:1});var _352=_34e.classes.join(" ");_34f=function(root,arr,bag){var ret=_31b(0,arr),te,x=0;var tret=root.getElementsByClassName(_352);while((te=tret[x++])){if(_350(te,root)&&_346(te,bag)){ret.push(te);}}return ret;};}else{if(!_351&&!_34e.loops){_34f=function(root,arr,bag){var ret=_31b(0,arr),te,x=0;var tag=_34e.getTag(),tret=tag?root.getElementsByTagName(tag):[];while((te=tret[x++])){if(_346(te,bag)){ret.push(te);}}return ret;};}else{_350=_33a(_34e,{el:1,tag:1,id:1});_34f=function(root,arr,bag){var ret=_31b(0,arr),te,x=0;var tag=_34e.getTag(),tret=tag?root.getElementsByTagName(tag):[];while((te=tret[x++])){if(_350(te,root)&&_346(te,bag)){ret.push(te);}}return ret;};}}}}else{var _353={el:1};if(_351){_353.tag=1;}_350=_33a(_34e,_353);if("+"==oper){_34f=_344(_350);}else{if("~"==oper){_34f=_347(_350);}else{if(">"==oper){_34f=_349(_350);}}}}return _34c[_34e.query]=_34f;};var _354=function(root,_355){var _356=_31b(root),qp,x,te,qpl=_355.length,bag,ret;for(var i=0;i<qpl;i++){ret=[];qp=_355[i];x=_356.length-1;if(x>0){bag={};ret.nozip=true;}var gef=_34d(qp);for(var j=0;(te=_356[j]);j++){gef(te,ret,bag);}if(!ret.length){break;}_356=ret;}return ret;};var _357={},_358={};var _359=function(_35a){var _35b=_305(trim(_35a));if(_35b.length==1){var tef=_34d(_35b[0]);return function(root){var r=tef(root,[]);if(r){r.nozip=true;}return r;};}return function(root){return _354(root,_35b);};};var _35c=has("ie")?"commentStrip":"nozip";var qsa="querySelectorAll";var _35d=!!_300()[qsa];var _35e=/\\[>~+]|n\+\d|([^ \\])?([>~+])([^ =])?/g;var _35f=function(_360,pre,ch,post){return ch?(pre?pre+" ":"")+ch+(post?" "+post:""):_360;};var _361=/([^[]*)([^\]]*])?/g;var _362=function(_363,_364,att){return _364.replace(_35e,_35f)+(att||"");};var _365=function(_366,_367){_366=_366.replace(_361,_362);if(_35d){var _368=_358[_366];if(_368&&!_367){return _368;}}var _369=_357[_366];if(_369){return _369;}var qcz=_366.charAt(0);var _36a=(-1==_366.indexOf(" "));if((_366.indexOf("#")>=0)&&(_36a)){_367=true;}var _36b=(_35d&&(!_367)&&(_302.indexOf(qcz)==-1)&&(!has("ie")||(_366.indexOf(":")==-1))&&(!(_301&&(_366.indexOf(".")>=0)))&&(_366.indexOf(":contains")==-1)&&(_366.indexOf(":checked")==-1)&&(_366.indexOf("|=")==-1));if(_36b){var tq=(_302.indexOf(_366.charAt(_366.length-1))>=0)?(_366+" *"):_366;return _358[_366]=function(root){try{if(!((9==root.nodeType)||_36a)){throw "";}var r=root[qsa](tq);r[_35c]=true;return r;}catch(e){return _365(_366,true)(root);}};}else{var _36c=_366.match(/([^\s,](?:"(?:\\.|[^"])+"|'(?:\\.|[^'])+'|[^,])*)/g);return _357[_366]=((_36c.length<2)?_359(_366):function(root){var _36d=0,ret=[],tp;while((tp=_36c[_36d++])){ret=ret.concat(_359(tp)(root));}return ret;});}};var _36e=0;var _36f=has("ie")?function(node){if(_303){return (node.getAttribute("_uid")||node.setAttribute("_uid",++_36e)||_36e);}else{return node.uniqueID;}}:function(node){return (node._uid||(node._uid=++_36e));};var _346=function(node,bag){if(!bag){return 1;}var id=_36f(node);if(!bag[id]){return bag[id]=1;}return 0;};var _370="_zipIdx";var _371=function(arr){if(arr&&arr.nozip){return arr;}var ret=[];if(!arr||!arr.length){return ret;}if(arr[0]){ret.push(arr[0]);}if(arr.length<2){return ret;}_36e++;var x,te;if(has("ie")&&_303){var _372=_36e+"";arr[0].setAttribute(_370,_372);for(x=1;te=arr[x];x++){if(arr[x].getAttribute(_370)!=_372){ret.push(te);}te.setAttribute(_370,_372);}}else{if(has("ie")&&arr.commentStrip){try{for(x=1;te=arr[x];x++){if(_31c(te)){ret.push(te);}}}catch(e){}}else{if(arr[0]){arr[0][_370]=_36e;}for(x=1;te=arr[x];x++){if(arr[x][_370]!=_36e){ret.push(te);}te[_370]=_36e;}}}return ret;};var _373=function(_374,root){root=root||_300();var od=root.ownerDocument||root;_303=(od.createElement("div").tagName==="div");var r=_365(_374)(root);if(r&&r.nozip){return r;}return _371(r);};_373.filter=function(_375,_376,root){var _377=[],_378=_305(_376),_379=(_378.length==1&&!/[^\w#\.]/.test(_376))?_33a(_378[0]):function(node){return _2ff.indexOf(_373(_376,dom.byId(root)),node)!=-1;};for(var x=0,te;te=_375[x];x++){if(_379(te)){_377.push(te);}}return _377;};return _373;});},"dojo/errors/RequestTimeoutError":function(){define("dojo/errors/RequestTimeoutError",["./create","./RequestError"],function(_37a,_37b){return _37a("RequestTimeoutError",null,_37b,{dojoType:"timeout"});});},"dojo/dom-geometry":function(){define(["./sniff","./_base/window","./dom","./dom-style"],function(has,win,dom,_37c){var geom={};geom.boxModel="content-box";if(has("ie")){geom.boxModel=document.compatMode=="BackCompat"?"border-box":"content-box";}geom.getPadExtents=function getPadExtents(node,_37d){node=dom.byId(node);var s=_37d||_37c.getComputedStyle(node),px=_37c.toPixelValue,l=px(node,s.paddingLeft),t=px(node,s.paddingTop),r=px(node,s.paddingRight),b=px(node,s.paddingBottom);return {l:l,t:t,r:r,b:b,w:l+r,h:t+b};};var none="none";geom.getBorderExtents=function getBorderExtents(node,_37e){node=dom.byId(node);var px=_37c.toPixelValue,s=_37e||_37c.getComputedStyle(node),l=s.borderLeftStyle!=none?px(node,s.borderLeftWidth):0,t=s.borderTopStyle!=none?px(node,s.borderTopWidth):0,r=s.borderRightStyle!=none?px(node,s.borderRightWidth):0,b=s.borderBottomStyle!=none?px(node,s.borderBottomWidth):0;return {l:l,t:t,r:r,b:b,w:l+r,h:t+b};};geom.getPadBorderExtents=function getPadBorderExtents(node,_37f){node=dom.byId(node);var s=_37f||_37c.getComputedStyle(node),p=geom.getPadExtents(node,s),b=geom.getBorderExtents(node,s);return {l:p.l+b.l,t:p.t+b.t,r:p.r+b.r,b:p.b+b.b,w:p.w+b.w,h:p.h+b.h};};geom.getMarginExtents=function getMarginExtents(node,_380){node=dom.byId(node);var s=_380||_37c.getComputedStyle(node),px=_37c.toPixelValue,l=px(node,s.marginLeft),t=px(node,s.marginTop),r=px(node,s.marginRight),b=px(node,s.marginBottom);return {l:l,t:t,r:r,b:b,w:l+r,h:t+b};};geom.getMarginBox=function getMarginBox(node,_381){node=dom.byId(node);var s=_381||_37c.getComputedStyle(node),me=geom.getMarginExtents(node,s),l=node.offsetLeft-me.l,t=node.offsetTop-me.t,p=node.parentNode,px=_37c.toPixelValue,pcs;if(has("mozilla")){var sl=parseFloat(s.left),st=parseFloat(s.top);if(!isNaN(sl)&&!isNaN(st)){l=sl;t=st;}else{if(p&&p.style){pcs=_37c.getComputedStyle(p);if(pcs.overflow!="visible"){l+=pcs.borderLeftStyle!=none?px(node,pcs.borderLeftWidth):0;t+=pcs.borderTopStyle!=none?px(node,pcs.borderTopWidth):0;}}}}else{if(has("opera")||(has("ie")==8&&!has("quirks"))){if(p){pcs=_37c.getComputedStyle(p);l-=pcs.borderLeftStyle!=none?px(node,pcs.borderLeftWidth):0;t-=pcs.borderTopStyle!=none?px(node,pcs.borderTopWidth):0;}}}return {l:l,t:t,w:node.offsetWidth+me.w,h:node.offsetHeight+me.h};};geom.getContentBox=function getContentBox(node,_382){node=dom.byId(node);var s=_382||_37c.getComputedStyle(node),w=node.clientWidth,h,pe=geom.getPadExtents(node,s),be=geom.getBorderExtents(node,s);if(!w){w=node.offsetWidth;h=node.offsetHeight;}else{h=node.clientHeight;be.w=be.h=0;}if(has("opera")){pe.l+=be.l;pe.t+=be.t;}return {l:pe.l,t:pe.t,w:w-pe.w-be.w,h:h-pe.h-be.h};};function _383(node,l,t,w,h,u){u=u||"px";var s=node.style;if(!isNaN(l)){s.left=l+u;}if(!isNaN(t)){s.top=t+u;}if(w>=0){s.width=w+u;}if(h>=0){s.height=h+u;}};function _384(node){return node.tagName.toLowerCase()=="button"||node.tagName.toLowerCase()=="input"&&(node.getAttribute("type")||"").toLowerCase()=="button";};function _385(node){return geom.boxModel=="border-box"||node.tagName.toLowerCase()=="table"||_384(node);};geom.setContentSize=function setContentSize(node,box,_386){node=dom.byId(node);var w=box.w,h=box.h;if(_385(node)){var pb=geom.getPadBorderExtents(node,_386);if(w>=0){w+=pb.w;}if(h>=0){h+=pb.h;}}_383(node,NaN,NaN,w,h);};var _387={l:0,t:0,w:0,h:0};geom.setMarginBox=function setMarginBox(node,box,_388){node=dom.byId(node);var s=_388||_37c.getComputedStyle(node),w=box.w,h=box.h,pb=_385(node)?_387:geom.getPadBorderExtents(node,s),mb=geom.getMarginExtents(node,s);if(has("webkit")){if(_384(node)){var ns=node.style;if(w>=0&&!ns.width){ns.width="4px";}if(h>=0&&!ns.height){ns.height="4px";}}}if(w>=0){w=Math.max(w-pb.w-mb.w,0);}if(h>=0){h=Math.max(h-pb.h-mb.h,0);}_383(node,box.l,box.t,w,h);};geom.isBodyLtr=function isBodyLtr(doc){doc=doc||win.doc;return (win.body(doc).dir||doc.documentElement.dir||"ltr").toLowerCase()=="ltr";};geom.docScroll=function docScroll(doc){doc=doc||win.doc;var node=win.doc.parentWindow||win.doc.defaultView;return "pageXOffset" in node?{x:node.pageXOffset,y:node.pageYOffset}:(node=has("quirks")?win.body(doc):doc.documentElement)&&{x:geom.fixIeBiDiScrollLeft(node.scrollLeft||0,doc),y:node.scrollTop||0};};if(has("ie")){geom.getIeDocumentElementOffset=function getIeDocumentElementOffset(doc){doc=doc||win.doc;var de=doc.documentElement;if(has("ie")<8){var r=de.getBoundingClientRect(),l=r.left,t=r.top;if(has("ie")<7){l+=de.clientLeft;t+=de.clientTop;}return {x:l<0?0:l,y:t<0?0:t};}else{return {x:0,y:0};}};}geom.fixIeBiDiScrollLeft=function fixIeBiDiScrollLeft(_389,doc){doc=doc||win.doc;var ie=has("ie");if(ie&&!geom.isBodyLtr(doc)){var qk=has("quirks"),de=qk?win.body(doc):doc.documentElement,pwin=win.global;if(ie==6&&!qk&&pwin.frameElement&&de.scrollHeight>de.clientHeight){_389+=de.clientLeft;}return (ie<8||qk)?(_389+de.clientWidth-de.scrollWidth):-_389;}return _389;};geom.position=function(node,_38a){node=dom.byId(node);var db=win.body(node.ownerDocument),ret=node.getBoundingClientRect();ret={x:ret.left,y:ret.top,w:ret.right-ret.left,h:ret.bottom-ret.top};if(has("ie")){var _38b=geom.getIeDocumentElementOffset(node.ownerDocument);ret.x-=_38b.x+(has("quirks")?db.clientLeft+db.offsetLeft:0);ret.y-=_38b.y+(has("quirks")?db.clientTop+db.offsetTop:0);}if(_38a){var _38c=geom.docScroll(node.ownerDocument);ret.x+=_38c.x;ret.y+=_38c.y;}return ret;};geom.getMarginSize=function getMarginSize(node,_38d){node=dom.byId(node);var me=geom.getMarginExtents(node,_38d||_37c.getComputedStyle(node));var size=node.getBoundingClientRect();return {w:(size.right-size.left)+me.w,h:(size.bottom-size.top)+me.h};};geom.normalizeEvent=function(_38e){if(!("layerX" in _38e)){_38e.layerX=_38e.offsetX;_38e.layerY=_38e.offsetY;}if(!has("dom-addeventlistener")){var se=_38e.target;var doc=(se&&se.ownerDocument)||document;var _38f=has("quirks")?doc.body:doc.documentElement;var _390=geom.getIeDocumentElementOffset(doc);_38e.pageX=_38e.clientX+geom.fixIeBiDiScrollLeft(_38f.scrollLeft||0,doc)-_390.x;_38e.pageY=_38e.clientY+(_38f.scrollTop||0)-_390.y;}};return geom;});},"dojo/dom-style":function(){define("dojo/dom-style",["./sniff","./dom"],function(has,dom){var _391,_392={};if(has("webkit")){_391=function(node){var s;if(node.nodeType==1){var dv=node.ownerDocument.defaultView;s=dv.getComputedStyle(node,null);if(!s&&node.style){node.style.display="";s=dv.getComputedStyle(node,null);}}return s||{};};}else{if(has("ie")&&(has("ie")<9||has("quirks"))){_391=function(node){return node.nodeType==1&&node.currentStyle?node.currentStyle:{};};}else{_391=function(node){return node.nodeType==1?node.ownerDocument.defaultView.getComputedStyle(node,null):{};};}}_392.getComputedStyle=_391;var _393;if(!has("ie")){_393=function(_394,_395){return parseFloat(_395)||0;};}else{_393=function(_396,_397){if(!_397){return 0;}if(_397=="medium"){return 4;}if(_397.slice&&_397.slice(-2)=="px"){return parseFloat(_397);}var s=_396.style,rs=_396.runtimeStyle,cs=_396.currentStyle,_398=s.left,_399=rs.left;rs.left=cs.left;try{s.left=_397;_397=s.pixelLeft;}catch(e){_397=0;}s.left=_398;rs.left=_399;return _397;};}_392.toPixelValue=_393;var astr="DXImageTransform.Microsoft.Alpha";var af=function(n,f){try{return n.filters.item(astr);}catch(e){return f?{}:null;}};var _39a=has("ie")<9||(has("ie")&&has("quirks"))?function(node){try{return af(node).Opacity/100;}catch(e){return 1;}}:function(node){return _391(node).opacity;};var _39b=has("ie")<9||(has("ie")&&has("quirks"))?function(node,_39c){var ov=_39c*100,_39d=_39c==1;node.style.zoom=_39d?"":1;if(!af(node)){if(_39d){return _39c;}node.style.filter+=" progid:"+astr+"(Opacity="+ov+")";}else{af(node,1).Opacity=ov;}af(node,1).Enabled=!_39d;if(node.tagName.toLowerCase()=="tr"){for(var td=node.firstChild;td;td=td.nextSibling){if(td.tagName.toLowerCase()=="td"){_39b(td,_39c);}}}return _39c;}:function(node,_39e){return node.style.opacity=_39e;};var _39f={left:true,top:true};var _3a0=/margin|padding|width|height|max|min|offset/;function _3a1(node,type,_3a2){type=type.toLowerCase();if(has("ie")){if(_3a2=="auto"){if(type=="height"){return node.offsetHeight;}if(type=="width"){return node.offsetWidth;}}if(type=="fontweight"){switch(_3a2){case 700:return "bold";case 400:default:return "normal";}}}if(!(type in _39f)){_39f[type]=_3a0.test(type);}return _39f[type]?_393(node,_3a2):_3a2;};var _3a3=has("ie")?"styleFloat":"cssFloat",_3a4={"cssFloat":_3a3,"styleFloat":_3a3,"float":_3a3};_392.get=function getStyle(node,name){var n=dom.byId(node),l=arguments.length,op=(name=="opacity");if(l==2&&op){return _39a(n);}name=_3a4[name]||name;var s=_392.getComputedStyle(n);return (l==1)?s:_3a1(n,name,s[name]||n.style[name]);};_392.set=function setStyle(node,name,_3a5){var n=dom.byId(node),l=arguments.length,op=(name=="opacity");name=_3a4[name]||name;if(l==3){return op?_39b(n,_3a5):n.style[name]=_3a5;}for(var x in name){_392.set(node,x,name[x]);}return _392.getComputedStyle(n);};return _392;});},"dojo/dom-prop":function(){define(["exports","./_base/kernel","./sniff","./_base/lang","./dom","./dom-style","./dom-construct","./_base/connect"],function(_3a6,dojo,has,lang,dom,_3a7,ctr,conn){var _3a8={},_3a9=0,_3aa=dojo._scopeName+"attrid";_3a6.names={"class":"className","for":"htmlFor",tabindex:"tabIndex",readonly:"readOnly",colspan:"colSpan",frameborder:"frameBorder",rowspan:"rowSpan",valuetype:"valueType"};_3a6.get=function getProp(node,name){node=dom.byId(node);var lc=name.toLowerCase(),_3ab=_3a6.names[lc]||name;return node[_3ab];};_3a6.set=function setProp(node,name,_3ac){node=dom.byId(node);var l=arguments.length;if(l==2&&typeof name!="string"){for(var x in name){_3a6.set(node,x,name[x]);}return node;}var lc=name.toLowerCase(),_3ad=_3a6.names[lc]||name;if(_3ad=="style"&&typeof _3ac!="string"){_3a7.set(node,_3ac);return node;}if(_3ad=="innerHTML"){if(has("ie")&&node.tagName.toLowerCase() in {col:1,colgroup:1,table:1,tbody:1,tfoot:1,thead:1,tr:1,title:1}){ctr.empty(node);node.appendChild(ctr.toDom(_3ac,node.ownerDocument));}else{node[_3ad]=_3ac;}return node;}if(lang.isFunction(_3ac)){var _3ae=node[_3aa];if(!_3ae){_3ae=_3a9++;node[_3aa]=_3ae;}if(!_3a8[_3ae]){_3a8[_3ae]={};}var h=_3a8[_3ae][_3ad];if(h){conn.disconnect(h);}else{try{delete node[_3ad];}catch(e){}}if(_3ac){_3a8[_3ae][_3ad]=conn.connect(node,_3ad,_3ac);}else{node[_3ad]=null;}return node;}node[_3ad]=_3ac;return node;};});},"dojo/when":function(){define(["./Deferred","./promise/Promise"],function(_3af,_3b0){"use strict";return function when(_3b1,_3b2,_3b3,_3b4){var _3b5=_3b1&&typeof _3b1.then==="function";var _3b6=_3b5&&_3b1 instanceof _3b0;if(!_3b5){if(_3b2){return _3b2(_3b1);}else{return new _3af().resolve(_3b1);}}else{if(!_3b6){var _3b7=new _3af(_3b1.cancel);_3b1.then(_3b7.resolve,_3b7.reject,_3b7.progress);_3b1=_3b7.promise;}}if(_3b2||_3b3||_3b4){return _3b1.then(_3b2,_3b3,_3b4);}return _3b1;};});},"dojo/dom-attr":function(){define(["exports","./sniff","./_base/lang","./dom","./dom-style","./dom-prop"],function(_3b8,has,lang,dom,_3b9,prop){var _3ba={innerHTML:1,className:1,htmlFor:has("ie"),value:1},_3bb={classname:"class",htmlfor:"for",tabindex:"tabIndex",readonly:"readOnly"};function _3bc(node,name){var attr=node.getAttributeNode&&node.getAttributeNode(name);return attr&&attr.specified;};_3b8.has=function hasAttr(node,name){var lc=name.toLowerCase();return _3ba[prop.names[lc]||name]||_3bc(dom.byId(node),_3bb[lc]||name);};_3b8.get=function getAttr(node,name){node=dom.byId(node);var lc=name.toLowerCase(),_3bd=prop.names[lc]||name,_3be=_3ba[_3bd],_3bf=node[_3bd];if(_3be&&typeof _3bf!="undefined"){return _3bf;}if(_3bd!="href"&&(typeof _3bf=="boolean"||lang.isFunction(_3bf))){return _3bf;}var _3c0=_3bb[lc]||name;return _3bc(node,_3c0)?node.getAttribute(_3c0):null;};_3b8.set=function setAttr(node,name,_3c1){node=dom.byId(node);if(arguments.length==2){for(var x in name){_3b8.set(node,x,name[x]);}return node;}var lc=name.toLowerCase(),_3c2=prop.names[lc]||name,_3c3=_3ba[_3c2];if(_3c2=="style"&&typeof _3c1!="string"){_3b9.set(node,_3c1);return node;}if(_3c3||typeof _3c1=="boolean"||lang.isFunction(_3c1)){return prop.set(node,name,_3c1);}node.setAttribute(_3bb[lc]||name,_3c1);return node;};_3b8.remove=function removeAttr(node,name){dom.byId(node).removeAttribute(_3bb[name.toLowerCase()]||name);};_3b8.getNodeProp=function getNodeProp(node,name){node=dom.byId(node);var lc=name.toLowerCase(),_3c4=prop.names[lc]||name;if((_3c4 in node)&&_3c4!="href"){return node[_3c4];}var _3c5=_3bb[lc]||name;return _3bc(node,_3c5)?node.getAttribute(_3c5):null;};});},"dojo/dom-construct":function(){define(["exports","./_base/kernel","./sniff","./_base/window","./dom","./dom-attr","./on"],function(_3c6,dojo,has,win,dom,attr,on){var _3c7={option:["select"],tbody:["table"],thead:["table"],tfoot:["table"],tr:["table","tbody"],td:["table","tbody","tr"],th:["table","thead","tr"],legend:["fieldset"],caption:["table"],colgroup:["table"],col:["table","colgroup"],li:["ul"]},_3c8=/<\s*([\w\:]+)/,_3c9={},_3ca=0,_3cb="__"+dojo._scopeName+"ToDomId";for(var _3cc in _3c7){if(_3c7.hasOwnProperty(_3cc)){var tw=_3c7[_3cc];tw.pre=_3cc=="option"?"<select multiple=\"multiple\">":"<"+tw.join("><")+">";tw.post="</"+tw.reverse().join("></")+">";}}function _3cd(node,ref){var _3ce=ref.parentNode;if(_3ce){_3ce.insertBefore(node,ref);}};function _3cf(node,ref){var _3d0=ref.parentNode;if(_3d0){if(_3d0.lastChild==ref){_3d0.appendChild(node);}else{_3d0.insertBefore(node,ref.nextSibling);}}};var _3d1=null,_3d2;on(window,"unload",function(){_3d1=null;});_3c6.toDom=function toDom(frag,doc){doc=doc||win.doc;var _3d3=doc[_3cb];if(!_3d3){doc[_3cb]=_3d3=++_3ca+"";_3c9[_3d3]=doc.createElement("div");}frag+="";var _3d4=frag.match(_3c8),tag=_3d4?_3d4[1].toLowerCase():"",_3d5=_3c9[_3d3],wrap,i,fc,df;if(_3d4&&_3c7[tag]){wrap=_3c7[tag];_3d5.innerHTML=wrap.pre+frag+wrap.post;for(i=wrap.length;i;--i){_3d5=_3d5.firstChild;}}else{_3d5.innerHTML=frag;}if(_3d5.childNodes.length==1){return _3d5.removeChild(_3d5.firstChild);}df=doc.createDocumentFragment();while(fc=_3d5.firstChild){df.appendChild(fc);}return df;};_3c6.place=function place(node,_3d6,_3d7){_3d6=dom.byId(_3d6);if(typeof node=="string"){node=/^\s*</.test(node)?_3c6.toDom(node,_3d6.ownerDocument):dom.byId(node);}if(typeof _3d7=="number"){var cn=_3d6.childNodes;if(!cn.length||cn.length<=_3d7){_3d6.appendChild(node);}else{_3cd(node,cn[_3d7<0?0:_3d7]);}}else{switch(_3d7){case "before":_3cd(node,_3d6);break;case "after":_3cf(node,_3d6);break;case "replace":_3d6.parentNode.replaceChild(node,_3d6);break;case "only":_3c6.empty(_3d6);_3d6.appendChild(node);break;case "first":if(_3d6.firstChild){_3cd(node,_3d6.firstChild);break;}default:_3d6.appendChild(node);}}return node;};_3c6.create=function create(tag,_3d8,_3d9,pos){var doc=win.doc;if(_3d9){_3d9=dom.byId(_3d9);doc=_3d9.ownerDocument;}if(typeof tag=="string"){tag=doc.createElement(tag);}if(_3d8){attr.set(tag,_3d8);}if(_3d9){_3c6.place(tag,_3d9,pos);}return tag;};_3c6.empty=has("ie")?function(node){node=dom.byId(node);for(var c;c=node.lastChild;){_3c6.destroy(c);}}:function(node){dom.byId(node).innerHTML="";};_3c6.destroy=function destroy(node){node=dom.byId(node);try{var doc=node.ownerDocument;if(!_3d1||_3d2!=doc){_3d1=doc.createElement("div");_3d2=doc;}_3d1.appendChild(node.parentNode?node.parentNode.removeChild(node):node);_3d1.innerHTML="";}catch(e){}};});},"dojo/request/xhr":function(){define("dojo/request/xhr",["../errors/RequestError","./watch","./handlers","./util","../has"],function(_3da,_3db,_3dc,util,has){has.add("native-xhr",function(){return typeof XMLHttpRequest!=="undefined";});has.add("dojo-force-activex-xhr",function(){return has("activex")&&!document.addEventListener&&window.location.protocol==="file:";});has.add("native-xhr2",function(){if(!has("native-xhr")){return;}var x=new XMLHttpRequest();return typeof x["addEventListener"]!=="undefined"&&(typeof opera==="undefined"||typeof x["upload"]!=="undefined");});has.add("native-formdata",function(){return typeof FormData==="function";});function _3dd(_3de,_3df){var _3e0=_3de.xhr;_3de.status=_3de.xhr.status;_3de.text=_3e0.responseText;if(_3de.options.handleAs==="xml"){_3de.data=_3e0.responseXML;}if(!_3df){try{_3dc(_3de);}catch(e){_3df=e;}}if(_3df){this.reject(_3df);}else{if(util.checkStatus(_3e0.status)){this.resolve(_3de);}else{_3df=new _3da("Unable to load "+_3de.url+" status: "+_3e0.status,_3de);this.reject(_3df);}}};var _3e1,_3e2,_3e3,_3e4;if(has("native-xhr2")){_3e1=function(_3e5){return !this.isFulfilled();};_3e4=function(dfd,_3e6){_3e6.xhr.abort();};_3e3=function(_3e7,dfd,_3e8){function _3e9(evt){dfd.handleResponse(_3e8);};function _3ea(evt){var _3eb=evt.target;var _3ec=new _3da("Unable to load "+_3e8.url+" status: "+_3eb.status,_3e8);dfd.handleResponse(_3e8,_3ec);};function _3ed(evt){if(evt.lengthComputable){_3e8.loaded=evt.loaded;_3e8.total=evt.total;dfd.progress(_3e8);}};_3e7.addEventListener("load",_3e9,false);_3e7.addEventListener("error",_3ea,false);_3e7.addEventListener("progress",_3ed,false);return function(){_3e7.removeEventListener("load",_3e9,false);_3e7.removeEventListener("error",_3ea,false);_3e7.removeEventListener("progress",_3ed,false);};};}else{_3e1=function(_3ee){return _3ee.xhr.readyState;};_3e2=function(_3ef){return 4===_3ef.xhr.readyState;};_3e4=function(dfd,_3f0){var xhr=_3f0.xhr;var _3f1=typeof xhr.abort;if(_3f1==="function"||_3f1==="object"||_3f1==="unknown"){xhr.abort();}};}var _3f2,_3f3={data:null,query:null,sync:false,method:"GET",headers:{"Content-Type":"application/x-www-form-urlencoded"}};function xhr(url,_3f4,_3f5){var _3f6=util.parseArgs(url,util.deepCreate(_3f3,_3f4),has("native-formdata")&&_3f4&&_3f4.data&&_3f4.data instanceof FormData);url=_3f6.url;_3f4=_3f6.options;var _3f7,last=function(){_3f7&&_3f7();};var dfd=util.deferred(_3f6,_3e4,_3e1,_3e2,_3dd,last);var _3f8=_3f6.xhr=xhr._create();if(!_3f8){dfd.cancel(new _3da("XHR was not created"));return _3f5?dfd:dfd.promise;}_3f6.getHeader=function(_3f9){return this.xhr.getResponseHeader(_3f9);};if(_3e3){_3f7=_3e3(_3f8,dfd,_3f6);}var data=_3f4.data,_3fa=!_3f4.sync,_3fb=_3f4.method;try{_3f8.open(_3fb,url,_3fa,_3f4.user||_3f2,_3f4.password||_3f2);if(_3f4.withCredentials){_3f8.withCredentials=_3f4.withCredentials;}var _3fc=_3f4.headers,_3fd;if(_3fc){for(var hdr in _3fc){if(hdr.toLowerCase()==="content-type"){_3fd=_3fc[hdr];}else{if(_3fc[hdr]){_3f8.setRequestHeader(hdr,_3fc[hdr]);}}}}if(_3fd&&_3fd!==false){_3f8.setRequestHeader("Content-Type",_3fd);}if(!_3fc||!("X-Requested-With" in _3fc)){_3f8.setRequestHeader("X-Requested-With","XMLHttpRequest");}if(util.notify){util.notify.emit("send",_3f6,dfd.promise.cancel);}_3f8.send(data);}catch(e){dfd.reject(e);}_3db(dfd);_3f8=null;return _3f5?dfd:dfd.promise;};xhr._create=function(){throw new Error("XMLHTTP not available");};if(has("native-xhr")&&!has("dojo-force-activex-xhr")){xhr._create=function(){return new XMLHttpRequest();};}else{if(has("activex")){try{new ActiveXObject("Msxml2.XMLHTTP");xhr._create=function(){return new ActiveXObject("Msxml2.XMLHTTP");};}catch(e){try{new ActiveXObject("Microsoft.XMLHTTP");xhr._create=function(){return new ActiveXObject("Microsoft.XMLHTTP");};}catch(e){}}}}util.addCommonMethods(xhr);return xhr;});},"dojo/text":function(){define(["./_base/kernel","require","./has","./_base/xhr"],function(dojo,_3fe,has,xhr){var _3ff;if(1){_3ff=function(url,sync,load){xhr("GET",{url:url,sync:!!sync,load:load,headers:dojo.config.textPluginHeaders||{}});};}else{if(_3fe.getText){_3ff=_3fe.getText;}else{console.error("dojo/text plugin failed to load because loader does not support getText");}}var _400={},_401=function(text){if(text){text=text.replace(/^\s*<\?xml(\s)+version=[\'\"](\d)*.(\d)*[\'\"](\s)*\?>/im,"");var _402=text.match(/<body[^>]*>\s*([\s\S]+)\s*<\/body>/im);if(_402){text=_402[1];}}else{text="";}return text;},_403={},_404={};dojo.cache=function(_405,url,_406){var key;if(typeof _405=="string"){if(/\//.test(_405)){key=_405;_406=url;}else{key=_3fe.toUrl(_405.replace(/\./g,"/")+(url?("/"+url):""));}}else{key=_405+"";_406=url;}var val=(_406!=undefined&&typeof _406!="string")?_406.value:_406,_407=_406&&_406.sanitize;if(typeof val=="string"){_400[key]=val;return _407?_401(val):val;}else{if(val===null){delete _400[key];return null;}else{if(!(key in _400)){_3ff(key,true,function(text){_400[key]=text;});}return _407?_401(_400[key]):_400[key];}}};return {dynamic:true,normalize:function(id,_408){var _409=id.split("!"),url=_409[0];return (/^\./.test(url)?_408(url):url)+(_409[1]?"!"+_409[1]:"");},load:function(id,_40a,load){var _40b=id.split("!"),_40c=_40b.length>1,_40d=_40b[0],url=_40a.toUrl(_40b[0]),_40e="url:"+url,text=_403,_40f=function(text){load(_40c?_401(text):text);};if(_40d in _400){text=_400[_40d];}else{if(_40e in _40a.cache){text=_40a.cache[_40e];}else{if(url in _400){text=_400[url];}}}if(text===_403){if(_404[url]){_404[url].push(_40f);}else{var _410=_404[url]=[_40f];_3ff(url,!_40a.async,function(text){_400[_40d]=_400[url]=text;for(var i=0;i<_410.length;){_410[i++](text);}delete _404[url];});}}else{_40f(text);}}};});},"dojo/keys":function(){define("dojo/keys",["./_base/kernel","./sniff"],function(dojo,has){return dojo.keys={BACKSPACE:8,TAB:9,CLEAR:12,ENTER:13,SHIFT:16,CTRL:17,ALT:18,META:has("webkit")?91:224,PAUSE:19,CAPS_LOCK:20,ESCAPE:27,SPACE:32,PAGE_UP:33,PAGE_DOWN:34,END:35,HOME:36,LEFT_ARROW:37,UP_ARROW:38,RIGHT_ARROW:39,DOWN_ARROW:40,INSERT:45,DELETE:46,HELP:47,LEFT_WINDOW:91,RIGHT_WINDOW:92,SELECT:93,NUMPAD_0:96,NUMPAD_1:97,NUMPAD_2:98,NUMPAD_3:99,NUMPAD_4:100,NUMPAD_5:101,NUMPAD_6:102,NUMPAD_7:103,NUMPAD_8:104,NUMPAD_9:105,NUMPAD_MULTIPLY:106,NUMPAD_PLUS:107,NUMPAD_ENTER:108,NUMPAD_MINUS:109,NUMPAD_PERIOD:110,NUMPAD_DIVIDE:111,F1:112,F2:113,F3:114,F4:115,F5:116,F6:117,F7:118,F8:119,F9:120,F10:121,F11:122,F12:123,F13:124,F14:125,F15:126,NUM_LOCK:144,SCROLL_LOCK:145,UP_DPAD:175,DOWN_DPAD:176,LEFT_DPAD:177,RIGHT_DPAD:178,copyKey:has("mac")&&!has("air")?(has("safari")?91:224):17};});},"dojo/domReady":function(){define(["./has"],function(has){var _411=this,doc=document,_412={"loaded":1,"complete":1},_413=typeof doc.readyState!="string",_414=!!_412[doc.readyState];if(_413){doc.readyState="loading";}if(!_414){var _415=[],_416=[],_417=function(evt){evt=evt||_411.event;if(_414||(evt.type=="readystatechange"&&!_412[doc.readyState])){return;}_414=1;if(_413){doc.readyState="complete";}while(_415.length){(_415.shift())(doc);}},on=function(node,_418){node.addEventListener(_418,_417,false);_415.push(function(){node.removeEventListener(_418,_417,false);});};if(!has("dom-addeventlistener")){on=function(node,_419){_419="on"+_419;node.attachEvent(_419,_417);_415.push(function(){node.detachEvent(_419,_417);});};var div=doc.createElement("div");try{if(div.doScroll&&_411.frameElement===null){_416.push(function(){try{div.doScroll("left");return 1;}catch(e){}});}}catch(e){}}on(doc,"DOMContentLoaded");on(_411,"load");if("onreadystatechange" in doc){on(doc,"readystatechange");}else{if(!_413){_416.push(function(){return _412[doc.readyState];});}}if(_416.length){var _41a=function(){if(_414){return;}var i=_416.length;while(i--){if(_416[i]()){_417("poller");return;}}setTimeout(_41a,30);};_41a();}}function _41b(_41c){if(_414){_41c(doc);}else{_415.push(_41c);}};_41b.load=function(id,req,load){_41b(load);};return _41b;});},"dojo/_base/lang":function(){define("dojo/_base/lang",["./kernel","../has","../sniff"],function(dojo,has){has.add("bug-for-in-skips-shadowed",function(){for(var i in {toString:1}){return 0;}return 1;});var _41d=has("bug-for-in-skips-shadowed")?"hasOwnProperty.valueOf.isPrototypeOf.propertyIsEnumerable.toLocaleString.toString.constructor".split("."):[],_41e=_41d.length,_41f=function(_420,_421,_422){var p,i=0,_423=dojo.global;if(!_422){if(!_420.length){return _423;}else{p=_420[i++];try{_422=dojo.scopeMap[p]&&dojo.scopeMap[p][1];}catch(e){}_422=_422||(p in _423?_423[p]:(_421?_423[p]={}:undefined));}}while(_422&&(p=_420[i++])){_422=(p in _422?_422[p]:(_421?_422[p]={}:undefined));}return _422;},opts=Object.prototype.toString,_424=function(obj,_425,_426){return (_426||[]).concat(Array.prototype.slice.call(obj,_425||0));},_427=/\{([^\}]+)\}/g;var lang={_extraNames:_41d,_mixin:function(dest,_428,_429){var name,s,i,_42a={};for(name in _428){s=_428[name];if(!(name in dest)||(dest[name]!==s&&(!(name in _42a)||_42a[name]!==s))){dest[name]=_429?_429(s):s;}}if(has("bug-for-in-skips-shadowed")){if(_428){for(i=0;i<_41e;++i){name=_41d[i];s=_428[name];if(!(name in dest)||(dest[name]!==s&&(!(name in _42a)||_42a[name]!==s))){dest[name]=_429?_429(s):s;}}}}return dest;},mixin:function(dest,_42b){if(!dest){dest={};}for(var i=1,l=arguments.length;i<l;i++){lang._mixin(dest,arguments[i]);}return dest;},setObject:function(name,_42c,_42d){var _42e=name.split("."),p=_42e.pop(),obj=_41f(_42e,true,_42d);return obj&&p?(obj[p]=_42c):undefined;},getObject:function(name,_42f,_430){return _41f(name.split("."),_42f,_430);},exists:function(name,obj){return lang.getObject(name,false,obj)!==undefined;},isString:function(it){return (typeof it=="string"||it instanceof String);},isArray:function(it){return it&&(it instanceof Array||typeof it=="array");},isFunction:function(it){return opts.call(it)==="[object Function]";},isObject:function(it){return it!==undefined&&(it===null||typeof it=="object"||lang.isArray(it)||lang.isFunction(it));},isArrayLike:function(it){return it&&it!==undefined&&!lang.isString(it)&&!lang.isFunction(it)&&!(it.tagName&&it.tagName.toLowerCase()=="form")&&(lang.isArray(it)||isFinite(it.length));},isAlien:function(it){return it&&!lang.isFunction(it)&&/\{\s*\[native code\]\s*\}/.test(String(it));},extend:function(ctor,_431){for(var i=1,l=arguments.length;i<l;i++){lang._mixin(ctor.prototype,arguments[i]);}return ctor;},_hitchArgs:function(_432,_433){var pre=lang._toArray(arguments,2);var _434=lang.isString(_433);return function(){var args=lang._toArray(arguments);var f=_434?(_432||dojo.global)[_433]:_433;return f&&f.apply(_432||this,pre.concat(args));};},hitch:function(_435,_436){if(arguments.length>2){return lang._hitchArgs.apply(dojo,arguments);}if(!_436){_436=_435;_435=null;}if(lang.isString(_436)){_435=_435||dojo.global;if(!_435[_436]){throw (["lang.hitch: scope[\"",_436,"\"] is null (scope=\"",_435,"\")"].join(""));}return function(){return _435[_436].apply(_435,arguments||[]);};}return !_435?_436:function(){return _436.apply(_435,arguments||[]);};},delegate:(function(){function TMP(){};return function(obj,_437){TMP.prototype=obj;var tmp=new TMP();TMP.prototype=null;if(_437){lang._mixin(tmp,_437);}return tmp;};})(),_toArray:has("ie")?(function(){function slow(obj,_438,_439){var arr=_439||[];for(var x=_438||0;x<obj.length;x++){arr.push(obj[x]);}return arr;};return function(obj){return ((obj.item)?slow:_424).apply(this,arguments);};})():_424,partial:function(_43a){var arr=[null];return lang.hitch.apply(dojo,arr.concat(lang._toArray(arguments)));},clone:function(src){if(!src||typeof src!="object"||lang.isFunction(src)){return src;}if(src.nodeType&&"cloneNode" in src){return src.cloneNode(true);}if(src instanceof Date){return new Date(src.getTime());}if(src instanceof RegExp){return new RegExp(src);}var r,i,l;if(lang.isArray(src)){r=[];for(i=0,l=src.length;i<l;++i){if(i in src){r.push(lang.clone(src[i]));}}}else{r=src.constructor?new src.constructor():{};}return lang._mixin(r,src,lang.clone);},trim:String.prototype.trim?function(str){return str.trim();}:function(str){return str.replace(/^\s\s*/,"").replace(/\s\s*$/,"");},replace:function(tmpl,map,_43b){return tmpl.replace(_43b||_427,lang.isFunction(map)?map:function(_43c,k){return lang.getObject(k,false,map);});}};1&&lang.mixin(dojo,lang);return lang;});},"dojo/request/util":function(){define("dojo/request/util",["exports","../errors/RequestError","../errors/CancelError","../Deferred","../io-query","../_base/array","../_base/lang"],function(_43d,_43e,_43f,_440,_441,_442,lang){_43d.deepCopy=function deepCopy(_443,_444){for(var name in _444){var tval=_443[name],sval=_444[name];if(tval!==sval){if(tval&&typeof tval==="object"&&sval&&typeof sval==="object"){_43d.deepCopy(tval,sval);}else{_443[name]=sval;}}}return _443;};_43d.deepCreate=function deepCreate(_445,_446){_446=_446||{};var _447=lang.delegate(_445),name,_448;for(name in _445){_448=_445[name];if(_448&&typeof _448==="object"){_447[name]=_43d.deepCreate(_448,_446[name]);}}return _43d.deepCopy(_447,_446);};var _449=Object.freeze||function(obj){return obj;};function _44a(_44b){return _449(_44b);};_43d.deferred=function deferred(_44c,_44d,_44e,_44f,_450,last){var def=new _440(function(_451){_44d&&_44d(def,_44c);if(!_451||!(_451 instanceof _43e)&&!(_451 instanceof _43f)){return new _43f("Request canceled",_44c);}return _451;});def.response=_44c;def.isValid=_44e;def.isReady=_44f;def.handleResponse=_450;function _452(_453){_453.response=_44c;throw _453;};var _454=def.then(_44a).otherwise(_452);if(_43d.notify){_454.then(lang.hitch(_43d.notify,"emit","load"),lang.hitch(_43d.notify,"emit","error"));}var _455=_454.then(function(_456){return _456.data||_456.text;});var _457=_449(lang.delegate(_455,{response:_454}));if(last){def.then(function(_458){last.call(def,_458);},function(_459){last.call(def,_44c,_459);});}def.promise=_457;def.then=_457.then;return def;};_43d.addCommonMethods=function addCommonMethods(_45a,_45b){_442.forEach(_45b||["GET","POST","PUT","DELETE"],function(_45c){_45a[(_45c==="DELETE"?"DEL":_45c).toLowerCase()]=function(url,_45d){_45d=lang.delegate(_45d||{});_45d.method=_45c;return _45a(url,_45d);};});};_43d.parseArgs=function parseArgs(url,_45e,_45f){var data=_45e.data,_460=_45e.query;if(data&&!_45f){if(typeof data==="object"){_45e.data=_441.objectToQuery(data);}}if(_460){if(typeof _460==="object"){_460=_441.objectToQuery(_460);}if(_45e.preventCache){_460+=(_460?"&":"")+"request.preventCache="+(+(new Date));}}else{if(_45e.preventCache){_460="request.preventCache="+(+(new Date));}}if(url&&_460){url+=(~url.indexOf("?")?"&":"?")+_460;}return {url:url,options:_45e,getHeader:function(_461){return null;}};};_43d.checkStatus=function(stat){stat=stat||0;return (stat>=200&&stat<300)||stat===304||stat===1223||!stat;};});},"dojo/Evented":function(){define("dojo/Evented",["./aspect","./on"],function(_462,on){"use strict";var _463=_462.after;function _464(){};_464.prototype={on:function(type,_465){return on.parse(this,type,_465,function(_466,type){return _463(_466,"on"+type,_465,true);});},emit:function(type,_467){var args=[this];args.push.apply(args,arguments);return on.emit.apply(on,args);}};return _464;});},"dojo/mouse":function(){define("dojo/mouse",["./_base/kernel","./on","./has","./dom","./_base/window"],function(dojo,on,has,dom,win){has.add("dom-quirks",win.doc&&win.doc.compatMode=="BackCompat");has.add("events-mouseenter",win.doc&&"onmouseenter" in win.doc.createElement("div"));has.add("events-mousewheel",win.doc&&"onmousewheel" in win.doc);var _468;if(has("dom-quirks")||!has("dom-addeventlistener")){_468={LEFT:1,MIDDLE:4,RIGHT:2,isButton:function(e,_469){return e.button&_469;},isLeft:function(e){return e.button&1;},isMiddle:function(e){return e.button&4;},isRight:function(e){return e.button&2;}};}else{_468={LEFT:0,MIDDLE:1,RIGHT:2,isButton:function(e,_46a){return e.button==_46a;},isLeft:function(e){return e.button==0;},isMiddle:function(e){return e.button==1;},isRight:function(e){return e.button==2;}};}dojo.mouseButtons=_468;function _46b(type,_46c){var _46d=function(node,_46e){return on(node,type,function(evt){if(_46c){return _46c(evt,_46e);}if(!dom.isDescendant(evt.relatedTarget,node)){return _46e.call(this,evt);}});};_46d.bubble=function(_46f){return _46b(type,function(evt,_470){var _471=_46f(evt.target);var _472=evt.relatedTarget;if(_471&&(_471!=(_472&&_472.nodeType==1&&_46f(_472)))){return _470.call(_471,evt);}});};return _46d;};var _473;if(has("events-mousewheel")){_473="mousewheel";}else{_473=function(node,_474){return on(node,"DOMMouseScroll",function(evt){evt.wheelDelta=-evt.detail;_474.call(this,evt);});};}return {_eventHandler:_46b,enter:_46b("mouseover"),leave:_46b("mouseout"),wheel:_473,isLeft:_468.isLeft,isMiddle:_468.isMiddle,isRight:_468.isRight};});},"dojo/_base/xhr":function(){define("dojo/_base/xhr",["./kernel","./sniff","require","../io-query","../dom","../dom-form","./Deferred","./config","./json","./lang","./array","../on","../aspect","../request/watch","../request/xhr","../request/util"],function(dojo,has,_475,ioq,dom,_476,_477,_478,json,lang,_479,on,_47a,_47b,_47c,util){dojo._xhrObj=_47c._create;var cfg=dojo.config;dojo.objectToQuery=ioq.objectToQuery;dojo.queryToObject=ioq.queryToObject;dojo.fieldToObject=_476.fieldToObject;dojo.formToObject=_476.toObject;dojo.formToQuery=_476.toQuery;dojo.formToJson=_476.toJson;dojo._blockAsync=false;var _47d=dojo._contentHandlers=dojo.contentHandlers={"text":function(xhr){return xhr.responseText;},"json":function(xhr){return json.fromJson(xhr.responseText||null);},"json-comment-filtered":function(xhr){if(!_478.useCommentedJson){console.warn("Consider using the standard mimetype:application/json."+" json-commenting can introduce security issues. To"+" decrease the chances of hijacking, use the standard the 'json' handler and"+" prefix your json with: {}&&\n"+"Use djConfig.useCommentedJson=true to turn off this message.");}var _47e=xhr.responseText;var _47f=_47e.indexOf("/*");var _480=_47e.lastIndexOf("*/");if(_47f==-1||_480==-1){throw new Error("JSON was not comment filtered");}return json.fromJson(_47e.substring(_47f+2,_480));},"javascript":function(xhr){return dojo.eval(xhr.responseText);},"xml":function(xhr){var _481=xhr.responseXML;if(has("ie")){if((!_481||!_481.documentElement)){var ms=function(n){return "MSXML"+n+".DOMDocument";};var dp=["Microsoft.XMLDOM",ms(6),ms(4),ms(3),ms(2)];_479.some(dp,function(p){try{var dom=new ActiveXObject(p);dom.async=false;dom.loadXML(xhr.responseText);_481=dom;}catch(e){return false;}return true;});}}return _481;},"json-comment-optional":function(xhr){if(xhr.responseText&&/^[^{\[]*\/\*/.test(xhr.responseText)){return _47d["json-comment-filtered"](xhr);}else{return _47d["json"](xhr);}}};dojo._ioSetArgs=function(args,_482,_483,_484){var _485={args:args,url:args.url};var _486=null;if(args.form){var form=dom.byId(args.form);var _487=form.getAttributeNode("action");_485.url=_485.url||(_487?_487.value:null);_486=_476.toObject(form);}var _488=[{}];if(_486){_488.push(_486);}if(args.content){_488.push(args.content);}if(args.preventCache){_488.push({"dojo.preventCache":new Date().valueOf()});}_485.query=ioq.objectToQuery(lang.mixin.apply(null,_488));_485.handleAs=args.handleAs||"text";var d=new _477(function(dfd){dfd.canceled=true;_482&&_482(dfd);var err=dfd.ioArgs.error;if(!err){err=new Error("request cancelled");err.dojoType="cancel";dfd.ioArgs.error=err;}return err;});d.addCallback(_483);var ld=args.load;if(ld&&lang.isFunction(ld)){d.addCallback(function(_489){return ld.call(args,_489,_485);});}var err=args.error;if(err&&lang.isFunction(err)){d.addErrback(function(_48a){return err.call(args,_48a,_485);});}var _48b=args.handle;if(_48b&&lang.isFunction(_48b)){d.addBoth(function(_48c){return _48b.call(args,_48c,_485);});}d.addErrback(function(_48d){return _484(_48d,d);});if(cfg.ioPublish&&dojo.publish&&_485.args.ioPublish!==false){d.addCallbacks(function(res){dojo.publish("/dojo/io/load",[d,res]);return res;},function(res){dojo.publish("/dojo/io/error",[d,res]);return res;});d.addBoth(function(res){dojo.publish("/dojo/io/done",[d,res]);return res;});}d.ioArgs=_485;return d;};var _48e=function(dfd){var ret=_47d[dfd.ioArgs.handleAs](dfd.ioArgs.xhr);return ret===undefined?null:ret;};var _48f=function(_490,dfd){if(!dfd.ioArgs.args.failOk){console.error(_490);}return _490;};var _491=function(dfd){if(_492<=0){_492=0;if(cfg.ioPublish&&dojo.publish&&(!dfd||dfd&&dfd.ioArgs.args.ioPublish!==false)){dojo.publish("/dojo/io/stop");}}};var _492=0;_47a.after(_47b,"_onAction",function(){_492-=1;});_47a.after(_47b,"_onInFlight",_491);dojo._ioCancelAll=_47b.cancelAll;dojo._ioNotifyStart=function(dfd){if(cfg.ioPublish&&dojo.publish&&dfd.ioArgs.args.ioPublish!==false){if(!_492){dojo.publish("/dojo/io/start");}_492+=1;dojo.publish("/dojo/io/send",[dfd]);}};dojo._ioWatch=function(dfd,_493,_494,_495){var args=dfd.ioArgs.options=dfd.ioArgs.args;lang.mixin(dfd,{response:dfd.ioArgs,isValid:function(_496){return _493(dfd);},isReady:function(_497){return _494(dfd);},handleResponse:function(_498){return _495(dfd);}});_47b(dfd);_491(dfd);};var _499="application/x-www-form-urlencoded";dojo._ioAddQueryToUrl=function(_49a){if(_49a.query.length){_49a.url+=(_49a.url.indexOf("?")==-1?"?":"&")+_49a.query;_49a.query=null;}};dojo.xhr=function(_49b,args,_49c){var rDfd;var dfd=dojo._ioSetArgs(args,function(dfd){rDfd&&rDfd.cancel();},_48e,_48f);var _49d=dfd.ioArgs;if("postData" in args){_49d.query=args.postData;}else{if("putData" in args){_49d.query=args.putData;}else{if("rawBody" in args){_49d.query=args.rawBody;}else{if((arguments.length>2&&!_49c)||"POST|PUT".indexOf(_49b.toUpperCase())===-1){dojo._ioAddQueryToUrl(_49d);}}}}var _49e={method:_49b,handleAs:"text",timeout:args.timeout,withCredentials:args.withCredentials,ioArgs:_49d};if(typeof args.headers!=="undefined"){_49e.headers=args.headers;}if(typeof args.contentType!=="undefined"){if(!_49e.headers){_49e.headers={};}_49e.headers["Content-Type"]=args.contentType;}if(typeof _49d.query!=="undefined"){_49e.data=_49d.query;}if(typeof args.sync!=="undefined"){_49e.sync=args.sync;}dojo._ioNotifyStart(dfd);try{rDfd=_47c(_49d.url,_49e,true);}catch(e){dfd.cancel();return dfd;}dfd.ioArgs.xhr=rDfd.response.xhr;rDfd.then(function(){dfd.resolve(dfd);}).otherwise(function(_49f){_49d.error=_49f;dfd.reject(_49f);});return dfd;};dojo.xhrGet=function(args){return dojo.xhr("GET",args);};dojo.rawXhrPost=dojo.xhrPost=function(args){return dojo.xhr("POST",args,true);};dojo.rawXhrPut=dojo.xhrPut=function(args){return dojo.xhr("PUT",args,true);};dojo.xhrDelete=function(args){return dojo.xhr("DELETE",args);};dojo._isDocumentOk=function(x){return util.checkStatus(x.status);};dojo._getText=function(url){var _4a0;dojo.xhrGet({url:url,sync:true,load:function(text){_4a0=text;}});return _4a0;};lang.mixin(dojo.xhr,{_xhrObj:dojo._xhrObj,fieldToObject:_476.fieldToObject,formToObject:_476.toObject,objectToQuery:ioq.objectToQuery,formToQuery:_476.toQuery,formToJson:_476.toJson,queryToObject:ioq.queryToObject,contentHandlers:_47d,_ioSetArgs:dojo._ioSetArgs,_ioCancelAll:dojo._ioCancelAll,_ioNotifyStart:dojo._ioNotifyStart,_ioWatch:dojo._ioWatch,_ioAddQueryToUrl:dojo._ioAddQueryToUrl,_isDocumentOk:dojo._isDocumentOk,_getText:dojo._getText,get:dojo.xhrGet,post:dojo.xhrPost,put:dojo.xhrPut,del:dojo.xhrDelete});return dojo.xhr;});},"dojo/topic":function(){define("dojo/topic",["./Evented"],function(_4a1){var hub=new _4a1;return {publish:function(_4a2,_4a3){return hub.emit.apply(hub,arguments);},subscribe:function(_4a4,_4a5){return hub.on.apply(hub,arguments);}};});},"dojo/loadInit":function(){define("dojo/loadInit",["./_base/loader"],function(_4a6){return {dynamic:0,normalize:function(id){return id;},load:_4a6.loadInit};});},"dojo/_base/unload":function(){define(["./kernel","./lang","../on"],function(dojo,lang,on){var win=window;var _4a7={addOnWindowUnload:function(obj,_4a8){if(!dojo.windowUnloaded){on(win,"unload",(dojo.windowUnloaded=function(){}));}on(win,"unload",lang.hitch(obj,_4a8));},addOnUnload:function(obj,_4a9){on(win,"beforeunload",lang.hitch(obj,_4a9));}};dojo.addOnWindowUnload=_4a7.addOnWindowUnload;dojo.addOnUnload=_4a7.addOnUnload;return _4a7;});},"dojo/Deferred":function(){define(["./has","./_base/lang","./errors/CancelError","./promise/Promise","./promise/instrumentation"],function(has,lang,_4aa,_4ab,_4ac){"use strict";var _4ad=0,_4ae=1,_4af=2;var _4b0="This deferred has already been fulfilled.";var _4b1=Object.freeze||function(){};var _4b2=function(_4b3,type,_4b4,_4b5,_4b6){if(1){if(type===_4af&&_4b7.instrumentRejected&&_4b3.length===0){_4b7.instrumentRejected(_4b4,false,_4b5,_4b6);}}for(var i=0;i<_4b3.length;i++){_4b8(_4b3[i],type,_4b4,_4b5);}};var _4b8=function(_4b9,type,_4ba,_4bb){var func=_4b9[type];var _4bc=_4b9.deferred;if(func){try{var _4bd=func(_4ba);if(_4bd&&typeof _4bd.then==="function"){_4b9.cancel=_4bd.cancel;_4bd.then(_4be(_4bc,_4ae),_4be(_4bc,_4af),_4be(_4bc,_4ad));return;}_4bf(_4bc,_4ae,_4bd);}catch(error){_4bf(_4bc,_4af,error);}}else{_4bf(_4bc,type,_4ba);}if(1){if(type===_4af&&_4b7.instrumentRejected){_4b7.instrumentRejected(_4ba,!!func,_4bb,_4bc.promise);}}};var _4be=function(_4c0,type){return function(_4c1){_4bf(_4c0,type,_4c1);};};var _4bf=function(_4c2,type,_4c3){if(!_4c2.isCanceled()){switch(type){case _4ad:_4c2.progress(_4c3);break;case _4ae:_4c2.resolve(_4c3);break;case _4af:_4c2.reject(_4c3);break;}}};var _4b7=function(_4c4){var _4c5=this.promise=new _4ab();var _4c6=this;var _4c7,_4c8,_4c9;var _4ca=false;var _4cb=[];if(1&&Error.captureStackTrace){Error.captureStackTrace(_4c6,_4b7);Error.captureStackTrace(_4c5,_4b7);}this.isResolved=_4c5.isResolved=function(){return _4c7===_4ae;};this.isRejected=_4c5.isRejected=function(){return _4c7===_4af;};this.isFulfilled=_4c5.isFulfilled=function(){return !!_4c7;};this.isCanceled=_4c5.isCanceled=function(){return _4ca;};this.progress=function(_4cc,_4cd){if(!_4c7){_4b2(_4cb,_4ad,_4cc,null,_4c6);return _4c5;}else{if(_4cd===true){throw new Error(_4b0);}else{return _4c5;}}};this.resolve=function(_4ce,_4cf){if(!_4c7){_4b2(_4cb,_4c7=_4ae,_4c8=_4ce,null,_4c6);_4cb=null;return _4c5;}else{if(_4cf===true){throw new Error(_4b0);}else{return _4c5;}}};var _4d0=this.reject=function(_4d1,_4d2){if(!_4c7){if(1&&Error.captureStackTrace){Error.captureStackTrace(_4c9={},_4d0);}_4b2(_4cb,_4c7=_4af,_4c8=_4d1,_4c9,_4c6);_4cb=null;return _4c5;}else{if(_4d2===true){throw new Error(_4b0);}else{return _4c5;}}};this.then=_4c5.then=function(_4d3,_4d4,_4d5){var _4d6=[_4d5,_4d3,_4d4];_4d6.cancel=_4c5.cancel;_4d6.deferred=new _4b7(function(_4d7){return _4d6.cancel&&_4d6.cancel(_4d7);});if(_4c7&&!_4cb){_4b8(_4d6,_4c7,_4c8,_4c9);}else{_4cb.push(_4d6);}return _4d6.deferred.promise;};this.cancel=_4c5.cancel=function(_4d8,_4d9){if(!_4c7){if(_4c4){var _4da=_4c4(_4d8);_4d8=typeof _4da==="undefined"?_4d8:_4da;}_4ca=true;if(!_4c7){if(typeof _4d8==="undefined"){_4d8=new _4aa();}_4d0(_4d8);return _4d8;}else{if(_4c7===_4af&&_4c8===_4d8){return _4d8;}}}else{if(_4d9===true){throw new Error(_4b0);}}};_4b1(_4c5);};_4b7.prototype.toString=function(){return "[object Deferred]";};if(_4ac){_4ac(_4b7);}return _4b7;});},"dojo/_base/NodeList":function(){define("dojo/_base/NodeList",["./kernel","../query","./array","./html","../NodeList-dom"],function(dojo,_4db,_4dc){var _4dd=_4db.NodeList,nlp=_4dd.prototype;nlp.connect=_4dd._adaptAsForEach(function(){return dojo.connect.apply(this,arguments);});nlp.coords=_4dd._adaptAsMap(dojo.coords);_4dd.events=["blur","focus","change","click","error","keydown","keypress","keyup","load","mousedown","mouseenter","mouseleave","mousemove","mouseout","mouseover","mouseup","submit"];_4dc.forEach(_4dd.events,function(evt){var _4de="on"+evt;nlp[_4de]=function(a,b){return this.connect(_4de,a,b);};});dojo.NodeList=_4dd;return _4dd;});},"dojo/_base/Color":function(){define(["./kernel","./lang","./array","./config"],function(dojo,lang,_4df,_4e0){var _4e1=dojo.Color=function(_4e2){if(_4e2){this.setColor(_4e2);}};_4e1.named={"black":[0,0,0],"silver":[192,192,192],"gray":[128,128,128],"white":[255,255,255],"maroon":[128,0,0],"red":[255,0,0],"purple":[128,0,128],"fuchsia":[255,0,255],"green":[0,128,0],"lime":[0,255,0],"olive":[128,128,0],"yellow":[255,255,0],"navy":[0,0,128],"blue":[0,0,255],"teal":[0,128,128],"aqua":[0,255,255],"transparent":_4e0.transparentColor||[0,0,0,0]};lang.extend(_4e1,{r:255,g:255,b:255,a:1,_set:function(r,g,b,a){var t=this;t.r=r;t.g=g;t.b=b;t.a=a;},setColor:function(_4e3){if(lang.isString(_4e3)){_4e1.fromString(_4e3,this);}else{if(lang.isArray(_4e3)){_4e1.fromArray(_4e3,this);}else{this._set(_4e3.r,_4e3.g,_4e3.b,_4e3.a);if(!(_4e3 instanceof _4e1)){this.sanitize();}}}return this;},sanitize:function(){return this;},toRgb:function(){var t=this;return [t.r,t.g,t.b];},toRgba:function(){var t=this;return [t.r,t.g,t.b,t.a];},toHex:function(){var arr=_4df.map(["r","g","b"],function(x){var s=this[x].toString(16);return s.length<2?"0"+s:s;},this);return "#"+arr.join("");},toCss:function(_4e4){var t=this,rgb=t.r+", "+t.g+", "+t.b;return (_4e4?"rgba("+rgb+", "+t.a:"rgb("+rgb)+")";},toString:function(){return this.toCss(true);}});_4e1.blendColors=dojo.blendColors=function(_4e5,end,_4e6,obj){var t=obj||new _4e1();_4df.forEach(["r","g","b","a"],function(x){t[x]=_4e5[x]+(end[x]-_4e5[x])*_4e6;if(x!="a"){t[x]=Math.round(t[x]);}});return t.sanitize();};_4e1.fromRgb=dojo.colorFromRgb=function(_4e7,obj){var m=_4e7.toLowerCase().match(/^rgba?\(([\s\.,0-9]+)\)/);return m&&_4e1.fromArray(m[1].split(/\s*,\s*/),obj);};_4e1.fromHex=dojo.colorFromHex=function(_4e8,obj){var t=obj||new _4e1(),bits=(_4e8.length==4)?4:8,mask=(1<<bits)-1;_4e8=Number("0x"+_4e8.substr(1));if(isNaN(_4e8)){return null;}_4df.forEach(["b","g","r"],function(x){var c=_4e8&mask;_4e8>>=bits;t[x]=bits==4?17*c:c;});t.a=1;return t;};_4e1.fromArray=dojo.colorFromArray=function(a,obj){var t=obj||new _4e1();t._set(Number(a[0]),Number(a[1]),Number(a[2]),Number(a[3]));if(isNaN(t.a)){t.a=1;}return t.sanitize();};_4e1.fromString=dojo.colorFromString=function(str,obj){var a=_4e1.named[str];return a&&_4e1.fromArray(a,obj)||_4e1.fromRgb(str,obj)||_4e1.fromHex(str,obj);};return _4e1;});},"dojo/promise/instrumentation":function(){define(["./tracer","../has","../_base/lang","../_base/array"],function(_4e9,has,lang,_4ea){function _4eb(_4ec,_4ed,_4ee){var _4ef="";if(_4ec&&_4ec.stack){_4ef+=_4ec.stack;}if(_4ed&&_4ed.stack){_4ef+="\n ----------------------------------------\n rejected"+_4ed.stack.split("\n").slice(1).join("\n").replace(/^\s+/," ");}if(_4ee&&_4ee.stack){_4ef+="\n ----------------------------------------\n"+_4ee.stack;}console.error(_4ec,_4ef);};function _4f0(_4f1,_4f2,_4f3,_4f4){if(!_4f2){_4eb(_4f1,_4f3,_4f4);}};var _4f5=[];var _4f6=false;var _4f7=1000;function _4f8(_4f9,_4fa,_4fb,_4fc){if(_4fa){_4ea.some(_4f5,function(obj,ix){if(obj.error===_4f9){_4f5.splice(ix,1);return true;}});}else{if(!_4ea.some(_4f5,function(obj){return obj.error===_4f9;})){_4f5.push({error:_4f9,rejection:_4fb,deferred:_4fc,timestamp:new Date().getTime()});}}if(!_4f6){_4f6=setTimeout(_4fd,_4f7);}};function _4fd(){var now=new Date().getTime();var _4fe=now-_4f7;_4f5=_4ea.filter(_4f5,function(obj){if(obj.timestamp<_4fe){_4eb(obj.error,obj.rejection,obj.deferred);return false;}return true;});if(_4f5.length){_4f6=setTimeout(_4fd,_4f5[0].timestamp+_4f7-now);}};return function(_4ff){var _500=has("config-useDeferredInstrumentation");if(_500){_4e9.on("resolved",lang.hitch(console,"log","resolved"));_4e9.on("rejected",lang.hitch(console,"log","rejected"));_4e9.on("progress",lang.hitch(console,"log","progress"));var args=[];if(typeof _500==="string"){args=_500.split(",");_500=args.shift();}if(_500==="report-rejections"){_4ff.instrumentRejected=_4f0;}else{if(_500==="report-unhandled-rejections"||_500===true||_500===1){_4ff.instrumentRejected=_4f8;_4f7=parseInt(args[0],10)||_4f7;}else{throw new Error("Unsupported instrumentation usage <"+_500+">");}}}};});},"dojo/selector/_loader":function(){define(["../has","require"],function(has,_501){"use strict";var _502=document.createElement("div");has.add("dom-qsa2.1",!!_502.querySelectorAll);has.add("dom-qsa3",function(){try{_502.innerHTML="<p class='TEST'></p>";return _502.querySelectorAll(".TEST:empty").length==1;}catch(e){}});var _503;var acme="./acme",lite="./lite";return {load:function(id,_504,_505,_506){var req=_501;id=id=="default"?has("config-selectorEngine")||"css3":id;id=id=="css2"||id=="lite"?lite:id=="css2.1"?has("dom-qsa2.1")?lite:acme:id=="css3"?has("dom-qsa3")?lite:acme:id=="acme"?acme:(req=_504)&&id;if(id.charAt(id.length-1)=="?"){id=id.substring(0,id.length-1);var _507=true;}if(_507&&(has("dom-compliant-qsa")||_503)){return _505(_503);}req([id],function(_508){if(id!="./lite"){_503=_508;}_505(_508);});}};});},"dojo/promise/Promise":function(){define(["../_base/lang"],function(lang){"use strict";function _509(){throw new TypeError("abstract");};return lang.extend(function Promise(){},{then:function(_50a,_50b,_50c){_509();},cancel:function(_50d,_50e){_509();},isResolved:function(){_509();},isRejected:function(){_509();},isFulfilled:function(){_509();},isCanceled:function(){_509();},always:function(_50f){return this.then(_50f,_50f);},otherwise:function(_510){return this.then(null,_510);},trace:function(){return this;},traceRejected:function(){return this;},toString:function(){return "[object Promise]";}});});},"dojo/request/watch":function(){define(["./util","../errors/RequestTimeoutError","../errors/CancelError","../_base/array","../_base/window","../has!host-browser?dom-addeventlistener?:../on:"],function(util,_511,_512,_513,win,on){var _514=null,_515=[];function _516(){var now=+(new Date);for(var i=0,dfd;i<_515.length&&(dfd=_515[i]);i++){var _517=dfd.response,_518=_517.options;if((dfd.isCanceled&&dfd.isCanceled())||(dfd.isValid&&!dfd.isValid(_517))){_515.splice(i--,1);_519._onAction&&_519._onAction();}else{if(dfd.isReady&&dfd.isReady(_517)){_515.splice(i--,1);dfd.handleResponse(_517);_519._onAction&&_519._onAction();}else{if(dfd.startTime){if(dfd.startTime+(_518.timeout||0)<now){_515.splice(i--,1);dfd.cancel(new _511(_517));_519._onAction&&_519._onAction();}}}}}_519._onInFlight&&_519._onInFlight(dfd);if(!_515.length){clearInterval(_514);_514=null;}};function _519(dfd){if(dfd.response.options.timeout){dfd.startTime=+(new Date);}if(dfd.isFulfilled()){return;}_515.push(dfd);if(!_514){_514=setInterval(_516,50);}if(dfd.response.options.sync){_516();}};_519.cancelAll=function cancelAll(){try{_513.forEach(_515,function(dfd){try{dfd.cancel(new _512("All requests canceled."));}catch(e){}});}catch(e){}};if(win&&on&&win.doc.attachEvent){on(win.global,"unload",function(){_519.cancelAll();});}return _519;});},"dojo/on":function(){define(["./has!dom-addeventlistener?:./aspect","./_base/kernel","./has"],function(_51a,dojo,has){"use strict";if(1){var _51b=window.ScriptEngineMajorVersion;has.add("jscript",_51b&&(_51b()+ScriptEngineMinorVersion()/10));has.add("event-orientationchange",has("touch")&&!has("android"));has.add("event-stopimmediatepropagation",window.Event&&!!window.Event.prototype&&!!window.Event.prototype.stopImmediatePropagation);}var on=function(_51c,type,_51d,_51e){if(_51c.on&&typeof type!="function"){return _51c.on(type,_51d);}return on.parse(_51c,type,_51d,_51f,_51e,this);};on.pausable=function(_520,type,_521,_522){var _523;var _524=on(_520,type,function(){if(!_523){return _521.apply(this,arguments);}},_522);_524.pause=function(){_523=true;};_524.resume=function(){_523=false;};return _524;};on.once=function(_525,type,_526,_527){var _528=on(_525,type,function(){_528.remove();return _526.apply(this,arguments);});return _528;};on.parse=function(_529,type,_52a,_52b,_52c,_52d){if(type.call){return type.call(_52d,_529,_52a);}if(type.indexOf(",")>-1){var _52e=type.split(/\s*,\s*/);var _52f=[];var i=0;var _530;while(_530=_52e[i++]){_52f.push(_52b(_529,_530,_52a,_52c,_52d));}_52f.remove=function(){for(var i=0;i<_52f.length;i++){_52f[i].remove();}};return _52f;}return _52b(_529,type,_52a,_52c,_52d);};var _531=/^touch/;function _51f(_532,type,_533,_534,_535){var _536=type.match(/(.*):(.*)/);if(_536){type=_536[2];_536=_536[1];return on.selector(_536,type).call(_535,_532,_533);}if(has("touch")){if(_531.test(type)){_533=_537(_533);}if(!has("event-orientationchange")&&(type=="orientationchange")){type="resize";_532=window;_533=_537(_533);}}if(_538){_533=_538(_533);}if(_532.addEventListener){var _539=type in _53a,_53b=_539?_53a[type]:type;_532.addEventListener(_53b,_533,_539);return {remove:function(){_532.removeEventListener(_53b,_533,_539);}};}type="on"+type;if(_53c&&_532.attachEvent){return _53c(_532,type,_533);}throw new Error("Target must be an event emitter");};on.selector=function(_53d,_53e,_53f){return function(_540,_541){var _542=typeof _53d=="function"?{matches:_53d}:this,_543=_53e.bubble;function _544(_545){_542=_542&&_542.matches?_542:dojo.query;while(!_542.matches(_545,_53d,_540)){if(_545==_540||_53f===false||!(_545=_545.parentNode)||_545.nodeType!=1){return;}}return _545;};if(_543){return on(_540,_543(_544),_541);}return on(_540,_53e,function(_546){var _547=_544(_546.target);return _547&&_541.call(_547,_546);});};};function _548(){this.cancelable=false;};function _549(){this.bubbles=false;};var _54a=[].slice,_54b=on.emit=function(_54c,type,_54d){var args=_54a.call(arguments,2);var _54e="on"+type;if("parentNode" in _54c){var _54f=args[0]={};for(var i in _54d){_54f[i]=_54d[i];}_54f.preventDefault=_548;_54f.stopPropagation=_549;_54f.target=_54c;_54f.type=type;_54d=_54f;}do{_54c[_54e]&&_54c[_54e].apply(_54c,args);}while(_54d&&_54d.bubbles&&(_54c=_54c.parentNode));return _54d&&_54d.cancelable&&_54d;};var _53a={};if(!has("event-stopimmediatepropagation")){var _550=function(){this.immediatelyStopped=true;this.modified=true;};var _538=function(_551){return function(_552){if(!_552.immediatelyStopped){_552.stopImmediatePropagation=_550;return _551.apply(this,arguments);}};};}if(has("dom-addeventlistener")){_53a={focusin:"focus",focusout:"blur"};if(has("opera")){_53a.keydown="keypress";}on.emit=function(_553,type,_554){if(_553.dispatchEvent&&document.createEvent){var _555=_553.ownerDocument.createEvent("HTMLEvents");_555.initEvent(type,!!_554.bubbles,!!_554.cancelable);for(var i in _554){var _556=_554[i];if(!(i in _555)){_555[i]=_554[i];}}return _553.dispatchEvent(_555)&&_555;}return _54b.apply(on,arguments);};}else{on._fixEvent=function(evt,_557){if(!evt){var w=_557&&(_557.ownerDocument||_557.document||_557).parentWindow||window;evt=w.event;}if(!evt){return evt;}if(_558&&evt.type==_558.type){evt=_558;}if(!evt.target){evt.target=evt.srcElement;evt.currentTarget=(_557||evt.srcElement);if(evt.type=="mouseover"){evt.relatedTarget=evt.fromElement;}if(evt.type=="mouseout"){evt.relatedTarget=evt.toElement;}if(!evt.stopPropagation){evt.stopPropagation=_559;evt.preventDefault=_55a;}switch(evt.type){case "keypress":var c=("charCode" in evt?evt.charCode:evt.keyCode);if(c==10){c=0;evt.keyCode=13;}else{if(c==13||c==27){c=0;}else{if(c==3){c=99;}}}evt.charCode=c;_55b(evt);break;}}return evt;};var _558,_55c=function(_55d){this.handle=_55d;};_55c.prototype.remove=function(){delete _dojoIEListeners_[this.handle];};var _55e=function(_55f){return function(evt){evt=on._fixEvent(evt,this);var _560=_55f.call(this,evt);if(evt.modified){if(!_558){setTimeout(function(){_558=null;});}_558=evt;}return _560;};};var _53c=function(_561,type,_562){_562=_55e(_562);if(((_561.ownerDocument?_561.ownerDocument.parentWindow:_561.parentWindow||_561.window||window)!=top||has("jscript")<5.8)&&!has("config-_allow_leaks")){if(typeof _dojoIEListeners_=="undefined"){_dojoIEListeners_=[];}var _563=_561[type];if(!_563||!_563.listeners){var _564=_563;_563=Function("event","var callee = arguments.callee; for(var i = 0; i<callee.listeners.length; i++){var listener = _dojoIEListeners_[callee.listeners[i]]; if(listener){listener.call(this,event);}}");_563.listeners=[];_561[type]=_563;_563.global=this;if(_564){_563.listeners.push(_dojoIEListeners_.push(_564)-1);}}var _565;_563.listeners.push(_565=(_563.global._dojoIEListeners_.push(_562)-1));return new _55c(_565);}return _51a.after(_561,type,_562,true);};var _55b=function(evt){evt.keyChar=evt.charCode?String.fromCharCode(evt.charCode):"";evt.charOrCode=evt.keyChar||evt.keyCode;};var _559=function(){this.cancelBubble=true;};var _55a=on._preventDefault=function(){this.bubbledKeyCode=this.keyCode;if(this.ctrlKey){try{this.keyCode=0;}catch(e){}}this.defaultPrevented=true;this.returnValue=false;};}if(has("touch")){var _566=function(){};var _567=window.orientation;var _537=function(_568){return function(_569){var _56a=_569.corrected;if(!_56a){var type=_569.type;try{delete _569.type;}catch(e){}if(_569.type){_566.prototype=_569;var _56a=new _566;_56a.preventDefault=function(){_569.preventDefault();};_56a.stopPropagation=function(){_569.stopPropagation();};}else{_56a=_569;_56a.type=type;}_569.corrected=_56a;if(type=="resize"){if(_567==window.orientation){return null;}_567=window.orientation;_56a.type="orientationchange";return _568.call(this,_56a);}if(!("rotation" in _56a)){_56a.rotation=0;_56a.scale=1;}var _56b=_56a.changedTouches[0];for(var i in _56b){delete _56a[i];_56a[i]=_56b[i];}}return _568.call(this,_56a);};};}return on;});},"dojo/_base/sniff":function(){define(["./kernel","./lang","../sniff"],function(dojo,lang,has){if(!1){return has;}dojo._name="browser";lang.mixin(dojo,{isBrowser:true,isFF:has("ff"),isIE:has("ie"),isKhtml:has("khtml"),isWebKit:has("webkit"),isMozilla:has("mozilla"),isMoz:has("mozilla"),isOpera:has("opera"),isSafari:has("safari"),isChrome:has("chrome"),isMac:has("mac"),isIos:has("ios"),isAndroid:has("android"),isWii:has("wii"),isQuirks:has("quirks"),isAir:has("air")});dojo.locale=dojo.locale||(has("ie")?navigator.userLanguage:navigator.language).toLowerCase();return has;});},"dojo/errors/create":function(){define(["../_base/lang"],function(lang){return function(name,ctor,base,_56c){base=base||Error;var _56d=function(_56e){if(base===Error){if(Error.captureStackTrace){Error.captureStackTrace(this,_56d);}var err=Error.call(this,_56e),prop;for(prop in err){if(err.hasOwnProperty(prop)){this[prop]=err[prop];}}this.message=_56e;this.stack=err.stack;}else{base.apply(this,arguments);}if(ctor){ctor.apply(this,arguments);}};_56d.prototype=lang.delegate(base.prototype,_56c);_56d.prototype.name=name;_56d.prototype.constructor=_56d;return _56d;};});},"dojo/_base/array":function(){define(["./kernel","../has","./lang"],function(dojo,has,lang){var _56f={},u;function _570(fn){return _56f[fn]=new Function("item","index","array",fn);};function _571(some){var _572=!some;return function(a,fn,o){var i=0,l=a&&a.length||0,_573;if(l&&typeof a=="string"){a=a.split("");}if(typeof fn=="string"){fn=_56f[fn]||_570(fn);}if(o){for(;i<l;++i){_573=!fn.call(o,a[i],i,a);if(some^_573){return !_573;}}}else{for(;i<l;++i){_573=!fn(a[i],i,a);if(some^_573){return !_573;}}}return _572;};};function _574(up){var _575=1,_576=0,_577=0;if(!up){_575=_576=_577=-1;}return function(a,x,from,last){if(last&&_575>0){return _578.lastIndexOf(a,x,from);}var l=a&&a.length||0,end=up?l+_577:_576,i;if(from===u){i=up?_576:l+_577;}else{if(from<0){i=l+from;if(i<0){i=_576;}}else{i=from>=l?l+_577:from;}}if(l&&typeof a=="string"){a=a.split("");}for(;i!=end;i+=_575){if(a[i]==x){return i;}}return -1;};};var _578={every:_571(false),some:_571(true),indexOf:_574(true),lastIndexOf:_574(false),forEach:function(arr,_579,_57a){var i=0,l=arr&&arr.length||0;if(l&&typeof arr=="string"){arr=arr.split("");}if(typeof _579=="string"){_579=_56f[_579]||_570(_579);}if(_57a){for(;i<l;++i){_579.call(_57a,arr[i],i,arr);}}else{for(;i<l;++i){_579(arr[i],i,arr);}}},map:function(arr,_57b,_57c,Ctr){var i=0,l=arr&&arr.length||0,out=new (Ctr||Array)(l);if(l&&typeof arr=="string"){arr=arr.split("");}if(typeof _57b=="string"){_57b=_56f[_57b]||_570(_57b);}if(_57c){for(;i<l;++i){out[i]=_57b.call(_57c,arr[i],i,arr);}}else{for(;i<l;++i){out[i]=_57b(arr[i],i,arr);}}return out;},filter:function(arr,_57d,_57e){var i=0,l=arr&&arr.length||0,out=[],_57f;if(l&&typeof arr=="string"){arr=arr.split("");}if(typeof _57d=="string"){_57d=_56f[_57d]||_570(_57d);}if(_57e){for(;i<l;++i){_57f=arr[i];if(_57d.call(_57e,_57f,i,arr)){out.push(_57f);}}}else{for(;i<l;++i){_57f=arr[i];if(_57d(_57f,i,arr)){out.push(_57f);}}}return out;},clearCache:function(){_56f={};}};1&&lang.mixin(dojo,_578);return _578;});},"dojo/_base/json":function(){define(["./kernel","../json"],function(dojo,json){dojo.fromJson=function(js){return eval("("+js+")");};dojo._escapeString=json.stringify;dojo.toJsonIndentStr="\t";dojo.toJson=function(it,_580){return json.stringify(it,function(key,_581){if(_581){var tf=_581.__json__||_581.json;if(typeof tf=="function"){return tf.call(_581);}}return _581;},_580&&dojo.toJsonIndentStr);};return dojo;});},"dojo/_base/window":function(){define("dojo/_base/window",["./kernel","./lang","../sniff"],function(dojo,lang,has){var ret={global:dojo.global,doc:this["document"]||null,body:function(doc){doc=doc||dojo.doc;return doc.body||doc.getElementsByTagName("body")[0];},setContext:function(_582,_583){dojo.global=ret.global=_582;dojo.doc=ret.doc=_583;},withGlobal:function(_584,_585,_586,_587){var _588=dojo.global;try{dojo.global=ret.global=_584;return ret.withDoc.call(null,_584.document,_585,_586,_587);}finally{dojo.global=ret.global=_588;}},withDoc:function(_589,_58a,_58b,_58c){var _58d=ret.doc,oldQ=has("quirks"),_58e=has("ie"),isIE,mode,pwin;try{dojo.doc=ret.doc=_589;dojo.isQuirks=has.add("quirks",dojo.doc.compatMode=="BackCompat",true,true);if(has("ie")){if((pwin=_589.parentWindow)&&pwin.navigator){isIE=parseFloat(pwin.navigator.appVersion.split("MSIE ")[1])||undefined;mode=_589.documentMode;if(mode&&mode!=5&&Math.floor(isIE)!=mode){isIE=mode;}dojo.isIE=has.add("ie",isIE,true,true);}}if(_58b&&typeof _58a=="string"){_58a=_58b[_58a];}return _58a.apply(_58b,_58c||[]);}finally{dojo.doc=ret.doc=_58d;dojo.isQuirks=has.add("quirks",oldQ,true,true);dojo.isIE=has.add("ie",_58e,true,true);}}};1&&lang.mixin(dojo,ret);return ret;});},"dojo/dom-class":function(){define(["./_base/lang","./_base/array","./dom"],function(lang,_58f,dom){var _590="className";var cls,_591=/\s+/,a1=[""];function _592(s){if(typeof s=="string"||s instanceof String){if(s&&!_591.test(s)){a1[0]=s;return a1;}var a=s.split(_591);if(a.length&&!a[0]){a.shift();}if(a.length&&!a[a.length-1]){a.pop();}return a;}if(!s){return [];}return _58f.filter(s,function(x){return x;});};var _593={};cls={contains:function containsClass(node,_594){return ((" "+dom.byId(node)[_590]+" ").indexOf(" "+_594+" ")>=0);},add:function addClass(node,_595){node=dom.byId(node);_595=_592(_595);var cls=node[_590],_596;cls=cls?" "+cls+" ":" ";_596=cls.length;for(var i=0,len=_595.length,c;i<len;++i){c=_595[i];if(c&&cls.indexOf(" "+c+" ")<0){cls+=c+" ";}}if(_596<cls.length){node[_590]=cls.substr(1,cls.length-2);}},remove:function removeClass(node,_597){node=dom.byId(node);var cls;if(_597!==undefined){_597=_592(_597);cls=" "+node[_590]+" ";for(var i=0,len=_597.length;i<len;++i){cls=cls.replace(" "+_597[i]+" "," ");}cls=lang.trim(cls);}else{cls="";}if(node[_590]!=cls){node[_590]=cls;}},replace:function replaceClass(node,_598,_599){node=dom.byId(node);_593[_590]=node[_590];cls.remove(_593,_599);cls.add(_593,_598);if(node[_590]!==_593[_590]){node[_590]=_593[_590];}},toggle:function toggleClass(node,_59a,_59b){node=dom.byId(node);if(_59b===undefined){_59a=_592(_59a);for(var i=0,len=_59a.length,c;i<len;++i){c=_59a[i];cls[cls.contains(node,c)?"remove":"add"](node,c);}}else{cls[_59b?"add":"remove"](node,_59a);}return _59b;}};return cls;});},"dojo/_base/config":function(){define(["../has","require"],function(has,_59c){var _59d={};if(1){var src=_59c.rawConfig,p;for(p in src){_59d[p]=src[p];}}else{var _59e=function(_59f,_5a0,_5a1){for(p in _59f){p!="has"&&has.add(_5a0+p,_59f[p],0,_5a1);}};_59d=1?_59c.rawConfig:this.dojoConfig||this.djConfig||{};_59e(_59d,"config",1);_59e(_59d.has,"",1);}return _59d;});},"dojo/main":function(){define(["./_base/kernel","./has","require","./sniff","./_base/lang","./_base/array","./_base/config","./ready","./_base/declare","./_base/connect","./_base/Deferred","./_base/json","./_base/Color","./has!dojo-firebug?./_firebug/firebug","./_base/browser","./_base/loader"],function(_5a2,has,_5a3,_5a4,lang,_5a5,_5a6,_5a7){if(_5a6.isDebug){_5a3(["./_firebug/firebug"]);}1||has.add("dojo-config-require",1);if(1){var deps=_5a6.require;if(deps){deps=_5a5.map(lang.isArray(deps)?deps:[deps],function(item){return item.replace(/\./g,"/");});if(_5a2.isAsync){_5a3(deps);}else{_5a7(1,function(){_5a3(deps);});}}}return _5a2;});},"dojo/_base/event":function(){define("dojo/_base/event",["./kernel","../on","../has","../dom-geometry"],function(dojo,on,has,dom){if(on._fixEvent){var _5a8=on._fixEvent;on._fixEvent=function(evt,se){evt=_5a8(evt,se);if(evt){dom.normalizeEvent(evt);}return evt;};}var ret={fix:function(evt,_5a9){if(on._fixEvent){return on._fixEvent(evt,_5a9);}return evt;},stop:function(evt){if(has("dom-addeventlistener")||(evt&&evt.preventDefault)){evt.preventDefault();evt.stopPropagation();}else{evt=evt||window.event;evt.cancelBubble=true;on._preventDefault.call(evt);}}};if(1){dojo.fixEvent=ret.fix;dojo.stopEvent=ret.stop;}return ret;});},"dojo/sniff":function(){define(["./has"],function(has){if(1){var n=navigator,dua=n.userAgent,dav=n.appVersion,tv=parseFloat(dav);has.add("air",dua.indexOf("AdobeAIR")>=0),has.add("khtml",dav.indexOf("Konqueror")>=0?tv:undefined);has.add("webkit",parseFloat(dua.split("WebKit/")[1])||undefined);has.add("chrome",parseFloat(dua.split("Chrome/")[1])||undefined);has.add("safari",dav.indexOf("Safari")>=0&&!has("chrome")?parseFloat(dav.split("Version/")[1]):undefined);has.add("mac",dav.indexOf("Macintosh")>=0);has.add("quirks",document.compatMode=="BackCompat");has.add("ios",/iPhone|iPod|iPad/.test(dua));has.add("android",parseFloat(dua.split("Android ")[1])||undefined);if(!has("webkit")){if(dua.indexOf("Opera")>=0){has.add("opera",tv>=9.8?parseFloat(dua.split("Version/")[1])||tv:tv);}if(dua.indexOf("Gecko")>=0&&!has("khtml")&&!has("webkit")){has.add("mozilla",tv);}if(has("mozilla")){has.add("ff",parseFloat(dua.split("Firefox/")[1]||dua.split("Minefield/")[1])||undefined);}if(document.all&&!has("opera")){var isIE=parseFloat(dav.split("MSIE ")[1])||undefined;var mode=document.documentMode;if(mode&&mode!=5&&Math.floor(isIE)!=mode){isIE=mode;}has.add("ie",isIE);}has.add("wii",typeof opera!="undefined"&&opera.wiiremote);}}return has;});},"dojo/request/handlers":function(){define(["../json","../_base/kernel","../_base/array","../has"],function(JSON,_5aa,_5ab,has){has.add("activex",typeof ActiveXObject!=="undefined");var _5ac;if(has("activex")){var dp=["Msxml2.DOMDocument.6.0","Msxml2.DOMDocument.4.0","MSXML2.DOMDocument.3.0","MSXML.DOMDocument"];_5ac=function(_5ad){var _5ae=_5ad.data;if(!_5ae||!_5ae.documentElement){var text=_5ad.text;_5ab.some(dp,function(p){try{var dom=new ActiveXObject(p);dom.async=false;dom.loadXML(text);_5ae=dom;}catch(e){return false;}return true;});}return _5ae;};}var _5af={"javascript":function(_5b0){return _5aa.eval(_5b0.text||"");},"json":function(_5b1){return JSON.parse(_5b1.text||null);},"xml":_5ac};function _5b2(_5b3){var _5b4=_5af[_5b3.options.handleAs];_5b3.data=_5b4?_5b4(_5b3):(_5b3.data||_5b3.text);return _5b3;};_5b2.register=function(name,_5b5){_5af[name]=_5b5;};return _5b2;});},"dojo/aspect":function(){define("dojo/aspect",[],function(){"use strict";var _5b6,_5b7=0;function _5b8(_5b9,type,_5ba,_5bb){var _5bc=_5b9[type];var _5bd=type=="around";var _5be;if(_5bd){var _5bf=_5ba(function(){return _5bc.advice(this,arguments);});_5be={remove:function(){_5be.cancelled=true;},advice:function(_5c0,args){return _5be.cancelled?_5bc.advice(_5c0,args):_5bf.apply(_5c0,args);}};}else{_5be={remove:function(){var _5c1=_5be.previous;var next=_5be.next;if(!next&&!_5c1){delete _5b9[type];}else{if(_5c1){_5c1.next=next;}else{_5b9[type]=next;}if(next){next.previous=_5c1;}}},id:_5b7++,advice:_5ba,receiveArguments:_5bb};}if(_5bc&&!_5bd){if(type=="after"){var next=_5bc;while(next){_5bc=next;next=next.next;}_5bc.next=_5be;_5be.previous=_5bc;}else{if(type=="before"){_5b9[type]=_5be;_5be.next=_5bc;_5bc.previous=_5be;}}}else{_5b9[type]=_5be;}return _5be;};function _5c2(type){return function(_5c3,_5c4,_5c5,_5c6){var _5c7=_5c3[_5c4],_5c8;if(!_5c7||_5c7.target!=_5c3){_5c3[_5c4]=_5c8=function(){var _5c9=_5b7;var args=arguments;var _5ca=_5c8.before;while(_5ca){args=_5ca.advice.apply(this,args)||args;_5ca=_5ca.next;}if(_5c8.around){var _5cb=_5c8.around.advice(this,args);}var _5cc=_5c8.after;while(_5cc&&_5cc.id<_5c9){if(_5cc.receiveArguments){var _5cd=_5cc.advice.apply(this,args);_5cb=_5cd===_5b6?_5cb:_5cd;}else{_5cb=_5cc.advice.call(this,_5cb,args);}_5cc=_5cc.next;}return _5cb;};if(_5c7){_5c8.around={advice:function(_5ce,args){return _5c7.apply(_5ce,args);}};}_5c8.target=_5c3;}var _5cf=_5b8((_5c8||_5c7),type,_5c5,_5c6);_5c5=null;return _5cf;};};var _5d0=_5c2("after");var _5d1=_5c2("before");var _5d2=_5c2("around");return {before:_5d1,around:_5d2,after:_5d0};});},"dojo/ready":function(){define("dojo/ready",["./_base/kernel","./has","require","./domReady","./_base/lang"],function(dojo,has,_5d3,_5d4,lang){var _5d5=0,_5d6,_5d7=[],_5d8=0,_5d9=function(){_5d5=1;dojo._postLoad=dojo.config.afterOnLoad=true;if(_5d7.length){_5d6(_5da);}},_5da=function(){if(_5d5&&!_5d8&&_5d7.length){_5d8=1;var f=_5d7.shift();try{f();}finally{_5d8=0;}_5d8=0;if(_5d7.length){_5d6(_5da);}}};_5d3.on("idle",_5da);_5d6=function(){if(_5d3.idle()){_5da();}};var _5db=dojo.ready=dojo.addOnLoad=function(_5dc,_5dd,_5de){var _5df=lang._toArray(arguments);if(typeof _5dc!="number"){_5de=_5dd;_5dd=_5dc;_5dc=1000;}else{_5df.shift();}_5de=_5de?lang.hitch.apply(dojo,_5df):function(){_5dd();};_5de.priority=_5dc;for(var i=0;i<_5d7.length&&_5dc>=_5d7[i].priority;i++){}_5d7.splice(i,0,_5de);_5d6();};1||has.add("dojo-config-addOnLoad",1);if(1){var dca=dojo.config.addOnLoad;if(dca){_5db[(lang.isArray(dca)?"apply":"call")](dojo,dca);}}if(1&&dojo.config.parseOnLoad&&!dojo.isAsync){_5db(99,function(){if(!dojo.parser){dojo.deprecated("Add explicit require(['dojo/parser']);","","2.0");_5d3(["dojo/parser"]);}});}if(1){_5d4(_5d9);}else{_5d9();}return _5db;});},"dojo/_base/connect":function(){define(["./kernel","../on","../topic","../aspect","./event","../mouse","./sniff","./lang","../keys"],function(dojo,on,hub,_5e0,_5e1,_5e2,has,lang){has.add("events-keypress-typed",function(){var _5e3={charCode:0};try{_5e3=document.createEvent("KeyboardEvent");(_5e3.initKeyboardEvent||_5e3.initKeyEvent).call(_5e3,"keypress",true,true,null,false,false,false,false,9,3);}catch(e){}return _5e3.charCode==0&&!has("opera");});function _5e4(obj,_5e5,_5e6,_5e7,_5e8){_5e7=lang.hitch(_5e6,_5e7);if(!obj||!(obj.addEventListener||obj.attachEvent)){return _5e0.after(obj||dojo.global,_5e5,_5e7,true);}if(typeof _5e5=="string"&&_5e5.substring(0,2)=="on"){_5e5=_5e5.substring(2);}if(!obj){obj=dojo.global;}if(!_5e8){switch(_5e5){case "keypress":_5e5=_5e9;break;case "mouseenter":_5e5=_5e2.enter;break;case "mouseleave":_5e5=_5e2.leave;break;}}return on(obj,_5e5,_5e7,_5e8);};var _5ea={106:42,111:47,186:59,187:43,188:44,189:45,190:46,191:47,192:96,219:91,220:92,221:93,222:39,229:113};var _5eb=has("mac")?"metaKey":"ctrlKey";var _5ec=function(evt,_5ed){var faux=lang.mixin({},evt,_5ed);_5ee(faux);faux.preventDefault=function(){evt.preventDefault();};faux.stopPropagation=function(){evt.stopPropagation();};return faux;};function _5ee(evt){evt.keyChar=evt.charCode?String.fromCharCode(evt.charCode):"";evt.charOrCode=evt.keyChar||evt.keyCode;};var _5e9;if(has("events-keypress-typed")){var _5ef=function(e,code){try{return (e.keyCode=code);}catch(e){return 0;}};_5e9=function(_5f0,_5f1){var _5f2=on(_5f0,"keydown",function(evt){var k=evt.keyCode;var _5f3=(k!=13)&&k!=32&&(k!=27||!has("ie"))&&(k<48||k>90)&&(k<96||k>111)&&(k<186||k>192)&&(k<219||k>222)&&k!=229;if(_5f3||evt.ctrlKey){var c=_5f3?0:k;if(evt.ctrlKey){if(k==3||k==13){return _5f1.call(evt.currentTarget,evt);}else{if(c>95&&c<106){c-=48;}else{if((!evt.shiftKey)&&(c>=65&&c<=90)){c+=32;}else{c=_5ea[c]||c;}}}}var faux=_5ec(evt,{type:"keypress",faux:true,charCode:c});_5f1.call(evt.currentTarget,faux);if(has("ie")){_5ef(evt,faux.keyCode);}}});var _5f4=on(_5f0,"keypress",function(evt){var c=evt.charCode;c=c>=32?c:0;evt=_5ec(evt,{charCode:c,faux:true});return _5f1.call(this,evt);});return {remove:function(){_5f2.remove();_5f4.remove();}};};}else{if(has("opera")){_5e9=function(_5f5,_5f6){return on(_5f5,"keypress",function(evt){var c=evt.which;if(c==3){c=99;}c=c<32&&!evt.shiftKey?0:c;if(evt.ctrlKey&&!evt.shiftKey&&c>=65&&c<=90){c+=32;}return _5f6.call(this,_5ec(evt,{charCode:c}));});};}else{_5e9=function(_5f7,_5f8){return on(_5f7,"keypress",function(evt){_5ee(evt);return _5f8.call(this,evt);});};}}var _5f9={_keypress:_5e9,connect:function(obj,_5fa,_5fb,_5fc,_5fd){var a=arguments,args=[],i=0;args.push(typeof a[0]=="string"?null:a[i++],a[i++]);var a1=a[i+1];args.push(typeof a1=="string"||typeof a1=="function"?a[i++]:null,a[i++]);for(var l=a.length;i<l;i++){args.push(a[i]);}return _5e4.apply(this,args);},disconnect:function(_5fe){if(_5fe){_5fe.remove();}},subscribe:function(_5ff,_600,_601){return hub.subscribe(_5ff,lang.hitch(_600,_601));},publish:function(_602,args){return hub.publish.apply(hub,[_602].concat(args));},connectPublisher:function(_603,obj,_604){var pf=function(){_5f9.publish(_603,arguments);};return _604?_5f9.connect(obj,_604,pf):_5f9.connect(obj,pf);},isCopyKey:function(e){return e[_5eb];}};_5f9.unsubscribe=_5f9.disconnect;1&&lang.mixin(dojo,_5f9);return _5f9;});},"dojo/errors/CancelError":function(){define(["./create"],function(_605){return _605("CancelError",null,null,{dojoType:"cancel"});});}}});(function(){var _606=this.require;_606({cache:{}});!_606.async&&_606(["dojo"]);_606.boot&&_606.apply(null,_606.boot);})();
|