OSDN Git Service

Version 0.6.133, fix for closure compiler - ADVANCED_OPTIMIZATIONS
[pettanr/clientJs.git] / 0.6.x / js / 06_net / 01_XNetXHR.js
index 6e64e81..e543f5a 100644 (file)
@@ -32,11 +32,11 @@ Android1.6- の XHR で 401 エラーが返った場合は、iframe に xml を
  */\r
 var // Opera7.6+, Safari1.2+, khtml3.?+, Gecko0.9.7+\r
        // ie7 ではローカルリソースには ActiveX の XHR を使う\r
-       X_Net_XHR_W3C      = ( !X_UA.IE7 || !X_URL_IS_LOCAL ) && window[ 'XMLHttpRequest' ] && new XMLHttpRequest(),\r
+       X_Net_XHR_W3C      = ( !X_UA[ 'IE7' ] || !X_URL_IS_LOCAL ) && window[ 'XMLHttpRequest' ] && new XMLHttpRequest(),\r
        \r
        X_Net_XHR_X_DOMAIN = window[ 'XDomainRequest' ] && new XDomainRequest(),\r
        X_Net_XHR_VERSION  = 0,\r
-       X_Net_XHR_ACTIVE_X = !X_UA.IE4 && X_UA.IE < 8 && X_UA.ActiveX && ( new Function( [\r
+       X_Net_XHR_ACTIVE_X = !X_UA[ 'IE4' ] && X_UA[ 'IE' ] < 8 && X_UA[ 'ActiveX' ] && ( new Function( [\r
                'var x=".XMLHTTP",',\r
                        'm="MSXML2"+x,',\r
                        'n=[m+".6.0",m+".3.0",m+".5.0",m+".4.0",m,"Microsoft"+x],',\r
@@ -141,7 +141,7 @@ if( X_Net_XHR_W3C || X_Net_XHR_ACTIVE_X ){
                                                        break;\r
                                                case 'json' :\r
                                                case 'moz-json' :\r
-                                                       raw.responseType = X_UA.Gecko ? this._type : ''; // Iron 37 でエラー\r
+                                                       raw.responseType = X_UA[ 'Gecko' ] ? this._type : ''; // Iron 37 でエラー\r
                                                        break;\r
                                                case 'document' :\r
                                                case 'xml' :\r
@@ -160,7 +160,7 @@ if( X_Net_XHR_W3C || X_Net_XHR_ACTIVE_X ){
                                \r
                                // http://www.quirksmode.org/blog/archives/2005/09/xmlhttp_notes_r_1.html\r
                                // raw.overrideMimeType()\r
-                               if( !X_Net_XHR_ACTIVE_X && X.Type.isFunction( raw.setRequestHeader ) ){\r
+                               if( !X_Net_XHR_ACTIVE_X && X_Type_isFunction( raw.setRequestHeader ) ){\r
                                        \r
                                        // http://nakigao.sitemix.jp/blog/?p=2040\r
                                        // SafariでHTTP/412のエラー\r
@@ -203,7 +203,7 @@ if( X_Net_XHR_W3C || X_Net_XHR_ACTIVE_X ){
                        cancel : function(){\r
                                /* X.Net.XHR.CANCELABLE && */ this._rawObject.abort && this._rawObject.abort();\r
                                this._canceled = true;\r
-                               this.asyncDispatch( X.Event.CANCELED );\r
+                               this.asyncDispatch( X_Event.CANCELED );\r
                        },\r
                        \r
                        reset : function(){\r
@@ -217,7 +217,7 @@ if( X_Net_XHR_W3C || X_Net_XHR_ACTIVE_X ){
                                // Opera 10.10、Safari 4.1 では、同一オリジン制限に違反した XMLHttpRequest オブジェクトは再度 open() しても未送信状態に戻りません。\r
                                \r
                                // Timeout した Gecko の xhr.response に触るとエラー??\r
-                               if( X_UA.Opera || X_UA.Webkit || X_UA.Gecko ){\r
+                               if( X_UA[ 'Opera' ] || X_UA[ 'Webkit' ]  || X_UA[ 'Gecko' ] ){\r
                                        if( this._error ){\r
                                                X_EventDispatcher_toggleAllEvents( this, false );\r
                                                this._rawObject = new XMLHttpRequest();\r
@@ -263,10 +263,10 @@ if( X_Net_XHR_W3C || X_Net_XHR_ACTIVE_X ){
                                                                case 1 :\r
                                                                        return;\r
                                                                case 2 : // 0% ajaxstart\r
-                                                                       live && this.asyncDispatch( { type : X.Event.PROGRESS, percent : 0 } );\r
+                                                                       live && this.asyncDispatch( { type : X_Event.PROGRESS, percent : 0 } );\r
                                                                        return;\r
                                                                case 3 :\r
-                                                                       live && this.asyncDispatch( { type : X.Event.PROGRESS, percent : this._percent < 99.9 ? 99.9 : ( this._percent + 100 ) / 2 } );\r
+                                                                       live && this.asyncDispatch( { type : X_Event.PROGRESS, percent : this._percent < 99.9 ? 99.9 : ( this._percent + 100 ) / 2 } );\r
                                                                        // 99.9%\r
                                                                        return;\r
                                                                case 4 :\r
@@ -297,7 +297,7 @@ if( X_Net_XHR_W3C || X_Net_XHR_ACTIVE_X ){
                                            ( 200 <= status && status < 400 ) ||\r
                                            //status === 304 ||\r
                                            status === 1223 ||\r
-                                           ( X_UA.Webkit && status === undefined ) // safari: /webkit/.test(userAgent)\r
+                                           ( X_UA[ 'Webkit' ]  && status === undefined ) // safari: /webkit/.test(userAgent)\r
                                                ){\r
                                                        /*\r
                                                         * opera8, safari2, khtml3 で utf8 日本語文字列の文字化け\r
@@ -316,7 +316,7 @@ if( X_Net_XHR_W3C || X_Net_XHR_ACTIVE_X ){
                                                                        // eval() を使っているけど JSON の無いブラウザは XDomain な XHR はできないのでよしとする。\r
                                                                        // XDomain な XHR の際は Flash 等で代替し、その中に Json parser も組み込む。\r
                                                                        // http://d.hatena.ne.jp/sshi/20060904/p1\r
-                                                                       if( !X.Type.isObject( data ) ) data = window.JSON ? JSON.parse( data ) : eval( '(' + data + ')' );\r
+                                                                       if( !X_Type_isObject( data ) ) data = window.JSON ? JSON.parse( data ) : eval( '(' + data + ')' );\r
                                                                        break;\r
                                                                case 'document' :\r
                                                                case 'xml' :\r
@@ -331,30 +331,30 @@ if( X_Net_XHR_W3C || X_Net_XHR_ACTIVE_X ){
                                                                        break;\r
                                                        };\r
 \r
-                                                       this.asyncDispatch( 32, { type : X.Event.SUCCESS, status : status || 200, data : data } );\r
+                                                       this.asyncDispatch( 32, { type : X_Event.SUCCESS, status : status || 200, data : data } );\r
                                                } else {\r
-                                                       live && this.asyncDispatch( 32, { type : X.Event.ERROR, status : raw.status || 0, percent : 100 } );\r
+                                                       live && this.asyncDispatch( 32, { type : X_Event.ERROR, status : raw.status || 0, percent : 100 } );\r
                                                };\r
                                                break;\r
                                        \r
                                        case 'progress' :\r
                                                if( e.lengthComputable ){\r
                                                        this._percent = e.loaded / e.total;\r
-                                                       live && this.asyncDispatch( { type : X.Event.PROGRESS, percent : this._percent } );\r
+                                                       live && this.asyncDispatch( { type : X_Event.PROGRESS, percent : this._percent } );\r
                                                };\r
                                                break;\r
                                        \r
                                        case 'error' :\r
                                        //console.dir( e );\r
                                                this._busy  = false;\r
-                                               this._error = X_UA.Opera || X_UA.Webkit;\r
-                                               live && this.asyncDispatch( 32, { type : X.Event.ERROR, status : raw.status } );\r
+                                               this._error = X_UA[ 'Opera' ] || X_UA[ 'Webkit' ] ;\r
+                                               live && this.asyncDispatch( 32, { type : X_Event.ERROR, status : raw.status } );\r
                                                break;\r
 \r
                                        case 'timeout' : // Gecko 12.0 https://developer.mozilla.org/ja/docs/XMLHttpRequest/Synchronous_and_Asynchronous_Requests\r
                                                this._busy  = false;\r
-                                               this._error = !!X_UA.Gecko;\r
-                                               this.asyncDispatch( X.Event.TIMEOUT );\r
+                                               this._error = !!X_UA[ 'Gecko' ];\r
+                                               this.asyncDispatch( X_Event.TIMEOUT );\r
                                                break;\r
                                };\r
                        },\r
@@ -365,7 +365,7 @@ if( X_Net_XHR_W3C || X_Net_XHR_ACTIVE_X ){
 \r
                                if( raw.readyState < 3 ){\r
                                        this._busy = false;\r
-                                       live && this.asyncDispatch( X.Event.TIMEOUT );\r
+                                       live && this.asyncDispatch( X_Event.TIMEOUT );\r
                                };\r
                                this._timerID = 0;\r
                        },\r
@@ -380,10 +380,10 @@ if( X_Net_XHR_W3C || X_Net_XHR_ACTIVE_X ){
        );\r
        // 同期リクエストでなければならない場合, unload, beforeunload時\r
 \r
-       if( X_UA.IE8 ){\r
+       if( X_UA[ 'IE8' ] ){\r
                X_NET_XHRWrapper.listen( [ 'readystatechange', 'error', 'timeout' ] ); //, 'abort'\r
        } else\r
-       if( X_UA.IE7 ){\r
+       if( X_UA[ 'IE7' ] ){\r
                if( X_URL_IS_LOCAL ){\r
                        X_NET_XHRWrapper.listen( 'readystatechange' ); // ie7 ActiveX の場合、error は不可\r
                } else {\r