You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cordova.apache.org by an...@apache.org on 2014/09/05 20:10:09 UTC

git commit: Added support for the browser

Repository: cordova-plugin-network-information
Updated Branches:
  refs/heads/master aed63c8ff -> a810b7db9


Added support for the browser


Project: http://git-wip-us.apache.org/repos/asf/cordova-plugin-network-information/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-plugin-network-information/commit/a810b7db
Tree: http://git-wip-us.apache.org/repos/asf/cordova-plugin-network-information/tree/a810b7db
Diff: http://git-wip-us.apache.org/repos/asf/cordova-plugin-network-information/diff/a810b7db

Branch: refs/heads/master
Commit: a810b7db99699024893d9f8d00fc1d916a65952d
Parents: aed63c8
Author: Suraj Pindoria <su...@yahoo.com>
Authored: Fri Sep 5 10:02:07 2014 -0700
Committer: Suraj Pindoria <su...@yahoo.com>
Committed: Fri Sep 5 10:03:11 2014 -0700

----------------------------------------------------------------------
 doc/index.md                |  1 +
 plugin.xml                  |  7 ++++++
 src/browser/NetworkProxy.js | 53 ++++++++++++++++++++++++++++++++++++++++
 3 files changed, 61 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-plugin-network-information/blob/a810b7db/doc/index.md
----------------------------------------------------------------------
diff --git a/doc/index.md b/doc/index.md
index ebae403..016dbdc 100644
--- a/doc/index.md
+++ b/doc/index.md
@@ -33,6 +33,7 @@ wifi connection, and whether the device has an internet connection.
 - Amazon Fire OS
 - Android
 - BlackBerry 10
+- Browser
 - iOS
 - Windows Phone 7 and 8
 - Tizen

http://git-wip-us.apache.org/repos/asf/cordova-plugin-network-information/blob/a810b7db/plugin.xml
----------------------------------------------------------------------
diff --git a/plugin.xml b/plugin.xml
index a0d530a..94ffc7d 100644
--- a/plugin.xml
+++ b/plugin.xml
@@ -156,4 +156,11 @@ xmlns:android="http://schemas.android.com/apk/res/android"
             <runs />
         </js-module>
     </platform>
+
+    <!-- browser -->
+    <platform name="browser">
+        <js-module src="src/browser/NetworkProxy.js" name="NetworkProxy">
+            <runs />
+        </js-module>
+    </platform>
 </plugin>

http://git-wip-us.apache.org/repos/asf/cordova-plugin-network-information/blob/a810b7db/src/browser/NetworkProxy.js
----------------------------------------------------------------------
diff --git a/src/browser/NetworkProxy.js b/src/browser/NetworkProxy.js
new file mode 100644
index 0000000..efcf73f
--- /dev/null
+++ b/src/browser/NetworkProxy.js
@@ -0,0 +1,53 @@
+/*
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ */
+
+/*
+  Network API overview: http://www.w3.org/TR/netinfo-api/
+  and http://w3c.github.io/netinfo/
+*/
+
+var cordova = require('cordova'),
+    Connection = require('./Connection')
+
+module.exports = {
+    getConnectionInfo: function(successCallback, errorCallback) {
+        window.navigator.connection.type = Connection.NONE;
+
+        var xhr = new XMLHttpRequest();
+        xhr.open('GET', 'http://www.google.com', true);
+        
+        xhr.onload = function() {
+            if (xhr.readyState === 4 && xhr.status === 200) {
+                window.navigator.connection.type = Connection.WIFI;
+            } else {
+                window.navigator.connection.type = Connection.NONE;
+            }
+        };
+
+        xhr.send();
+
+        setTimeout(function() {
+            successCallback(window.navigator.connection.type);
+        }, 0);
+    }
+};
+
+require("cordova/exec/proxy").add("NetworkStatus", module.exports);