Version 1.9.0
diff --git a/VERSION b/VERSION
index f97077e..abb1658 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-1.9.0rc1
\ No newline at end of file
+1.9.0
\ No newline at end of file
diff --git a/docs/en/1.9.0/config.json b/docs/en/1.9.0/config.json
new file mode 100644
index 0000000..8e7e209
--- /dev/null
+++ b/docs/en/1.9.0/config.json
@@ -0,0 +1,171 @@
+{
+    "language": "English",
+    "merge": {
+        "accelerometer.md": [
+            "cordova/accelerometer/accelerometer.md",
+            "cordova/accelerometer/accelerometer.getCurrentAcceleration.md",
+            "cordova/accelerometer/accelerometer.watchAcceleration.md",
+            "cordova/accelerometer/accelerometer.clearWatch.md",
+            "cordova/accelerometer/acceleration/acceleration.md",
+            "cordova/accelerometer/parameters/accelerometerSuccess.md",
+            "cordova/accelerometer/parameters/accelerometerError.md",
+            "cordova/accelerometer/parameters/accelerometerOptions.md"
+        ],
+        "camera.md": [
+            "cordova/camera/camera.md",
+            "cordova/camera/camera.getPicture.md",
+            "cordova/camera/parameter/cameraSuccess.md",
+            "cordova/camera/parameter/cameraError.md",
+            "cordova/camera/parameter/cameraOptions.md",
+            "cordova/camera/parameter/CameraPopoverOptions.md"
+        ],
+        "capture.md": [
+            "cordova/media/capture/capture.md",
+            "cordova/media/capture/captureAudio.md",
+            "cordova/media/capture/captureAudioOptions.md",
+            "cordova/media/capture/captureImage.md",
+            "cordova/media/capture/captureImageOptions.md",
+            "cordova/media/capture/captureVideo.md",
+            "cordova/media/capture/captureVideoOptions.md",
+            "cordova/media/capture/CaptureError.md",
+            "cordova/media/capture/CaptureCB.md",
+            "cordova/media/capture/CaptureErrorCB.md",
+            "cordova/media/capture/ConfigurationData.md",
+            "cordova/media/capture/MediaFile.md",
+            "cordova/media/capture/MediaFile.getFormatData.md",
+            "cordova/media/capture/MediaFileData.md"
+        ],
+        "compass.md": [
+            "cordova/compass/compass.md",
+            "cordova/compass/compass.getCurrentHeading.md",
+            "cordova/compass/compass.watchHeading.md",
+            "cordova/compass/compass.clearWatch.md",
+            "cordova/compass/compass.watchHeadingFilter.md",
+            "cordova/compass/compass.clearWatchFilter.md",
+            "cordova/compass/parameters/compassSuccess.md",
+            "cordova/compass/parameters/compassError.md",
+            "cordova/compass/parameters/compassOptions.md",
+            "cordova/compass/parameters/compassHeading.md",
+            "cordova/compass/compassError/compassError.md"
+        ],
+        "contacts.md": [
+            "cordova/contacts/contacts.md",
+            "cordova/contacts/contacts.create.md",
+            "cordova/contacts/contacts.find.md",
+            "cordova/contacts/Contact/contact.md",
+            "cordova/contacts/ContactAddress/contactaddress.md",
+            "cordova/contacts/ContactField/contactfield.md",
+            "cordova/contacts/ContactFindOptions/contactfindoptions.md",
+            "cordova/contacts/ContactName/contactname.md",
+            "cordova/contacts/ContactOrganization/contactorganization.md",
+            "cordova/contacts/ContactError/contactError.md",
+            "cordova/contacts/parameters/contactSuccess.md",
+            "cordova/contacts/parameters/contactError.md",
+            "cordova/contacts/parameters/contactFields.md",
+            "cordova/contacts/parameters/contactFindOptions.md"
+        ],
+        "device.md": [
+            "cordova/device/device.md",
+            "cordova/device/device.name.md",
+            "cordova/device/device.cordova.md",
+            "cordova/device/device.platform.md",
+            "cordova/device/device.uuid.md",
+            "cordova/device/device.version.md"
+        ],
+        "events.md": [
+            "cordova/events/events.md",
+            "cordova/events/events.deviceready.md",
+            "cordova/events/events.pause.md",
+            "cordova/events/events.resume.md",
+            "cordova/events/events.online.md",
+            "cordova/events/events.offline.md",
+            "cordova/events/events.backbutton.md",
+            "cordova/events/events.batterycritical.md",
+            "cordova/events/events.batterylow.md",
+            "cordova/events/events.batterystatus.md",
+            "cordova/events/events.menubutton.md",
+            "cordova/events/events.searchbutton.md",
+            "cordova/events/events.startcallbutton.md",
+            "cordova/events/events.endcallbutton.md",
+            "cordova/events/events.volumedownbutton.md",
+            "cordova/events/events.volumeupbutton.md"
+        ],
+        "file.md": [
+            "cordova/file/file.md",
+            "cordova/file/fileobj/fileobj.md",
+            "cordova/file/filereader/filereader.md",
+            "cordova/file/filewriter/filewriter.md",
+            "cordova/file/filesystem/filesystem.md",
+            "cordova/file/fileentry/fileentry.md",
+            "cordova/file/directoryentry/directoryentry.md",
+            "cordova/file/directoryreader/directoryreader.md",
+            "cordova/file/filetransfer/filetransfer.md",
+            "cordova/file/fileuploadoptions/fileuploadoptions.md",
+            "cordova/file/fileuploadresult/fileuploadresult.md",
+            "cordova/file/flags/flags.md",
+            "cordova/file/localfilesystem/localfilesystem.md",
+            "cordova/file/metadata/metadata.md",
+            "cordova/file/fileerror/fileerror.md",
+            "cordova/file/filetransfererror/filetransfererror.md"
+        ],
+        "geolocation.md": [
+            "cordova/geolocation/geolocation.md",
+            "cordova/geolocation/geolocation.getCurrentPosition.md",
+            "cordova/geolocation/geolocation.watchPosition.md",
+            "cordova/geolocation/geolocation.clearWatch.md",
+            "cordova/geolocation/Coordinates/coordinates.md",
+            "cordova/geolocation/Position/position.md",
+            "cordova/geolocation/PositionError/positionError.md",
+            "cordova/geolocation/parameters/geolocationSuccess.md",
+            "cordova/geolocation/parameters/geolocationError.md",
+            "cordova/geolocation/parameters/geolocation.options.md"
+        ],
+        "media.md": [
+            "cordova/media/media.md",
+            "cordova/media/media.getCurrentPosition.md",
+            "cordova/media/media.getDuration.md",
+            "cordova/media/media.pause.md",
+            "cordova/media/media.play.md",
+            "cordova/media/media.release.md",
+            "cordova/media/media.seekTo.md",
+            "cordova/media/media.startRecord.md",
+            "cordova/media/media.stop.md",
+            "cordova/media/media.stopRecord.md",
+            "cordova/media/MediaError/mediaError.md",
+            "cordova/media/Parameters/mediaError.md"
+        ],
+        "network.md": [
+            "cordova/network/network.md",
+            "cordova/network/network.isReachable.md",
+            "cordova/network/NetworkStatus/NetworkStatus.md",
+            "cordova/network/parameters/reachableCallback.md",
+            "cordova/network/parameters/reachableHostname.md",
+            "cordova/network/parameters/reachableOptions.md"
+        ],
+        "connection.md": [
+            "cordova/connection/connection.md",
+            "cordova/connection/connection.type.md"
+        ],
+        "notification.md": [
+            "cordova/notification/notification.md",
+            "cordova/notification/notification.alert.md",
+            "cordova/notification/notification.confirm.md",
+            "cordova/notification/notification.beep.md",
+            "cordova/notification/notification.vibrate.md"
+        ],
+        "storage.md": [
+            "cordova/storage/storage.md",
+            "cordova/storage/storage.opendatabase.md",
+            "cordova/storage/parameters/name.md",
+            "cordova/storage/parameters/version.md",
+            "cordova/storage/parameters/display_name.md",
+            "cordova/storage/parameters/size.md",
+            "cordova/storage/database/database.md",
+            "cordova/storage/sqltransaction/sqltransaction.md",
+            "cordova/storage/sqlresultset/sqlresultset.md",
+            "cordova/storage/sqlresultsetlist/sqlresultsetlist.md",
+            "cordova/storage/sqlerror/sqlerror.md",
+            "cordova/storage/localstorage/localstorage.md"
+        ]
+    }
+}
diff --git a/docs/en/1.9.0/cordova/accelerometer/acceleration/acceleration.md b/docs/en/1.9.0/cordova/accelerometer/acceleration/acceleration.md
new file mode 100644
index 0000000..67e18e9
--- /dev/null
+++ b/docs/en/1.9.0/cordova/accelerometer/acceleration/acceleration.md
@@ -0,0 +1,106 @@
+---
+license: 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.
+---
+
+Acceleration
+============
+
+Contains `Accelerometer` data captured at a specific point in time.
+
+Properties
+----------
+
+- __x:__  Amount of acceleration on the x-axis. (in m/s^2) (`Number`)
+- __y:__  Amount of acceleration on the y-axis. (in m/s^2) (`Number`)
+- __z:__  Amount of acceleration on the z-axis. (in m/s^2) (`Number`)
+- __timestamp:__ Creation timestamp in milliseconds. (`DOMTimeStamp`)
+
+Description
+-----------
+
+This object is created and populated by Cordova, and returned by an `Accelerometer` method. The x, y, z acceleration values include the effect of gravity (9.81 m/s^2), so at when a device is lying flat on a table facing up, the value returned should be x=0, y=0, z=9.81.
+
+Supported Platforms
+-------------------
+
+- Android
+- BlackBerry WebWorks (OS 5.0 and higher)
+- iOS
+- Windows Phone 7 (Mango)
+- Bada 1.2 & 2.x
+- webOS
+
+Quick Example
+-------------
+
+    function onSuccess(acceleration) {
+        alert('Acceleration X: ' + acceleration.x + '\n' +
+              'Acceleration Y: ' + acceleration.y + '\n' +
+              'Acceleration Z: ' + acceleration.z + '\n' +
+              'Timestamp: '      + acceleration.timestamp + '\n');
+    };
+
+    function onError() {
+        alert('onError!');
+    };
+
+    navigator.accelerometer.getCurrentAcceleration(onSuccess, onError);
+
+Full Example
+------------
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>Acceleration Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for Cordova to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        // Cordova is ready
+        //
+        function onDeviceReady() {
+            navigator.accelerometer.getCurrentAcceleration(onSuccess, onError);
+        }
+
+        // onSuccess: Get a snapshot of the current acceleration
+        //
+        function onSuccess(acceleration) {
+            alert('Acceleration X: ' + acceleration.x + '\n' +
+                  'Acceleration Y: ' + acceleration.y + '\n' +
+                  'Acceleration Z: ' + acceleration.z + '\n' +
+                  'Timestamp: '      + acceleration.timestamp + '\n');
+        }
+
+        // onError: Failed to get the acceleration
+        //
+        function onError() {
+            alert('onError!');
+        }
+
+        </script>
+      </head>
+      <body>
+        <h1>Example</h1>
+        <p>getCurrentAcceleration</p>
+      </body>
+    </html>
diff --git a/docs/en/1.9.0/cordova/accelerometer/accelerometer.clearWatch.md b/docs/en/1.9.0/cordova/accelerometer/accelerometer.clearWatch.md
new file mode 100644
index 0000000..2ac65bc
--- /dev/null
+++ b/docs/en/1.9.0/cordova/accelerometer/accelerometer.clearWatch.md
@@ -0,0 +1,112 @@
+---
+license: 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.
+---
+
+accelerometer.clearWatch
+========================
+
+Stop watching the `Acceleration` referenced by the watch ID parameter.
+
+    navigator.accelerometer.clearWatch(watchID);
+
+- __watchID__: The ID returned by `accelerometer.watchAcceleration`.
+
+Supported Platforms
+-------------------
+
+- Android
+- BlackBerry WebWorks (OS 5.0 and higher)
+- iPhone
+- Windows Phone 7 (Mango)
+- Bada 1.2 & 2.x
+
+Quick Example
+-------------
+
+    var watchID = navigator.accelerometer.watchAcceleration(onSuccess, onError, options);
+    
+    // ... later on ...
+    
+    navigator.accelerometer.clearWatch(watchID);
+    
+Full Example
+------------
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>Acceleration Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // The watch id references the current `watchAcceleration`
+        var watchID = null;
+        
+        // Wait for Cordova to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        // Cordova is ready
+        //
+        function onDeviceReady() {
+            startWatch();
+        }
+
+        // Start watching the acceleration
+        //
+        function startWatch() {
+            
+            // Update acceleration every 3 seconds
+            var options = { frequency: 3000 };
+            
+            watchID = navigator.accelerometer.watchAcceleration(onSuccess, onError, options);
+        }
+        
+        // Stop watching the acceleration
+        //
+        function stopWatch() {
+            if (watchID) {
+                navigator.accelerometer.clearWatch(watchID);
+                watchID = null;
+            }
+        }
+		    
+        // onSuccess: Get a snapshot of the current acceleration
+        //
+        function onSuccess(acceleration) {
+            var element = document.getElementById('accelerometer');
+            element.innerHTML = 'Acceleration X: ' + acceleration.x + '<br />' +
+                                'Acceleration Y: ' + acceleration.y + '<br />' +
+                                'Acceleration Z: ' + acceleration.z + '<br />' + 
+                                'Timestamp: '      + acceleration.timestamp + '<br />';
+        }
+
+        // onError: Failed to get the acceleration
+        //
+        function onError() {
+            alert('onError!');
+        }
+
+        </script>
+      </head>
+      <body>
+        <div id="accelerometer">Waiting for accelerometer...</div>
+		<button onclick="stopWatch();">Stop Watching</button>
+      </body>
+    </html>
diff --git a/docs/en/1.9.0/cordova/accelerometer/accelerometer.getCurrentAcceleration.md b/docs/en/1.9.0/cordova/accelerometer/accelerometer.getCurrentAcceleration.md
new file mode 100644
index 0000000..b80bff3
--- /dev/null
+++ b/docs/en/1.9.0/cordova/accelerometer/accelerometer.getCurrentAcceleration.md
@@ -0,0 +1,108 @@
+---
+license: 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.
+---
+
+accelerometer.getCurrentAcceleration
+====================================
+
+Get the current acceleration along the x, y, and z axis.
+
+    navigator.accelerometer.getCurrentAcceleration(accelerometerSuccess, accelerometerError);
+
+Description
+-----------
+
+The accelerometer is a motion sensor that detects the change (delta) in movement relative to the current device orientation. The accelerometer can detect 3D movement along the x, y, and z axis.
+
+The acceleration is returned using the `accelerometerSuccess` callback function.
+
+Supported Platforms
+-------------------
+
+- Android
+- BlackBerry WebWorks (OS 5.0 and higher)
+- iPhone
+- Windows Phone 7 (Mango)
+- Bada 1.2 & 2.x
+
+Quick Example
+-------------
+
+    function onSuccess(acceleration) {
+        alert('Acceleration X: ' + acceleration.x + '\n' +
+              'Acceleration Y: ' + acceleration.y + '\n' +
+              'Acceleration Z: ' + acceleration.z + '\n' +
+              'Timestamp: '      + acceleration.timestamp + '\n');
+    };
+
+    function onError() {
+        alert('onError!');
+    };
+
+    navigator.accelerometer.getCurrentAcceleration(onSuccess, onError);
+
+Full Example
+------------
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>Acceleration Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for Cordova to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        // Cordova is ready
+        //
+        function onDeviceReady() {
+            navigator.accelerometer.getCurrentAcceleration(onSuccess, onError);
+        }
+    
+        // onSuccess: Get a snapshot of the current acceleration
+        //
+        function onSuccess(acceleration) {
+            alert('Acceleration X: ' + acceleration.x + '\n' +
+                  'Acceleration Y: ' + acceleration.y + '\n' +
+                  'Acceleration Z: ' + acceleration.z + '\n' +
+                  'Timestamp: '      + acceleration.timestamp + '\n');
+        }
+    
+        // onError: Failed to get the acceleration
+        //
+        function onError() {
+            alert('onError!');
+        }
+
+        </script>
+      </head>
+      <body>
+        <h1>Example</h1>
+        <p>getCurrentAcceleration</p>
+      </body>
+    </html>
+    
+iPhone Quirks
+-------------
+
+- iPhone doesn't have the concept of getting the current acceleration at any given point.
+- You must watch the acceleration and capture the data at given time intervals.
+- Thus, the `getCurrentAcceleration` function will give you the last value reported from a Cordova `watchAccelerometer` call.
diff --git a/docs/en/1.9.0/cordova/accelerometer/accelerometer.md b/docs/en/1.9.0/cordova/accelerometer/accelerometer.md
new file mode 100644
index 0000000..3dea6b7
--- /dev/null
+++ b/docs/en/1.9.0/cordova/accelerometer/accelerometer.md
@@ -0,0 +1,90 @@
+---
+license: 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.
+---
+
+Accelerometer
+=============
+
+> Captures device motion in the x, y, and z direction.
+
+Methods
+-------
+
+- accelerometer.getCurrentAcceleration
+- accelerometer.watchAcceleration
+- accelerometer.clearWatch
+
+Arguments
+---------
+
+- accelerometerSuccess
+- accelerometerError
+- accelerometerOptions
+
+Objects (Read-Only)
+-------------------
+
+- Acceleration
+
+Permissions
+-----------
+
+### Android
+
+#### app/res/xml/plugins.xml
+
+    <plugin name="Accelerometer" value="org.apache.cordova.AccelListener" />
+
+### Bada
+
+    No permissions are required.
+
+### BlackBerry WebWorks
+
+#### www/plugins.xml
+
+    <plugin name="Accelerometer" value="org.apache.cordova.accelerometer.Accelerometer" />
+
+#### www/config.xml
+
+    <feature id="blackberry.system"  required="true" version="1.0.0.0" />
+    <feature id="org.apache.cordova" required="true" version="1.0.0" />
+
+### iOS
+
+#### App/Supporting Files/Cordova.plist
+
+    <key>Plugins</key>
+    <dict>
+        <key>Accelerometer</key>
+        <string>CDVAccelerometer</string>
+    </dict>
+
+### webOS
+
+    No permissions are required.
+
+### Windows Phone
+
+#### Properties/WPAppManifest.xml
+
+    <Capabilities>
+        <Capability Name="ID_CAP_SENSORS" />
+    </Capabilities>
+
+Reference: [Application Manifest for Windows Phone](http://msdn.microsoft.com/en-us/library/ff769509%28v=vs.92%29.aspx)
diff --git a/docs/en/1.9.0/cordova/accelerometer/accelerometer.watchAcceleration.md b/docs/en/1.9.0/cordova/accelerometer/accelerometer.watchAcceleration.md
new file mode 100644
index 0000000..6cb19b9
--- /dev/null
+++ b/docs/en/1.9.0/cordova/accelerometer/accelerometer.watchAcceleration.md
@@ -0,0 +1,137 @@
+---
+license: 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.
+---
+
+accelerometer.watchAcceleration
+===============================
+
+At a regular interval, get the acceleration along the x, y, and z axis.
+
+    var watchID = navigator.accelerometer.watchAcceleration(accelerometerSuccess,
+                                                           accelerometerError,
+                                                           [accelerometerOptions]);
+                                                           
+Description
+-----------
+
+The accelerometer is a motion sensor that detects the change (delta) in movement relative to the current position. The accelerometer can detect 3D movement along the x, y, and z axis.
+
+The `accelerometer.watchAcceleration` gets the device's current acceleration at a regular interval. Each time the `Acceleration` is retrieved, the `accelerometerSuccess` callback function is executed. Specify the interval in milliseconds via the `frequency` parameter in the `acceleratorOptions` object.
+
+The returned watch ID references references the accelerometer watch interval. The watch ID can be used with `accelerometer.clearWatch` to stop watching the accelerometer.
+
+Supported Platforms
+-------------------
+
+- Android
+- BlackBerry WebWorks (OS 5.0 and higher)
+- iPhone
+- Windows Phone 7 (Mango)
+- Bada 1.2 & 2.x
+
+
+Quick Example
+-------------
+
+    function onSuccess(acceleration) {
+        alert('Acceleration X: ' + acceleration.x + '\n' +
+              'Acceleration Y: ' + acceleration.y + '\n' +
+              'Acceleration Z: ' + acceleration.z + '\n' +
+              'Timestamp: '      + acceleration.timestamp + '\n');
+    };
+
+    function onError() {
+        alert('onError!');
+    };
+
+    var options = { frequency: 3000 };  // Update every 3 seconds
+    
+    var watchID = navigator.accelerometer.watchAcceleration(onSuccess, onError, options);
+
+Full Example
+------------
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>Acceleration Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // The watch id references the current `watchAcceleration`
+        var watchID = null;
+        
+        // Wait for Cordova to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        // Cordova is ready
+        //
+        function onDeviceReady() {
+            startWatch();
+        }
+
+        // Start watching the acceleration
+        //
+        function startWatch() {
+            
+            // Update acceleration every 3 seconds
+            var options = { frequency: 3000 };
+            
+            watchID = navigator.accelerometer.watchAcceleration(onSuccess, onError, options);
+        }
+        
+        // Stop watching the acceleration
+        //
+        function stopWatch() {
+            if (watchID) {
+                navigator.accelerometer.clearWatch(watchID);
+                watchID = null;
+            }
+        }
+        
+        // onSuccess: Get a snapshot of the current acceleration
+        //
+        function onSuccess(acceleration) {
+            var element = document.getElementById('accelerometer');
+            element.innerHTML = 'Acceleration X: ' + acceleration.x + '<br />' +
+                                'Acceleration Y: ' + acceleration.y + '<br />' +
+                                'Acceleration Z: ' + acceleration.z + '<br />' +
+                                'Timestamp: '      + acceleration.timestamp + '<br />';
+        }
+
+        // onError: Failed to get the acceleration
+        //
+        function onError() {
+            alert('onError!');
+        }
+
+        </script>
+      </head>
+      <body>
+        <div id="accelerometer">Waiting for accelerometer...</div>
+      </body>
+    </html>
+    
+ iPhone Quirks
+-------------
+
+- At the interval requested, Cordova will call the success callback function and pass the accelerometer results.
+- However, in requests to the device Cordova restricts the interval to minimum of every 40ms and a maximum of every 1000ms.
+  - For example, if you request an interval of 3 seconds (3000ms), Cordova will request an interval of 1 second from the device but invoke the success callback at the requested interval of 3 seconds.
diff --git a/docs/en/1.9.0/cordova/accelerometer/parameters/accelerometerError.md b/docs/en/1.9.0/cordova/accelerometer/parameters/accelerometerError.md
new file mode 100644
index 0000000..c908c16
--- /dev/null
+++ b/docs/en/1.9.0/cordova/accelerometer/parameters/accelerometerError.md
@@ -0,0 +1,27 @@
+---
+license: 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.
+---
+
+accelerometerError
+==================
+
+onError callback function for acceleration functions.
+
+    function() {
+        // Handle the error
+    }
\ No newline at end of file
diff --git a/docs/en/1.9.0/cordova/accelerometer/parameters/accelerometerOptions.md b/docs/en/1.9.0/cordova/accelerometer/parameters/accelerometerOptions.md
new file mode 100644
index 0000000..197f416
--- /dev/null
+++ b/docs/en/1.9.0/cordova/accelerometer/parameters/accelerometerOptions.md
@@ -0,0 +1,28 @@
+---
+license: 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.
+---
+
+accelerometerOptions
+====================
+
+An optional parameter to customize the retrieval of the accelerometer.
+
+Options
+-------
+
+- __frequency:__ How often to retrieve the `Acceleration` in milliseconds. _(Number)_ (Default: 10000)
\ No newline at end of file
diff --git a/docs/en/1.9.0/cordova/accelerometer/parameters/accelerometerSuccess.md b/docs/en/1.9.0/cordova/accelerometer/parameters/accelerometerSuccess.md
new file mode 100644
index 0000000..277fca8
--- /dev/null
+++ b/docs/en/1.9.0/cordova/accelerometer/parameters/accelerometerSuccess.md
@@ -0,0 +1,42 @@
+---
+license: 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.
+---
+
+accelerometerSuccess
+====================
+
+onSuccess callback function that provides the Acceleration information.
+
+    function(acceleration) {
+        // Do something
+    }
+
+Parameters
+----------
+
+- __acceleration:__ The acceleration at a single moment in time. (Acceleration)
+
+Example
+-------
+
+    function onSuccess(acceleration) {
+        alert('Acceleration X: ' + acceleration.x + '\n' +
+              'Acceleration Y: ' + acceleration.y + '\n' +
+              'Acceleration Z: ' + acceleration.z + '\n' +
+              'Timestamp: '      + acceleration.timestamp + '\n');
+    };
\ No newline at end of file
diff --git a/docs/en/1.9.0/cordova/camera/camera.cleanup.md b/docs/en/1.9.0/cordova/camera/camera.cleanup.md
new file mode 100644
index 0000000..fbf9e13
--- /dev/null
+++ b/docs/en/1.9.0/cordova/camera/camera.cleanup.md
@@ -0,0 +1,50 @@
+---
+license: 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.
+---
+
+camera.cleanup
+=================
+
+Cleans up the image files that were taken by the camera, that were stored in a temporary storage location.
+
+    navigator.camera.cleanup( cameraSuccess, cameraError );
+
+Description
+-----------
+
+Cleans up the image files stored in the temporary storage location, when the function `camera.getPicture` is used with  `Camera.sourceType = Camera.PictureSourceType.CAMERA` and `Camera.destinationType = Camera.DestinationType.FILE_URI`
+
+
+Supported Platforms
+-------------------
+
+- iOS
+
+
+Example
+-------------
+
+    navigator.camera.cleanup(onSuccess, onFail); 
+
+    function onSuccess() {
+        console.log("Camera cleanup success.")
+    }
+
+    function onFail(message) {
+        alert('Failed because: ' + message);
+    }
diff --git a/docs/en/1.9.0/cordova/camera/camera.getPicture.md b/docs/en/1.9.0/cordova/camera/camera.getPicture.md
new file mode 100644
index 0000000..381d57a
--- /dev/null
+++ b/docs/en/1.9.0/cordova/camera/camera.getPicture.md
@@ -0,0 +1,207 @@
+---
+license: 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.
+---
+
+camera.getPicture
+=================
+
+Takes a photo using the camera or retrieves a photo from the device's album.  The image is returned as a base64 encoded `String` or as the URI of an image file.
+
+    navigator.camera.getPicture( cameraSuccess, cameraError, [ cameraOptions ] );
+
+Description
+-----------
+
+Function `camera.getPicture` opens the device's default camera application so that the user can take a picture (if `Camera.sourceType = Camera.PictureSourceType.CAMERA`, which is the default). Once the photo is taken, the camera application closes and your application is restored.
+
+If `Camera.sourceType = Camera.PictureSourceType.PHOTOLIBRARY` or `Camera.PictureSourceType.SAVEDPHOTOALBUM`, then a photo chooser dialog is shown, from which a photo from the album can be selected.
+
+The return value will be sent to the `cameraSuccess` function, in one of the following formats, depending on the `cameraOptions` you specify:
+
+- A `String` containing the Base64 encoded photo image (default). 
+- A `String` representing the image file location on local storage.  
+
+You can do whatever you want with the encoded image or URI, for example:
+
+- Render the image in an `<img>` tag _(see example below)_
+- Save the data locally (`LocalStorage`, [Lawnchair](http://brianleroux.github.com/lawnchair/), etc)
+- Post the data to a remote server
+
+Note: The image quality of pictures taken using the camera on newer devices is quite good, and images from the Photo Album will not be downscaled to a lower quality, even if a quality parameter is specified.  _Encoding such images using Base64 has caused memory issues on some of these devices (iPhone 4, BlackBerry Torch 9800)._  Therefore, using FILE_URI as the 'Camera.destinationType' is highly recommended.
+
+Supported Platforms
+-------------------
+
+- Android
+- Blackberry WebWorks (OS 5.0 and higher)
+- iOS
+- Windows Phone 7 ( Mango )
+- Bada 1.2
+- webOS
+
+iOS Quirks
+----------
+
+Including a JavaScript alert() in either of the callback functions can cause problems.  Wrap the alert in a setTimeout() to allow the iOS image picker or popover to fully close before the alert is displayed: setTimeout("alert('message');", 0);
+
+Windows Phone 7 Quirks
+----------------------
+
+Invoking the native camera application while your device is connected
+via Zune will not work, and the error callback will be triggered.
+
+Quick Example
+-------------
+
+Take photo and retrieve Base64-encoded image:
+
+    navigator.camera.getPicture(onSuccess, onFail, { quality: 50,
+        destinationType: Camera.DestinationType.DATA_URL
+     }); 
+
+    function onSuccess(imageData) {
+        var image = document.getElementById('myImage');
+        image.src = "data:image/jpeg;base64," + imageData;
+    }
+
+    function onFail(message) {
+        alert('Failed because: ' + message);
+    }
+
+Take photo and retrieve image file location: 
+
+    navigator.camera.getPicture(onSuccess, onFail, { quality: 50, 
+        destinationType: Camera.DestinationType.FILE_URI }); 
+
+    function onSuccess(imageURI) {
+        var image = document.getElementById('myImage');
+        image.src = imageURI;
+    }
+
+    function onFail(message) {
+        alert('Failed because: ' + message);
+    }
+
+
+Full Example
+------------
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>Capture Photo</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        var pictureSource;   // picture source
+        var destinationType; // sets the format of returned value 
+        
+        // Wait for Cordova to connect with the device
+        //
+        document.addEventListener("deviceready",onDeviceReady,false);
+    
+        // Cordova is ready to be used!
+        //
+        function onDeviceReady() {
+            pictureSource=navigator.camera.PictureSourceType;
+            destinationType=navigator.camera.DestinationType;
+        }
+
+        // Called when a photo is successfully retrieved
+        //
+        function onPhotoDataSuccess(imageData) {
+          // Uncomment to view the base64 encoded image data
+          // console.log(imageData);
+      
+          // Get image handle
+          //
+          var smallImage = document.getElementById('smallImage');
+      
+          // Unhide image elements
+          //
+          smallImage.style.display = 'block';
+      
+          // Show the captured photo
+          // The inline CSS rules are used to resize the image
+          //
+          smallImage.src = "data:image/jpeg;base64," + imageData;
+        }
+
+        // Called when a photo is successfully retrieved
+        //
+        function onPhotoURISuccess(imageURI) {
+          // Uncomment to view the image file URI 
+          // console.log(imageURI);
+      
+          // Get image handle
+          //
+          var largeImage = document.getElementById('largeImage');
+      
+          // Unhide image elements
+          //
+          largeImage.style.display = 'block';
+      
+          // Show the captured photo
+          // The inline CSS rules are used to resize the image
+          //
+          largeImage.src = imageURI;
+        }
+
+        // A button will call this function
+        //
+        function capturePhoto() {
+          // Take picture using device camera and retrieve image as base64-encoded string
+          navigator.camera.getPicture(onPhotoDataSuccess, onFail, { quality: 50,
+            destinationType: destinationType.DATA_URL });
+        }
+
+        // A button will call this function
+        //
+        function capturePhotoEdit() {
+          // Take picture using device camera, allow edit, and retrieve image as base64-encoded string  
+          navigator.camera.getPicture(onPhotoDataSuccess, onFail, { quality: 20, allowEdit: true,
+            destinationType: destinationType.DATA_URL });
+        }
+    
+        // A button will call this function
+        //
+        function getPhoto(source) {
+          // Retrieve image file location from specified source
+          navigator.camera.getPicture(onPhotoURISuccess, onFail, { quality: 50, 
+            destinationType: destinationType.FILE_URI,
+            sourceType: source });
+        }
+
+        // Called if something bad happens.
+        // 
+        function onFail(message) {
+          alert('Failed because: ' + message);
+        }
+
+        </script>
+      </head>
+      <body>
+        <button onclick="capturePhoto();">Capture Photo</button> <br>
+        <button onclick="capturePhotoEdit();">Capture Editable Photo</button> <br>
+        <button onclick="getPhoto(pictureSource.PHOTOLIBRARY);">From Photo Library</button><br>
+        <button onclick="getPhoto(pictureSource.SAVEDPHOTOALBUM);">From Photo Album</button><br>
+        <img style="display:none;width:60px;height:60px;" id="smallImage" src="" />
+        <img style="display:none;" id="largeImage" src="" />
+      </body>
+    </html>
diff --git a/docs/en/1.9.0/cordova/camera/camera.md b/docs/en/1.9.0/cordova/camera/camera.md
new file mode 100644
index 0000000..aa09ac9
--- /dev/null
+++ b/docs/en/1.9.0/cordova/camera/camera.md
@@ -0,0 +1,93 @@
+---
+license: 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.
+---
+
+Camera
+======
+
+> The `camera` object provides access to the device's default camera application.
+
+Methods
+-------
+
+- camera.getPicture
+- camera.cleanup
+
+Permissions
+-----------
+
+### Android
+
+#### app/res/xml/plugins.xml
+
+    <plugin name="Camera" value="org.apache.cordova.CameraLauncher" />
+
+#### app/AndroidManifest
+
+    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
+
+### Bada
+
+#### manifest.xml
+
+    <Privilege>
+        <Name>CAMERA</Name>
+    </Privilege>
+    <Privilege>
+        <Name>RECORDING</Name>
+    </Privilege>
+
+### BlackBerry WebWorks
+
+#### www/plugins.xml
+
+    <plugin name="Camera" value="org.apache.cordova.camera.Camera" />
+
+#### www/config.xml
+
+    <feature id="blackberry.media.camera" />
+
+    <rim:permissions>
+        <rim:permit>use_camera</rim:permit>
+    </rim:permissions>
+
+### iOS
+
+#### App/Supporting Files/Cordova.plist
+
+    <key>Plugins</key>
+    <dict>
+        <key>Camera</key>
+        <string>CDVCamera</string>
+    </dict>
+
+### webOS
+
+    No permissions are required.
+
+### Windows Phone
+
+#### Properties/WPAppManifest.xml
+
+    <Capabilities>
+        <Capability Name="ID_CAP_CAMERA" />
+        <Capability Name="ID_CAP_ISV_CAMERA" />
+        <Capability Name="ID_HW_FRONTCAMERA" />
+    </Capabilities>
+
+Reference: [Application Manifest for Windows Phone](http://msdn.microsoft.com/en-us/library/ff769509%28v=vs.92%29.aspx)
diff --git a/docs/en/1.9.0/cordova/camera/parameter/CameraPopoverOptions.md b/docs/en/1.9.0/cordova/camera/parameter/CameraPopoverOptions.md
new file mode 100644
index 0000000..6314e8a
--- /dev/null
+++ b/docs/en/1.9.0/cordova/camera/parameter/CameraPopoverOptions.md
@@ -0,0 +1,71 @@
+---
+license: 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.
+---
+
+CameraPopoverOptions
+====================
+
+Parameters only used by iOS to specify the anchor element location and arrow direction of popover used on iPad when selecting images from the library or album.
+
+    { x : 0, 
+      y :  32,
+      width : 320,
+      height : 480,
+      arrowDir : Camera.PopoverArrowDirection.ARROW_ANY
+    };
+
+CameraPopoverOptions
+--------------------
+
+- __x:__ x pixel coordinate of element on the screen to anchor popover onto. (`Number`)
+
+- __y:__ y pixel coordinate of element on the screen to anchor popover onto. (`Number`)
+
+- __width:__ width, in pixels, of the element on the screen to anchor popover onto. (`Number`)
+
+- __height:__ height, in pixels, of the element on the screen to anchor popover onto. (`Number`)
+
+- __arrowDir:__ Direction the arrow on the popover should point.  Defined in Camera.PopoverArrowDirection (`Number`)
+        
+            Camera.PopoverArrowDirection = {
+                ARROW_UP : 1,        // matches iOS UIPopoverArrowDirection constants
+                ARROW_DOWN : 2,
+                ARROW_LEFT : 4,
+                ARROW_RIGHT : 8,
+                ARROW_ANY : 15
+            };
+  
+Note that the size of the popover may change to adjust to the direction of the arrow and orientation of the screen.  Make sure to account for orientation changes when specifying the anchor element location. 
+
+Quick Example
+-------------
+
+     var popover = new CameraPopoverOptions(300,300,100,100,Camera.PopoverArrowDirection.ARROW_ANY);
+     var options = { quality: 50, destinationType: Camera.DestinationType.DATA_URL,sourceType: Camera.PictureSource.SAVEDPHOTOALBUM, popoverOptions : popover };
+     
+     navigator.camera.getPicture(onSuccess, onFail, options);
+     
+     function onSuccess(imageData) {
+        var image = document.getElementById('myImage');
+        image.src = "data:image/jpeg;base64," + imageData;
+    }
+
+    function onFail(message) {
+        alert('Failed because: ' + message);
+    }
+     
diff --git a/docs/en/1.9.0/cordova/camera/parameter/cameraError.md b/docs/en/1.9.0/cordova/camera/parameter/cameraError.md
new file mode 100644
index 0000000..7ee091b
--- /dev/null
+++ b/docs/en/1.9.0/cordova/camera/parameter/cameraError.md
@@ -0,0 +1,32 @@
+---
+license: 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.
+---
+
+cameraError
+===========
+
+onError callback function that provides an error message.
+
+    function(message) {
+        // Show a helpful message
+    }
+
+Parameters
+----------
+
+- __message:__ The message is provided by the device's native code. (`String`)
\ No newline at end of file
diff --git a/docs/en/1.9.0/cordova/camera/parameter/cameraOptions.md b/docs/en/1.9.0/cordova/camera/parameter/cameraOptions.md
new file mode 100644
index 0000000..9b53a45
--- /dev/null
+++ b/docs/en/1.9.0/cordova/camera/parameter/cameraOptions.md
@@ -0,0 +1,124 @@
+---
+license: 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.
+---
+
+cameraOptions
+=============
+
+Optional parameters to customize the camera settings.
+
+    { quality : 75, 
+      destinationType : Camera.DestinationType.DATA_URL, 
+      sourceType : Camera.PictureSourceType.CAMERA, 
+      allowEdit : true,
+      encodingType: Camera.EncodingType.JPEG,
+      targetWidth: 100,
+      targetHeight: 100,
+      popoverOptions: CameraPopoverOptions,
+      saveToPhotoAlbum: false };
+
+Options
+-------
+
+- __quality:__ Quality of saved image. Range is [0, 100]. (`Number`)
+
+- __destinationType:__ Choose the format of the return value.  Defined in navigator.camera.DestinationType (`Number`)
+        
+            Camera.DestinationType = {
+                DATA_URL : 0,                // Return image as base64 encoded string
+                FILE_URI : 1                 // Return image file URI
+            };
+
+- __sourceType:__ Set the source of the picture.  Defined in nagivator.camera.PictureSourceType (`Number`)
+     
+        Camera.PictureSourceType = {
+            PHOTOLIBRARY : 0,
+            CAMERA : 1,
+            SAVEDPHOTOALBUM : 2
+        };
+
+- __allowEdit:__ Allow simple editing of image before selection. (`Boolean`)
+  
+- __encodingType:__ Choose the encoding of the returned image file.  Defined in navigator.camera.EncodingType (`Number`)
+        
+            Camera.EncodingType = {
+                JPEG : 0,               // Return JPEG encoded image
+                PNG : 1                 // Return PNG encoded image
+            };
+
+- __targetWidth:__ Width in pixels to scale image. Must be used with targetHeight.  Aspect ratio is maintained. (`Number`)
+- __targetHeight:__ Height in pixels to scale image. Must be used with targetWidth. Aspect ratio is maintained. (`Number`)
+
+- __mediaType:__ Set the type of media to select from.  Only works when PictureSourceType is PHOTOLIBRARY or SAVEDPHOTOALBUM. Defined in nagivator.camera.MediaType (`Number`)
+     
+        Camera.MediaType = { 
+			PICTURE: 0,             // allow selection of still pictures only. DEFAULT. Will return format specified via DestinationType
+			VIDEO: 1,               // allow selection of video only, WILL ALWAYS RETURN FILE_URI
+			ALLMEDIA : 2			// allow selection from all media types
+};
+
+- __correctOrientation:__ Rotate the image to correct for the orientation of the device during capture. (`Boolean`)
+- __saveToPhotoAlbum:__ Save the image to the photo album on the device after capture. (`Boolean`)
+- __popoverOptions:__ iOS only options to specify popover location in iPad.  Defined in CameraPopoverOptions
+  
+Android Quirks
+--------------
+
+- Ignores the `allowEdit` parameter.
+- Camera.PictureSourceType.PHOTOLIBRARY and Camera.PictureSourceType.SAVEDPHOTOALBUM both display the same photo album.
+- Ignores the `correctOrientation` parameter.
+
+BlackBerry Quirks
+-----------------
+
+- Ignores the `quality` parameter.
+- Ignores the `sourceType` parameter.
+- Ignores the `allowEdit` parameter.
+- Application must have key injection permissions to close native Camera application after photo is taken.
+- Using Large image sizes may result in inability to encode image on later model devices with high resolution cameras (e.g. Torch 9800).
+- Camera.MediaType is not supported.
+- Ignores the `correctOrientation` parameter.
+- Ignores the `saveToPhotoAlbum` parameter.
+
+webOS Quirks
+-----------
+
+- Ignores the `quality` parameter.
+- Ignores the `sourceType` parameter.
+- Ignores the `allowEdit` parameter.
+- Camera.MediaType is not supported.
+- Ignores the `correctOrientation` parameter.
+- Ignores the `saveToPhotoAlbum` parameter.
+
+iOS Quirks
+--------------
+
+- Set `quality` below 50 to avoid memory error on some devices.
+- When `destinationType.FILE_URI` is used, photos are saved in the application's temporary directory.  Developers may delete the contents of this directory using the navigator.fileMgr APIs if storage space is a concern.
+
+Windows Phone 7 Quirks
+--------------
+
+- Ignores the `allowEdit` parameter.
+- Ignores the `correctOrientation` parameter.
+- Ignores the `saveToPhotoAlbum` parameter.
+
+Bada 1.2 Quirks
+--------------
+- options not supported
+- always returns a FILE URI
diff --git a/docs/en/1.9.0/cordova/camera/parameter/cameraSuccess.md b/docs/en/1.9.0/cordova/camera/parameter/cameraSuccess.md
new file mode 100644
index 0000000..773fba4
--- /dev/null
+++ b/docs/en/1.9.0/cordova/camera/parameter/cameraSuccess.md
@@ -0,0 +1,42 @@
+---
+license: 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.
+---
+
+cameraSuccess
+=============
+
+onSuccess callback function that provides the image data.
+
+    function(imageData) {
+        // Do something with the image
+    }
+
+Parameters
+----------
+
+- __imageData:__ Base64 encoding of the image data, OR the image file URI, depending on `cameraOptions` used. (`String`)
+
+Example
+-------
+
+    // Show image
+    //
+    function cameraCallback(imageData) {
+        var image = document.getElementById('myImage');
+        image.src = "data:image/jpeg;base64," + imageData;
+    }
\ No newline at end of file
diff --git a/docs/en/1.9.0/cordova/compass/compass.clearWatch.md b/docs/en/1.9.0/cordova/compass/compass.clearWatch.md
new file mode 100755
index 0000000..067a11d
--- /dev/null
+++ b/docs/en/1.9.0/cordova/compass/compass.clearWatch.md
@@ -0,0 +1,111 @@
+---
+license: 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.
+---
+
+compass.clearWatch
+========================
+
+Stop watching the compass referenced by the watch ID parameter.
+
+    navigator.compass.clearWatch(watchID);
+
+- __watchID__: The ID returned by `compass.watchHeading`.
+
+Supported Platforms
+-------------------
+
+- Android
+- iPhone
+- Windows Phone 7 ( Mango ) if available in hardware
+- Bada 1.2 & 2.x
+- webOS
+
+Quick Example
+-------------
+
+    var watchID = navigator.compass.watchHeading(onSuccess, onError, options);
+    
+    // ... later on ...
+    
+    navigator.compass.clearWatch(watchID);
+    
+Full Example
+------------
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>Compass Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // The watch id references the current `watchHeading`
+        var watchID = null;
+        
+        // Wait for Cordova to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        // Cordova is ready
+        //
+        function onDeviceReady() {
+            startWatch();
+        }
+
+        // Start watching the compass
+        //
+        function startWatch() {
+            
+            // Update compass every 3 seconds
+            var options = { frequency: 3000 };
+            
+            watchID = navigator.compass.watchHeading(onSuccess, onError, options);
+        }
+        
+        // Stop watching the compass
+        //
+        function stopWatch() {
+            if (watchID) {
+                navigator.compass.clearWatch(watchID);
+                watchID = null;
+            }
+        }
+        
+        // onSuccess: Get the current heading
+        //
+        function onSuccess(heading) {
+            var element = document.getElementById('heading');
+            element.innerHTML = 'Heading: ' + heading.magneticHeading;
+        }
+
+        // onError: Failed to get the heading
+        //
+        function onError(compassError) {
+            alert('Compass error: ' + compassError.code);
+        }
+
+
+        </script>
+      </head>
+      <body>
+        <div id="heading">Waiting for heading...</div>
+        <button onclick="startWatch();">Start Watching</button>
+        <button onclick="stopWatch();">Stop Watching</button>
+      </body>
+    </html>
diff --git a/docs/en/1.9.0/cordova/compass/compass.clearWatchFilter.md b/docs/en/1.9.0/cordova/compass/compass.clearWatchFilter.md
new file mode 100644
index 0000000..8c92c03
--- /dev/null
+++ b/docs/en/1.9.0/cordova/compass/compass.clearWatchFilter.md
@@ -0,0 +1,23 @@
+---
+license: 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.
+---
+
+compass.clearWatchFilter
+========================
+
+No longer supported as of 1.6.  See `compass.clearWatch`.
\ No newline at end of file
diff --git a/docs/en/1.9.0/cordova/compass/compass.getCurrentHeading.md b/docs/en/1.9.0/cordova/compass/compass.getCurrentHeading.md
new file mode 100755
index 0000000..aeb28fd
--- /dev/null
+++ b/docs/en/1.9.0/cordova/compass/compass.getCurrentHeading.md
@@ -0,0 +1,96 @@
+---
+license: 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.
+---
+
+compass.getCurrentHeading
+=========================
+
+Get the current compass heading.
+
+    navigator.compass.getCurrentHeading(compassSuccess, compassError, compassOptions);
+
+Description
+-----------
+
+The compass is a sensor that detects the direction or heading that the device is pointed.  It measures the heading in degrees from 0 to 359.99.
+
+The compass heading information is returned via a CompassHeading object using the `compassSuccess` callback function.
+
+Supported Platforms
+-------------------
+
+- Android
+- iPhone
+- Windows Phone 7 ( Mango ) if available in hardware
+- Bada 1.2 & 2.x
+- webOS
+
+Quick Example
+-------------
+
+    function onSuccess(heading) {
+        alert('Heading: ' + heading.magneticHeading);
+    };
+
+    function onError(error) {
+        alert('CompassError: ' + error.code);
+    };
+
+    navigator.compass.getCurrentHeading(onSuccess, onError);
+
+Full Example
+------------
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>Compass Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for Cordova to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        // Cordova is ready
+        //
+        function onDeviceReady() {
+            navigator.compass.getCurrentHeading(onSuccess, onError);
+        }
+    
+        // onSuccess: Get the current heading
+        //
+        function onSuccess(heading) {
+            alert('Heading: ' + heading.magneticHeading);
+        }
+    
+        // onError: Failed to get the heading
+        //
+        function onError(compassError) {
+            alert('Compass Error: ' + compassError.code);
+        }
+
+        </script>
+      </head>
+      <body>
+        <h1>Example</h1>
+        <p>getCurrentHeading</p>
+      </body>
+    </html>
+    
diff --git a/docs/en/1.9.0/cordova/compass/compass.md b/docs/en/1.9.0/cordova/compass/compass.md
new file mode 100755
index 0000000..1fe6b9f
--- /dev/null
+++ b/docs/en/1.9.0/cordova/compass/compass.md
@@ -0,0 +1,81 @@
+---
+license: 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.
+---
+
+Compass
+=======
+
+> Obtains the direction that the device is pointing.
+
+Methods
+-------
+
+- compass.getCurrentHeading
+- compass.watchHeading
+- compass.clearWatch
+- compass.watchHeadingFilter 	(obsolete)
+- compass.clearWatchFilter		(obsolete)
+
+Arguments
+---------
+
+- compassSuccess
+- compassError
+- compassOptions
+- compassHeading
+
+Permissions
+-----------
+
+### Android
+
+#### app/res/xml/plugins.xml
+
+    <plugin name="Compass" value="org.apache.cordova.CompassListener" />
+
+### Bada
+
+    No permissions are required.
+
+### BlackBerry WebWorks
+
+    No permissions are required.
+
+### iOS
+
+#### App/Supporting Files/Cordova.plist
+
+    <key>Plugins</key>
+    <dict>
+        <key>Compass</key>
+        <string>CDVLocation</string>
+    </dict>
+
+### webOS
+
+    No permissions are required.
+
+### Windows Phone
+
+#### Properties/WPAppManifest.xml
+
+    <Capabilities>
+        <Capability Name="ID_CAP_SENSORS" />
+    </Capabilities>
+
+Reference: [Application Manifest for Windows Phone](http://msdn.microsoft.com/en-us/library/ff769509%28v=vs.92%29.aspx)
diff --git a/docs/en/1.9.0/cordova/compass/compass.watchHeading.md b/docs/en/1.9.0/cordova/compass/compass.watchHeading.md
new file mode 100755
index 0000000..da1af1b
--- /dev/null
+++ b/docs/en/1.9.0/cordova/compass/compass.watchHeading.md
@@ -0,0 +1,132 @@
+---
+license: 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.
+---
+
+compass.watchHeading
+====================
+
+At a regular interval, get the compass heading in degrees.
+
+    var watchID = navigator.compass.watchHeading(compassSuccess, compassError, [compassOptions]);
+                                                           
+Description
+-----------
+
+The compass is a sensor that detects the direction or heading that the device is pointed.  It measures the heading in degrees from 0 to 359.99.
+
+The `compass.watchHeading` gets the device's current heading at a regular interval. Each time the heading is retrieved, the `headingSuccess` callback function is executed. Specify the interval in milliseconds via the `frequency` parameter in the `compassOptions` object.
+
+The returned watch ID references references the compass watch interval. The watch ID can be used with `compass.clearWatch` to stop watching the compass.
+
+Supported Platforms
+-------------------
+
+- Android
+- iPhone
+- Windows Phone 7 ( Mango ) if available in hardware
+- Bada 1.2 & 2.x
+- webOS
+
+
+Quick Example
+-------------
+
+    function onSuccess(heading) {
+        var element = document.getElementById('heading');
+        element.innerHTML = 'Heading: ' + heading.magneticHeading;
+    };
+
+    function onError(compassError) {
+            alert('Compass error: ' + compassError.code);
+    };
+
+    var options = { frequency: 3000 };  // Update every 3 seconds
+    
+    var watchID = navigator.compass.watchHeading(onSuccess, onError, options);
+
+Full Example
+------------
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>Compass Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // The watch id references the current `watchHeading`
+        var watchID = null;
+        
+        // Wait for Cordova to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        // Cordova is ready
+        //
+        function onDeviceReady() {
+            startWatch();
+        }
+
+        // Start watching the compass
+        //
+        function startWatch() {
+            
+            // Update compass every 3 seconds
+            var options = { frequency: 3000 };
+            
+            watchID = navigator.compass.watchHeading(onSuccess, onError, options);
+        }
+        
+        // Stop watching the compass
+        //
+        function stopWatch() {
+            if (watchID) {
+                navigator.compass.clearWatch(watchID);
+                watchID = null;
+            }
+        }
+        
+        // onSuccess: Get the current heading
+        //
+        function onSuccess(heading) {
+            var element = document.getElementById('heading');
+            element.innerHTML = 'Heading: ' + heading.magneticHeading;
+        }
+
+        // onError: Failed to get the heading
+        //
+        function onError(compassError) {
+            alert('Compass error: ' + compassError.code);
+        }
+
+        </script>
+      </head>
+      <body>
+        <div id="heading">Waiting for heading...</div>
+        <button onclick="startWatch();">Start Watching</button>
+        <button onclick="stopWatch();">Stop Watching</button>
+      </body>
+    </html>
+    
+iOS Quirks
+--------------
+
+In iOS `compass.watchHeading` can also get the device's current heading when it changes by a specified number of degrees. Each time the heading changes by the specified number of degrees or more, the `headingSuccess` callback function is called. Specify the degrees of change via the `filter` parameter in the `compassOptions` object.  Clear the watch as normal by passing the returned watch ID to `compass.clearWatch`.  This functionality replaces the previously separate, iOS only functions, watchHeadingFilter and clearWatchFilter, which were removed in 1.6.
+
+In iOS only one watchHeading can be in effect at one time.  If a watchHeading via filter is in effect, calling getCurrentHeading or watchHeading will use the existing filter value for specifying heading changes. On iOS watching heading changes via a filter is more efficient than via time.
diff --git a/docs/en/1.9.0/cordova/compass/compass.watchHeadingFilter.md b/docs/en/1.9.0/cordova/compass/compass.watchHeadingFilter.md
new file mode 100644
index 0000000..6a0283f
--- /dev/null
+++ b/docs/en/1.9.0/cordova/compass/compass.watchHeadingFilter.md
@@ -0,0 +1,23 @@
+---
+license: 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.
+---
+
+compass.watchHeadingFilter
+==========================
+
+No longer supported as of 1.6, see `compass.watchHeading` for equivalent functionality.
diff --git a/docs/en/1.9.0/cordova/compass/compassError/compassError.md b/docs/en/1.9.0/cordova/compass/compassError/compassError.md
new file mode 100644
index 0000000..989b4dc
--- /dev/null
+++ b/docs/en/1.9.0/cordova/compass/compassError/compassError.md
@@ -0,0 +1,40 @@
+---
+license: 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.
+---
+
+CompassError
+==========
+
+A `CompassError` object is returned to the `compassError` callback function when an error occurs.
+
+Properties
+----------
+
+- __code:__ One of the predefined error codes listed below.
+
+Constants
+---------
+- `CompassError.COMPASS_INTERNAL_ERR` 
+- `CompassError.COMPASS_NOT_SUPPORTED`
+
+Description
+-----------
+
+The `CompassError` object is returned to the user through the `compassError` callback function when an error occurs.
+
+
diff --git a/docs/en/1.9.0/cordova/compass/parameters/compassError.md b/docs/en/1.9.0/cordova/compass/parameters/compassError.md
new file mode 100755
index 0000000..cf89324
--- /dev/null
+++ b/docs/en/1.9.0/cordova/compass/parameters/compassError.md
@@ -0,0 +1,30 @@
+---
+license: 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.
+---
+
+compassError
+==========
+
+onError callback function for compass functions. 
+
+Example
+-------
+
+function(CompassError) {
+    // Handle the error
+}
diff --git a/docs/en/1.9.0/cordova/compass/parameters/compassHeading.md b/docs/en/1.9.0/cordova/compass/parameters/compassHeading.md
new file mode 100644
index 0000000..935ea06
--- /dev/null
+++ b/docs/en/1.9.0/cordova/compass/parameters/compassHeading.md
@@ -0,0 +1,48 @@
+---
+license: 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.
+---
+
+compassHeading
+==========
+
+A `CompassHeading` object is returned to the `compassSuccess` callback function when an error occurs.
+
+Properties
+----------
+- __magneticHeading:__ The heading in degrees from 0 - 359.99 at a single moment in time. _(Number)_
+- __trueHeading:__ The heading relative to the geographic North Pole in degrees 0 - 359.99 at a single moment in time. A negative value indicates that the true heading could not be determined.  _(Number)_
+- __headingAccuracy:__ The deviation in degrees between the reported heading and the true heading. _(Number)_
+- __timestamp:__ The time at which this heading was determined.  _(milliseconds)_
+
+Description
+-----------
+
+The `CompassHeading` object is returned to the user through the `compassSuccess` callback function.
+
+Android Quirks
+--------------
+- trueHeading is not supported. It will report the same value as magneticHeading
+- headingAccuracy will always be 0 as there is no difference between the magneticHeading and trueHeading on Android.
+
+iOS Quirks
+----------
+
+- trueHeading is only returned when location services are running via `navigator.geolocation.watchLocation()`
+- For iOS > 4 devices, if the device is rotated and the app supports that orientation, the heading values will be reported 
+back with respect to the current orientation. 
+
diff --git a/docs/en/1.9.0/cordova/compass/parameters/compassOptions.md b/docs/en/1.9.0/cordova/compass/parameters/compassOptions.md
new file mode 100755
index 0000000..252966c
--- /dev/null
+++ b/docs/en/1.9.0/cordova/compass/parameters/compassOptions.md
@@ -0,0 +1,42 @@
+---
+license: 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.
+---
+
+compassOptions
+==============
+
+An optional parameter to customize the retrieval of the compass.
+
+Options
+-------
+
+- __frequency:__ How often to retrieve the compass heading in milliseconds. _(Number)_ (Default: 100)
+- __filter:__ The change in degrees required to initiate a watchHeading success callback. _(Number)_
+
+Android Quirks
+______________
+- filter is not supported.
+
+Windows Phone 7 Quirks
+--------------
+
+- filter is not supported.
+
+Bada Quirks
+-----------
+- filter is not supported.
diff --git a/docs/en/1.9.0/cordova/compass/parameters/compassSuccess.md b/docs/en/1.9.0/cordova/compass/parameters/compassSuccess.md
new file mode 100644
index 0000000..1b0fc9c
--- /dev/null
+++ b/docs/en/1.9.0/cordova/compass/parameters/compassSuccess.md
@@ -0,0 +1,40 @@
+---
+license: 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.
+---
+
+compassSuccess
+==============
+
+onSuccess callback function that provides the compass heading information via a compassHeading object.
+
+    function(heading) {
+        // Do something
+    }
+
+Parameters
+----------
+
+
+- __heading:__ The heading information. _(compassHeading)_
+
+Example
+-------
+
+    function onSuccess(heading) {
+        alert('Heading: ' + heading.magneticHeading);
+    };
diff --git a/docs/en/1.9.0/cordova/connection/connection.md b/docs/en/1.9.0/cordova/connection/connection.md
new file mode 100644
index 0000000..c9b7c09
--- /dev/null
+++ b/docs/en/1.9.0/cordova/connection/connection.md
@@ -0,0 +1,92 @@
+---
+license: 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.
+---
+
+Connection
+==========
+
+> The `connection` object gives access to the device's cellular and wifi connection information.
+
+This object is accessed under the `navigator.network` interface.
+
+Properties
+----------
+
+- connection.type
+
+Constants
+---------
+
+- Connection.UNKNOWN
+- Connection.ETHERNET
+- Connection.WIFI
+- Connection.CELL_2G
+- Connection.CELL_3G
+- Connection.CELL_4G
+- Connection.NONE
+
+Permissions
+-----------
+
+### Android
+
+#### app/res/xml/plugins.xml
+
+    <plugin name="NetworkStatus" value="org.apache.cordova.NetworkManager" />
+
+#### app/AndroidManifest.xml
+
+    <uses-permission android:name="android.permission.INTERNET" />
+    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
+    <uses-permission android:name="android.permission.READ_PHONE_STATE" />
+
+### Bada
+
+    <Privilege>
+        <Name>SYSTEM_SERVICE</Name>
+    </Privilege>
+
+### BlackBerry WebWorks
+
+#### www/plugins.xml
+
+    <plugin name="Network Status" value="org.apache.cordova.network.Network" />
+
+### iOS
+
+#### App/Supporting Files/Cordova.plist
+
+    <key>Plugins</key>
+    <dict>
+        <key>NetworkStatus</key>
+        <string>CDVConnection</string>
+    </dict>
+
+### webOS
+
+    No permissions are required.
+
+### Windows Phone
+
+#### Properties/WPAppManifest.xml
+
+    <Capabilities>
+        <Capability Name="ID_CAP_NETWORKING" />
+    </Capabilities>
+
+Reference: [Application Manifest for Windows Phone](http://msdn.microsoft.com/en-us/library/ff769509%28v=vs.92%29.aspx)
diff --git a/docs/en/1.9.0/cordova/connection/connection.type.md b/docs/en/1.9.0/cordova/connection/connection.type.md
new file mode 100644
index 0000000..9a05c19
--- /dev/null
+++ b/docs/en/1.9.0/cordova/connection/connection.type.md
@@ -0,0 +1,123 @@
+---
+license: 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.
+---
+
+connection.type
+===================
+
+Checks the active network connection that is being used.
+
+Description
+-----------
+
+This property is a fast way to determine the device's network connection state, and type of connection.
+
+Supported Platforms
+-------------------
+
+- iOS
+- Android
+- BlackBerry WebWorks (OS 5.0 and higher)
+- Windows Phone 7 ( Mango )
+- Bada 2.x
+- webOS
+
+Quick Example
+-------------
+
+    function checkConnection() {
+        var networkState = navigator.network.connection.type;
+        
+        var states = {};
+        states[Connection.UNKNOWN]	= 'Unknown connection';
+        states[Connection.ETHERNET]	= 'Ethernet connection';
+        states[Connection.WIFI]   	= 'WiFi connection';
+        states[Connection.CELL_2G]	= 'Cell 2G connection';
+        states[Connection.CELL_3G]	= 'Cell 3G connection';
+        states[Connection.CELL_4G]	= 'Cell 4G connection';
+        states[Connection.NONE]   	= 'No network connection';
+    
+        alert('Connection type: ' + states[networkState]);
+    }
+    
+    checkConnection();
+
+Full Example
+------------
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>navigator.network.connection.type Example</title>
+        
+        <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
+        <script type="text/javascript" charset="utf-8">
+            
+        // Wait for Cordova to load
+        // 
+        document.addEventListener("deviceready", onDeviceReady, false);
+        
+        // Cordova is loaded and it is now safe to make calls Cordova methods
+        //
+        function onDeviceReady() {
+            checkConnection();
+        }
+        
+	    function checkConnection() {
+	        var networkState = navigator.network.connection.type;
+
+	        var states = {};
+	        states[Connection.UNKNOWN]	= 'Unknown connection';
+	        states[Connection.ETHERNET]	= 'Ethernet connection';
+	        states[Connection.WIFI]   	= 'WiFi connection';
+	        states[Connection.CELL_2G]	= 'Cell 2G connection';
+	        states[Connection.CELL_3G]	= 'Cell 3G connection';
+	        states[Connection.CELL_4G]	= 'Cell 4G connection';
+	        states[Connection.NONE]   	= 'No network connection';
+
+	        alert('Connection type: ' + states[networkState]);
+	    }
+        
+        </script>
+      </head>
+      <body>
+        <p>A dialog box will report the network state.</p>
+      </body>
+    </html>
+
+iOS Quirks
+----------
+
+- iOS cannot detect the type of cellular network connection.
+    - `navigator.network.connection.type` is set to `Connection.CELL_2G` for all cellular data.
+
+Bada Quirks
+-----------
+
+- Bada can only detect a WiFi or cellular connection.
+    - `navigator.network.connection.type` is set to `Connection.CELL_2G` for all cellular data.
+
+webOS Quirks
+------------
+
+- Only shows that a connection is available, but not which type.
+
+Windows Phone Quirks
+--------------------
+
+- Windows Phone Emulator always detects `navigator.network.connection.type` as `Connection.UNKNOWN`.
diff --git a/docs/en/1.9.0/cordova/contacts/Contact/contact.md b/docs/en/1.9.0/cordova/contacts/Contact/contact.md
new file mode 100644
index 0000000..47bcf37
--- /dev/null
+++ b/docs/en/1.9.0/cordova/contacts/Contact/contact.md
@@ -0,0 +1,232 @@
+---
+license: 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.
+---
+
+Contact
+=======
+
+Contains properties that describe a contact, such as a user's personal or business contact.
+
+Properties
+----------
+
+- __id:__ A globally unique identifier. _(DOMString)_
+- __displayName:__ The name of this Contact, suitable for display to end-users. _(DOMString)_
+- __name:__ An object containing all components of a persons name. _(ContactName)_
+- __nickname:__ A casual name to address the contact by. _(DOMString)_
+- __phoneNumbers:__ An array of all the contact's phone numbers. _(ContactField[])_
+- __emails:__ An array of all the contact's email addresses. _(ContactField[])_
+- __addresses:__ An array of all the contact's addresses. _(ContactAddress[])_
+- __ims:__ An array of all the contact's IM addresses. _(ContactField[])_
+- __organizations:__ An array of all the contact's organizations. _(ContactOrganization[])_
+- __birthday:__ The birthday of the contact. _(Date)_
+- __note:__ A note about the contact. _(DOMString)_
+- __photos:__ An array of the contact's photos. _(ContactField[])_
+- __categories:__  An array of all the contacts user defined categories. _(ContactField[])_
+- __urls:__  An array of web pages associated to the contact. _(ContactField[])_
+
+Methods
+-------
+
+- __clone__: Returns a new Contact object that is a deep copy of the calling object, with the id property set to `null`. 
+- __remove__: Removes the contact from the device contacts database.  An error callback is called with a `ContactError` object if the removal is unsuccessful.
+- __save__: Saves a new contact to the device contacts database, or updates an existing contact if a contact with the same __id__ already exists.
+
+
+Details
+-------
+
+The `Contact` object represents a user contact.  Contacts can be created, saved to, or removed from the device contacts database.  Contacts can also be retrieved (individually or in bulk) from the database by invoking the `contacts.find` method.
+
+_Note: Not all of the above contact fields are supported on every device platform.  Please check each platform's Quirks section for information about which fields are supported._
+
+Supported Platforms
+-------------------
+
+- Android
+- BlackBerry WebWorks (OS 5.0 and higher)
+- iOS
+- Bada 1.2 & 2.0
+
+Save Quick Example
+------------------
+
+	function onSuccess(contact) {
+		alert("Save Success");
+	};
+
+	function onError(contactError) {
+		alert("Error = " + contactError.code);
+	};
+
+	// create a new contact object
+    var contact = navigator.contacts.create();
+	contact.displayName = "Plumber";
+	contact.nickname = "Plumber"; 		//specify both to support all devices
+	
+	// populate some fields
+	var name = new ContactName();
+	name.givenName = "Jane";
+	name.familyName = "Doe";
+	contact.name = name;
+	
+	// save to device
+	contact.save(onSuccess,onError);
+
+Clone Quick Example
+-------------------
+
+	// clone the contact object
+	var clone = contact.clone();
+	clone.name.givenName = "John";
+	console.log("Original contact name = " + contact.name.givenName);
+	console.log("Cloned contact name = " + clone.name.givenName); 
+
+Remove Quick Example
+--------------------
+
+    function onSuccess() {
+        alert("Removal Success");
+    };
+
+    function onError(contactError) {
+        alert("Error = " + contactError.code);
+    };
+
+	// remove the contact from the device
+	contact.remove(onSuccess,onError);
+
+Full Example
+------------
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>Contact Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for Cordova to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        // Cordova is ready
+        //
+        function onDeviceReady() {
+		    // create
+		    var contact = navigator.contacts.create();
+			contact.displayName = "Plumber";
+			contact.nickname = "Plumber"; 		//specify both to support all devices
+			var name = new ContactName();
+			name.givenName = "Jane";
+			name.familyName = "Doe";
+			contact.name = name;
+
+			// save
+			contact.save(onSaveSuccess,onSaveError);
+			
+			// clone
+			var clone = contact.clone();
+			clone.name.givenName = "John";
+			console.log("Original contact name = " + contact.name.givenName);
+			console.log("Cloned contact name = " + clone.name.givenName); 
+			
+			// remove
+			contact.remove(onRemoveSuccess,onRemoveError);
+        }
+        
+        // onSaveSuccess: Get a snapshot of the current contacts
+        //
+        function onSaveSuccess(contact) {
+			alert("Save Success");
+        }
+    
+        // onSaveError: Failed to get the contacts
+        //
+        function onSaveError(contactError) {
+			alert("Error = " + contactError.code);
+        }
+        
+        // onRemoveSuccess: Get a snapshot of the current contacts
+        //
+        function onRemoveSuccess(contacts) {
+			alert("Removal Success");
+        }
+    
+        // onRemoveError: Failed to get the contacts
+        //
+        function onRemoveError(contactError) {
+			alert("Error = " + contactError.code);
+        }
+
+        </script>
+      </head>
+      <body>
+        <h1>Example</h1>
+        <p>Find Contacts</p>
+      </body>
+    </html>
+
+Android 2.X Quirks
+------------------
+
+- __categories:__  This property is not support by Android 2.X devices, and will always be returned as `null`.
+
+Android 1.X Quirks
+------------------
+
+- __name:__ This property is not support by Android 1.X devices, and will always be returned as `null`.
+- __nickname:__ This property is not support by Android 1.X devices, and will always be returned as `null`.
+- __birthday:__ This property is not support by Android 1.X devices, and will always be returned as `null`.
+- __photos:__ This property is not support by Android 1.X devices, and will always be returned as `null`.
+- __categories:__  This property is not support by Android 1.X devices, and will always be returned as `null`.
+- __urls:__  This property is not support by Android 1.X devices, and will always be returned as `null`.
+
+
+BlackBerry WebWorks (OS 5.0 and higher) Quirks
+---------------------------------------------
+
+- __id:__ Supported.  Assigned by device when contact is saved.
+- __displayName:__ Supported.  Stored in BlackBerry __user1__ field.
+- __nickname:__ This property is not supported, and will always be returned as `null`. 
+- __phoneNumbers:__ Partially supported.  Phone numbers will be stored in BlackBerry fields __homePhone1__ and __homePhone2__ if _type_ is 'home', __workPhone1__ and __workPhone2__ if _type_ is 'work', __mobilePhone__ if _type_ is 'mobile', __faxPhone__ if _type_ is 'fax', __pagerPhone__ if _type_ is 'pager', and __otherPhone__ if _type_ is none of the above.
+- __emails:__ Partially supported.  The first three email addresses will be stored in the BlackBerry __email1__, __email2__, and __email3__ fields, respectively.
+- __addresses:__ Partially supported.  The first and second addresses will be stored in the BlackBerry __homeAddress__ and __workAddress__ fields, respectively.
+- __ims:__ This property is not supported, and will always be returned as `null`. 
+- __organizations:__ Partially supported.  The __name__ and __title__ of the first organization are stored in the BlackBerry __company__ and __title__ fields, respectively.
+- __photos:__ - Partially supported.  A single thumbnail-sized photo is supported.  To set a contact's photo, pass in a either a Base64 encoded image, or a URL pointing to the image.  The image will be scaled down before saving to the BlackBerry contacts database.   The contact photo is returned as a Base64 encoded image.
+- __categories:__  Partially supported.  Only 'Business' and 'Personal' categories are supported. 
+- __urls:__  Partially supported. The first url is stored in BlackBerry __webpage__ field.
+
+iOS Quirks
+----------
+- __displayName:__ This property is not supported by iOS and will be returned as `null` unless there is no ContactName specified.  If there is no ContactName, then composite name, __nickame__ or "" is returned for __displayName__, respectively. 
+- __birthday:__ For input, this property must be provided as a JavaScript Date object. It is returned as a JavaScript Date object.
+- __photos:__ Returned Photo is stored in the application's temporary directory and a File URL to photo is returned.  Contents of temporary folder is deleted when application exits. 
+- __categories:__  This property is not currently supported and will always be returned as `null`.
+
+
+Bada Quirks
+-----------
+
+- __displayName:__ This property is not supported
+- __birthday:__ This property is not supported
+- __photos:__ This property should be a list with one URL to a photo
+- __categories:__ This property is not supported
+- __ims:__ This property is not supported
diff --git a/docs/en/1.9.0/cordova/contacts/ContactAddress/contactaddress.md b/docs/en/1.9.0/cordova/contacts/ContactAddress/contactaddress.md
new file mode 100644
index 0000000..c5078ef
--- /dev/null
+++ b/docs/en/1.9.0/cordova/contacts/ContactAddress/contactaddress.md
@@ -0,0 +1,170 @@
+---
+license: 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.
+---
+
+ContactAddress
+==============
+
+Contains address properties for a `Contact` object.
+
+Properties
+----------
+- __pref:__ Set to `true` if this `ContactAddress` contains the user's preferred value. _(boolean)_
+- __type:__ A string that tells you what type of field this is (example: 'home'). _(DOMString)
+- __formatted:__ The full address formatted for display. _(DOMString)_
+- __streetAddress:__ The full street address. _(DOMString)_
+- __locality:__ The city or locality. _(DOMString)_
+- __region:__ The state or region. _(DOMString)_
+- __postalCode:__ The zip code or postal code. _(DOMString)_
+- __country:__ The country name. _(DOMString)_
+
+Details
+-------
+
+The `ContactAddress` object stores the properties of a single address of a contact.  A `Contact` object can have one or more addresses in a  `ContactAddress[]` array. 
+
+Supported Platforms
+-------------------
+
+- Android
+- BlackBerry WebWorks (OS 5.0 and higher)
+- iOS
+- Bada 1.2 & 2.0
+
+Quick Example
+-------------
+
+	// display the address information for all contacts
+    function onSuccess(contacts) {
+		for (var i=0; i<contacts.length; i++) {
+			for (var j=0; j<contacts[i].addresses.length; j++) {
+				alert("Pref: " + contacts[i].addresses[j].pref + "\n" +
+						"Type: " + contacts[i].addresses[j].type + "\n" +
+						"Formatted: " + contacts[i].addresses[j].formatted + "\n" + 
+						"Street Address: "  + contacts[i].addresses[j].streetAddress + "\n" + 
+						"Locality: "  + contacts[i].addresses[j].locality + "\n" + 
+						"Region: "  + contacts[i].addresses[j].region + "\n" + 
+						"Postal Code: "  + contacts[i].addresses[j].postalCode + "\n" + 
+						"Country: "  + contacts[i].addresses[j].country);
+			}
+		}
+    };
+
+    function onError(contactError) {
+        alert('onError!');
+    };
+
+    // find all contacts
+    var options = new ContactFindOptions();
+	options.filter=""; 
+	var filter = ["displayName","addresses"];
+    navigator.contacts.find(filter, onSuccess, onError, options);
+
+Full Example
+------------
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>Contact Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for Cordova to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        // Cordova is ready
+        //
+        function onDeviceReady() {
+		    // find all contacts
+		    var options = new ContactFindOptions();
+			options.filter=""; 
+			var filter = ["displayName","addresses"];
+		    navigator.contacts.find(filter, onSuccess, onError, options);
+        }
+    
+        // onSuccess: Get a snapshot of the current contacts
+        //
+		function onSuccess(contacts) {
+			// display the address information for all contacts
+			for (var i=0; i<contacts.length; i++) {
+				for (var j=0; j<contacts[i].addresses.length; j++) {
+					alert("Pref: " + contacts[i].addresses[j].pref + "\n" +
+							"Type: " + contacts[i].addresses[j].type + "\n" +
+							"Formatted: " + contacts[i].addresses[j].formatted + "\n" + 
+							"Street Address: "  + contacts[i].addresses[j].streetAddress + "\n" + 
+							"Locality: "  + contacts[i].addresses[j].locality + "\n" + 
+							"Region: "  + contacts[i].addresses[j].region + "\n" + 
+							"Postal Code: "  + contacts[i].addresses[j].postalCode + "\n" + 
+							"Country: "  + contacts[i].addresses[j].country);
+				}
+			}
+		};
+    
+        // onError: Failed to get the contacts
+        //
+        function onError(contactError) {
+            alert('onError!');
+        }
+
+        </script>
+      </head>
+      <body>
+        <h1>Example</h1>
+        <p>Find Contacts</p>
+      </body>
+    </html>
+
+Android 2.X Quirks
+------------------
+
+- __pref:__ This property is not supported by Android 2.X devices and will always return `false`.
+
+Android 1.X Quirks
+------------------
+
+- __pref:__ This property is not supported by Android 1.X devices and will always return `false`.
+- __type:__ This property is not supported by Android 1.X devices and will always return `null`.
+- __streetAddress:__ This property is not support by Android 1.X devices, and will always return `null`.
+- __locality:__ This property is not support by Android 1.X devices, and will always return `null`.
+- __region:__ This property is not support by Android 1.X devices, and will always return `null`.
+- __postalCode:__ This property is not support by Android 1.X devices, and will always return `null`.
+- __country:__ This property is not support by Android 1.X devices, and will always return `null`.
+
+BlackBerry WebWorks (OS 5.0 and higher) Quirks
+--------------------------------------------
+- __pref:__ This property is not supported on Blackberry devices and will always return `false`.
+- __type:__ Partially supported.  Only one each of "Work" and "Home" type addresses can be stored per contact. 
+- __formatted:__ Partially supported.  Will return concatenation of all BlackBerry address fields.
+- __streetAddress:__ Supported.  Will return concatenation of BlackBerry __address1__ and __address2__ address fields. 
+- __locality:__ Supported.  Stored in BlackBerry __city__ address field.
+- __region:__ Supported.  Stored in BlackBerry __stateProvince__ address field.
+- __postalCode:__ Supported.  Stored in BlackBerry __zipPostal__ address field.
+- __country:__ Supported.
+
+iOS Quirks
+----------
+- __pref:__ This property is not supported on iOS devices and will always return `false`.
+- __formatted:__ Not currently supported.
+
+Bada Quirks
+-----------
+- __formatted:__ This property is not supported
+- __type:__ Has to be one of the following: WORK, HOME
diff --git a/docs/en/1.9.0/cordova/contacts/ContactError/contactError.md b/docs/en/1.9.0/cordova/contacts/ContactError/contactError.md
new file mode 100644
index 0000000..45b5873
--- /dev/null
+++ b/docs/en/1.9.0/cordova/contacts/ContactError/contactError.md
@@ -0,0 +1,45 @@
+---
+license: 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.
+---
+
+ContactError
+========
+
+A `ContactError` object is returned to the `contactError` callback when an error occurs.
+
+Properties
+----------
+
+- __code:__ One of the predefined error codes listed below.
+
+Constants
+---------
+
+- `ContactError.UNKNOWN_ERROR`
+- `ContactError.INVALID_ARGUMENT_ERROR`
+- `ContactError.TIMEOUT_ERROR`
+- `ContactError.PENDING_OPERATION_ERROR`
+- `ContactError.IO_ERROR`
+- `ContactError.NOT_SUPPORTED_ERROR`
+- `ContactError.PERMISSION_DENIED_ERROR`
+
+Description
+-----------
+
+The `ContactError` object is returned to the user through the `contactError` callback function when an error occurs.
+
diff --git a/docs/en/1.9.0/cordova/contacts/ContactField/contactfield.md b/docs/en/1.9.0/cordova/contacts/ContactField/contactfield.md
new file mode 100644
index 0000000..d00f870
--- /dev/null
+++ b/docs/en/1.9.0/cordova/contacts/ContactField/contactfield.md
@@ -0,0 +1,146 @@
+---
+license: 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.
+---
+
+ContactField
+============
+
+Supports generic fields in a `Contact` object.  Some properties that are stored as `ContactField` objects include email addresses, phone numbers, and urls.
+
+Properties
+----------
+
+- __type:__ A string that tells you what type of field this is (example: 'home'). _(DOMString)_
+- __value:__ The value of the field (such as a phone number or email address). _(DOMString)_
+- __pref:__ Set to `true` if this `ContactField` contains the user's preferred value. _(boolean)_
+
+Details
+-------
+
+The `ContactField` object is a reusable component that is used to support contact fields in a generic fashion.  Each `ContactField` object contains a value property, a type property, and a pref property.  A `Contact` object stores several properties in `ContactField[]` arrays, such as phone numbers and email addresses.
+
+In most instances, there are no pre-determined values for the __type__ attribute of a `ContactField` object.  For example, a phone number can have __type__ values of 'home', 'work', 'mobile', 'iPhone', or any other value that is supported by the contact database on a particular device platform.  However, in the case of the `Contact` __photos__ field, Cordova makes use of the __type__ field to indicate the format of the returned image.  Cordova will return __type: 'url'__ when the __value__ attribute contains a URL to the photo image, or __type: 'base64'__ when the returned __value__ attribute contains a Base64 encoded image string.
+
+Supported Platforms
+-------------------
+
+- Android
+- BlackBerry WebWorks (OS 5.0 and higher)
+- iOS
+- Bada 1.2 & 2.0
+
+Quick Example
+-------------
+
+	// create a new contact
+	var contact = navigator.contacts.create();
+	
+	// store contact phone numbers in ContactField[]
+	var phoneNumbers = [];
+	phoneNumbers[0] = new ContactField('work', '212-555-1234', false);
+	phoneNumbers[1] = new ContactField('mobile', '917-555-5432', true); // preferred number
+	phoneNumbers[2] = new ContactField('home', '203-555-7890', false);
+	contact.phoneNumbers = phoneNumbers;
+	
+	// save the contact
+	contact.save();
+
+Full Example
+------------
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>Contact Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for Cordova to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        // Cordova is ready
+        //
+        function onDeviceReady() {
+			// create a new contact
+			var contact = navigator.contacts.create();
+
+			// store contact phone numbers in ContactField[]
+			var phoneNumbers = [];
+			phoneNumbers[0] = new ContactField('work', '212-555-1234', false);
+			phoneNumbers[1] = new ContactField('mobile', '917-555-5432', true); // preferred number
+			phoneNumbers[2] = new ContactField('home', '203-555-7890', false);
+			contact.phoneNumbers = phoneNumbers;
+
+			// save the contact
+			contact.save();
+
+			// search contacts, returning display name and phone numbers
+			var options = new ContactFindOptions();
+			options.filter="";
+			filter = ["displayName","phoneNumbers"];
+			navigator.contacts.find(filter, onSuccess, onError, options);
+        }
+    
+        // onSuccess: Get a snapshot of the current contacts
+        //
+		function onSuccess(contacts) {
+			for (var i=0; i<contacts.length; i++) {
+				// display phone numbers
+				for (var j=0; j<contacts[i].phoneNumbers.length; j++) {
+					alert("Type: " + contacts[i].phoneNumbers[j].type + "\n" + 
+							"Value: "  + contacts[i].phoneNumbers[j].value + "\n" + 
+							"Preferred: "  + contacts[i].phoneNumbers[j].pref);
+				}
+			}
+		};
+    
+        // onError: Failed to get the contacts
+        //
+        function onError(contactError) {
+            alert('onError!');
+        }
+
+        </script>
+      </head>
+      <body>
+        <h1>Example</h1>
+        <p>Find Contacts</p>
+      </body>
+    </html>
+
+Android Quirks
+--------------
+
+- __pref:__ This property is not support by Android devices, and will always return `false`.
+
+BlackBerry WebWorks (OS 5.0 and higher) Quirks
+--------------------------------------------
+
+- __type:__ Partially supported.  Used for phone numbers.
+- __value:__ Supported.
+- __pref:__ This property is not supported, and will always return `false`.
+
+iOS Quirks
+-----------
+- __pref:__ This property is not supported on iOS devices and will always return `false`.
+
+Bada Quirks
+-----------
+- __type:__ Property has to be one of the following for Email or Address fields: "WORK", "HOME". Property has to be one of the following for Phone fields: "WORK", "HOME", "VOICE", "FAX", "MSG", "CELL", "PAGER","BBS", "MODEM", "CAR", "ISDN","VIDEO", "PCS"
diff --git a/docs/en/1.9.0/cordova/contacts/ContactFindOptions/contactfindoptions.md b/docs/en/1.9.0/cordova/contacts/ContactFindOptions/contactfindoptions.md
new file mode 100644
index 0000000..f4625de
--- /dev/null
+++ b/docs/en/1.9.0/cordova/contacts/ContactFindOptions/contactfindoptions.md
@@ -0,0 +1,116 @@
+---
+license: 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.
+---
+
+ContactFindOptions
+==================
+
+Contains properties that can be used to filter the results of a `contacts.find` operation.
+
+Properties
+----------
+
+- __filter:__ The search string used to find contacts. _(DOMString)_ (Default: "")
+- __multiple:__ Determines if the find operation should return multiple contacts. _(Boolean)_ (Default: false)
+
+
+Supported Platforms
+-------------------
+
+- Android
+- BlackBerry WebWorks (OS 5.0 and higher)
+- iOS
+- Bada 1.2 & 2.0
+
+Quick Example
+-------------
+
+	// success callback
+    function onSuccess(contacts) {
+		for (var i=0; i<contacts.length; i++) {
+			alert(contacts[i].displayName);
+		}
+    };
+
+	// error callback
+    function onError(contactError) {
+        alert('onError!');
+    };
+
+	// specify contact search criteria
+    var options = new ContactFindOptions();
+	options.filter="";			// empty search string returns all contacts
+	options.multiple=true;		// return multiple results
+	filter = ["displayName"];	// return contact.displayName field
+	
+	// find contacts
+    navigator.contacts.find(filter, onSuccess, onError, options);
+
+Full Example
+------------
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>Contact Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for Cordova to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        // Cordova is ready
+        //
+        function onDeviceReady() {
+			// specify contact search criteria
+		    var options = new ContactFindOptions();
+			options.filter="";			// empty search string returns all contacts
+			options.multiple=true;		// return multiple results
+			filter = ["displayName"];	// return contact.displayName field
+
+			// find contacts
+		    navigator.contacts.find(filter, onSuccess, onError, options);
+        }
+    
+        // onSuccess: Get a snapshot of the current contacts
+        //
+		function onSuccess(contacts) {
+			for (var i=0; i<contacts.length; i++) {
+				alert(contacts[i].displayName);
+			}
+		};
+    
+        // onError: Failed to get the contacts
+        //
+        function onError(contactError) {
+            alert('onError!');
+        }
+
+        </script>
+      </head>
+      <body>
+        <h1>Example</h1>
+        <p>Find Contacts</p>
+      </body>
+    </html>
+
+Bada Quirks
+-----------
+__filter:__ Property can only apply to the following: "firstName", "lastName", "nickname", "phoneNumber", "email", "address"
diff --git a/docs/en/1.9.0/cordova/contacts/ContactName/contactname.md b/docs/en/1.9.0/cordova/contacts/ContactName/contactname.md
new file mode 100644
index 0000000..3a5199b
--- /dev/null
+++ b/docs/en/1.9.0/cordova/contacts/ContactName/contactname.md
@@ -0,0 +1,145 @@
+---
+license: 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.
+---
+
+ContactName
+===========
+
+Contains name properties of a `Contact` object.
+
+Properties
+----------
+
+- __formatted:__ The complete name of the contact. _(DOMString)_
+- __familyName:__ The contacts family name. _(DOMString)_
+- __givenName:__ The contacts given name. _(DOMString)_
+- __middleName:__ The contacts middle name. _(DOMString)_
+- __honorificPrefix:__ The contacts prefix (example Mr. or Dr.) _(DOMString)_
+- __honorificSuffix:__ The contacts suffix (example Esq.). _(DOMString)_
+
+Details
+-------
+
+The `ContactName` object stores name properties of a contact.
+
+Supported Platforms
+-------------------
+
+- Android 2.X
+- BlackBerry WebWorks (OS 5.0 and higher)
+- iOS
+- Bada 1.2 & 2.0
+
+Quick Example
+-------------
+
+    function onSuccess(contacts) {
+		for (var i=0; i<contacts.length; i++) {
+			alert("Formatted: " + contacts[i].name.formatted + "\n" + 
+					"Family Name: "  + contacts[i].name.familyName + "\n" + 
+					"Given Name: "  + contacts[i].name.givenName + "\n" + 
+					"Middle Name: "  + contacts[i].name.middleName + "\n" + 
+					"Suffix: "  + contacts[i].name.honorificSuffix + "\n" + 
+					"Prefix: "  + contacts[i].name.honorificSuffix);
+		}
+    };
+
+    function onError(contactError) {
+        alert('onError!');
+    };
+
+    var options = new ContactFindOptions();
+	options.filter="";
+	filter = ["displayName","name"];
+    navigator.contacts.find(filter, onSuccess, onError, options);
+
+Full Example
+------------
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>Contact Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for Cordova to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        // Cordova is ready
+        //
+        function onDeviceReady() {
+			var options = new ContactFindOptions();
+			options.filter="";
+			filter = ["displayName","name"];
+			navigator.contacts.find(filter, onSuccess, onError, options);
+        }
+    
+        // onSuccess: Get a snapshot of the current contacts
+        //
+		function onSuccess(contacts) {
+			for (var i=0; i<contacts.length; i++) {
+				alert("Formatted: " + contacts[i].name.formatted + "\n" + 
+						"Family Name: "  + contacts[i].name.familyName + "\n" + 
+						"Given Name: "  + contacts[i].name.givenName + "\n" + 
+						"Middle Name: "  + contacts[i].name.middleName + "\n" + 
+						"Suffix: "  + contacts[i].name.honorificSuffix + "\n" + 
+						"Prefix: "  + contacts[i].name.honorificPrefix);
+			}
+		};
+    
+        // onError: Failed to get the contacts
+        //
+        function onError(contactError) {
+            alert('onError!');
+        }
+
+        </script>
+      </head>
+      <body>
+        <h1>Example</h1>
+        <p>Find Contacts</p>
+      </body>
+    </html>
+
+Android Quirks
+------------
+- __formatted:__ Partially supported.  Will return the concatenation of honorificPrefix, givenName, middleName, familyName and honorificSuffix but will not store.
+
+BlackBerry WebWorks (OS 5.0 and higher) Quirks
+---------------------------------------------
+
+- __formatted:__ Partially supported.  Will return concatenation of BlackBerry __firstName__ and __lastName__ fields.
+- __familyName:__ Supported.  Stored in BlackBerry __lastName__ field.
+- __givenName:__ Supported.  Stored in BlackBerry __firstName__ field.
+- __middleName:__ This property is not supported, and will always return `null`.
+- __honorificPrefix:__ This property is not supported, and will always return `null`.
+- __honorificSuffix:__ This property is not supported, and will always return `null`.
+
+iOS Quirks
+------------
+- __formatted:__ Partially supported.  Will return iOS Composite Name but will not store.
+
+Bada Quirks
+-----------
+- __formatted:__ Property not supported
+- __middleName:__ Property not supported
+_ __honorificPrefix:__ Property not supported
+- __honorificSuffix:__ Property not supported
diff --git a/docs/en/1.9.0/cordova/contacts/ContactOrganization/contactorganization.md b/docs/en/1.9.0/cordova/contacts/ContactOrganization/contactorganization.md
new file mode 100644
index 0000000..34f7dc9
--- /dev/null
+++ b/docs/en/1.9.0/cordova/contacts/ContactOrganization/contactorganization.md
@@ -0,0 +1,153 @@
+---
+license: 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.
+---
+
+ContactOrganization
+===================
+
+Contains organization properties of a `Contact` object.
+
+Properties
+----------
+- __pref:__ Set to `true` if this `ContactOrganization` contains the user's preferred value. _(boolean)_
+- __type:__ A string that tells you what type of field this is (example: 'home'). _(DOMString)
+- __name:__ The name of the organization. _(DOMString)_
+- __department:__ The department the contract works for. _(DOMString)_
+- __title:__ The contacts title at the organization. _(DOMString)_
+
+Details
+-------
+
+The `ContactOrganization` object stores a contact's organization properties.  A `Contact` object stores one or more `ContactOrganization` objects in an array. 
+
+Supported Platforms
+-------------------
+
+- Android
+- BlackBerry WebWorks (OS 5.0 and higher)
+- iOS
+- Bada 1.2
+
+Quick Example
+-------------
+
+    function onSuccess(contacts) {
+		for (var i=0; i<contacts.length; i++) {
+			for (var j=0; j<contacts[i].organizations.length; j++) {
+				alert("Pref: " + contacts[i].organizations[j].pref + "\n" +
+						"Type: " + contacts[i].organizations[j].type + "\n" +
+						"Name: " + contacts[i].organizations[j].name + "\n" + 
+						"Department: "  + contacts[i].organizations[j].department + "\n" + 
+						"Title: "  + contacts[i].organizations[j].title);
+			}
+		}
+    };
+
+    function onError(contactError) {
+        alert('onError!');
+    };
+
+    var options = new ContactFindOptions();
+	options.filter="";
+	filter = ["displayName","organizations"];
+    navigator.contacts.find(filter, onSuccess, onError, options);
+
+Full Example
+------------
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>Contact Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for Cordova to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        // Cordova is ready
+        //
+        function onDeviceReady() {
+			var options = new ContactFindOptions();
+			options.filter="";
+			filter = ["displayName","organizations"];
+			navigator.contacts.find(filter, onSuccess, onError, options);
+        }
+    
+        // onSuccess: Get a snapshot of the current contacts
+        //
+		function onSuccess(contacts) {
+			for (var i=0; i<contacts.length; i++) {
+				for (var j=0; j<contacts[i].organizations.length; j++) {
+					alert("Pref: " + contacts[i].organizations[j].pref + "\n" +
+							"Type: " + contacts[i].organizations[j].type + "\n" +
+							"Name: " + contacts[i].organizations[j].name + "\n" + 
+							"Department: "  + contacts[i].organizations[j].department + "\n" + 
+							"Title: "  + contacts[i].organizations[j].title);
+				}
+			}
+		};
+    
+        // onError: Failed to get the contacts
+        //
+        function onError(contactError) {
+            alert('onError!');
+        }
+
+        </script>
+      </head>
+      <body>
+        <h1>Example</h1>
+        <p>Find Contacts</p>
+      </body>
+    </html>
+	
+
+Android 2.X Quirks
+------------------
+
+- __pref:__ This property is not supported by Android 2.X devices and will always return `false`.
+
+Android 1.X Quirks
+------------------
+
+- __pref:__ This property is not supported by Android 1.X devices and will always return `false`.
+- __type:__ This property is not supported by Android 1.X devices and will always return `null`.
+- __title:__ This property is not supported by Android 1.X devices, and will always be returned as `null`. 
+
+BlackBerry WebWorks (OS 5.0 and higher) Quirks
+--------------------------------------------
+- __pref:__ This property is not supported by Blackberry devices and will always return `false`.
+- __type:__ This property is not supported by Blackberry devices and will always return `null`.
+- __name:__ Partially supported.  The first organization name will be stored in the BlackBerry __company__ field.
+- __department:__ This property is not supported, and will always be returned as `null`.
+- __title:__ Partially supported.  The first organization title will be stored in the BlackBerry __jobTitle__ field.
+
+iOS Quirks
+-----------
+- __pref:__ This property is not supported on iOS devices and will always return `false`.
+- __type:__ This property is not supported on iOS devices and will always return `null`.
+- __name:__ Partially supported.  The first organization name will be stored in the iOS __kABPersonOrganizationProperty__ field.
+- __department__: Partially supported.  The first department name will be stored in the iOS __kABPersonDepartmentProperty__ field.
+- __title__: Partially supported.  The first title will be stored in the iOS __kABPersonJobTitleProperty__ field.
+
+Bada 2.0 Quirks
+---------------
+- ContactOrganization not supported
diff --git a/docs/en/1.9.0/cordova/contacts/contacts.create.md b/docs/en/1.9.0/cordova/contacts/contacts.create.md
new file mode 100644
index 0000000..1ab4a75
--- /dev/null
+++ b/docs/en/1.9.0/cordova/contacts/contacts.create.md
@@ -0,0 +1,77 @@
+---
+license: 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.
+---
+
+contacts.create
+===============
+
+Returns a new Contact object.
+
+    var contact = navigator.contacts.create(properties);
+
+Description
+-----------
+
+contacts.create is a synchronous function that returns a new `Contact` object.
+
+This method does not persist the Contact object to the device contacts database.  To persist the Contact object to the device, invoke the `Contact.save` method.
+
+Supported Platforms
+-------------------
+
+- Android
+- BlackBerry WebWorks (OS 5.0 and higher)
+- iOS
+- Bada 1.2 & 2.0
+
+Quick Example
+-------------
+
+    var myContact = navigator.contacts.create({"displayName": "Test User"});
+
+Full Example
+------------
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>Contact Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for Cordova to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        // Cordova is ready
+        //
+        function onDeviceReady() {
+			var myContact = navigator.contacts.create({"displayName": "Test User"});
+			myContact.note = "This contact has a note.";
+			console.log("The contact, " + myContact.displayName + ", note: " + myContact.note);
+        }
+    
+
+        </script>
+      </head>
+      <body>
+        <h1>Example</h1>
+        <p>Create Contact</p>
+      </body>
+    </html>
diff --git a/docs/en/1.9.0/cordova/contacts/contacts.find.md b/docs/en/1.9.0/cordova/contacts/contacts.find.md
new file mode 100644
index 0000000..424478f
--- /dev/null
+++ b/docs/en/1.9.0/cordova/contacts/contacts.find.md
@@ -0,0 +1,116 @@
+---
+license: 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.
+---
+
+contacts.find
+=============
+
+Queries the device contacts database and returns one or more `Contact` objects, each containing the fields specified.
+
+    navigator.contacts.find(contactFields, contactSuccess, contactError, contactFindOptions);
+
+Description
+-----------
+
+contacts.find is an asynchronous function that queries the device contacts database and returns an array of `Contact` objects.  The resulting objects are passed to the `contactSuccess` callback function specified by the __contactSuccess__ parameter.  
+
+Users must specify the contact fields to be used as a search qualifier in the __contactFields__ parameter.  Only the fields specified in the __contactFields__ parameter will be returned as properties of the `Contact` objects that are passed to the __contactSuccess__ callback function.  A zero-length __contactFields__ parameter will result in an array of `Contact` objects with only the `id` property populated. A __contactFields__ value of ["*"] will return all contact fields. 
+
+The __contactFindOptions.filter__ string can be used as a search filter when querying the contacts database.  If provided, a case-insensitive, partial value match is applied to each field specified in the __contactFields__ parameter.  If a match is found in a comparison with _any_ of the specified fields, the contact is returned.
+
+Parameters
+----------
+
+- __contactFields:__ Contact fields to be used as search qualifier. Only these fields will have values in the resulting `Contact` objects. _(DOMString[])_ [Required]
+- __contactSuccess:__ Success callback function that is invoked with the contacts returned from the contacts database. [Required]
+- __contactError:__ Error callback function. Invoked when error occurs. [Optional]
+- __contactFindOptions:__ Search options to filter contacts. [Optional]
+
+Supported Platforms
+-------------------
+
+- Android
+- BlackBerry WebWorks (OS 5.0 and higher)
+- iOS
+- Bada 1.2 & 2.0
+
+Quick Example
+-------------
+
+    function onSuccess(contacts) {
+        alert('Found ' + contacts.length + ' contacts.');
+    };
+
+    function onError(contactError) {
+        alert('onError!');
+    };
+
+    // find all contacts with 'Bob' in any name field
+    var options = new ContactFindOptions();
+	options.filter="Bob"; 
+	var fields = ["displayName", "name"];
+    navigator.contacts.find(fields, onSuccess, onError, options);
+
+Full Example
+------------
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>Contact Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for Cordova to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        // Cordova is ready
+        //
+        function onDeviceReady() {
+		    // find all contacts with 'Bob' in any name field
+		    var options = new ContactFindOptions();
+			options.filter="Bob"; 
+			var fields = ["displayName", "name"];
+		    navigator.contacts.find(fields, onSuccess, onError, options);
+        }
+    
+        // onSuccess: Get a snapshot of the current contacts
+        //
+        function onSuccess(contacts) {
+			for (var i=0; i<contacts.length; i++) {
+				console.log("Display Name = " + contacts[i].displayName);
+			}
+        }
+    
+        // onError: Failed to get the contacts
+        //
+        function onError(contactError) {
+            alert('onError!');
+        }
+
+        </script>
+      </head>
+      <body>
+        <h1>Example</h1>
+        <p>Find Contacts</p>
+      </body>
+    </html>
+    
+
diff --git a/docs/en/1.9.0/cordova/contacts/contacts.md b/docs/en/1.9.0/cordova/contacts/contacts.md
new file mode 100644
index 0000000..c5db19d
--- /dev/null
+++ b/docs/en/1.9.0/cordova/contacts/contacts.md
@@ -0,0 +1,108 @@
+---
+license: 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.
+---
+
+Contacts
+========
+
+> The `contacts` object provides access to the device contacts database.
+
+Methods
+-------
+
+- contacts.create
+- contacts.find
+
+Arguments
+---------
+
+- contactFields
+- contactSuccess
+- contactError
+- contactFindOptions
+
+Objects
+-------
+
+- Contact
+- ContactName
+- ContactField
+- ContactAddress
+- ContactOrganization
+- ContactFindOptions
+- ContactError
+
+Permissions
+-----------
+
+### Android
+
+#### app/res/xml/plugins.xml
+
+    <plugin name="Contacts" value="org.apache.cordova.ContactManager" />
+
+#### app/AndroidManifest.xml
+
+    <uses-permission android:name="android.permission.GET_ACCOUNTS" />
+    <uses-permission android:name="android.permission.READ_CONTACTS" />
+    <uses-permission android:name="android.permission.WRITE_CONTACTS" />
+
+### Bada
+
+#### manifest.xml
+
+    <Privilege>
+        <Name>ADDRESSBOOK</Name>
+    </Privilege>
+
+### BlackBerry WebWorks
+
+#### www/plugins.xml
+
+    <plugin name="Contact" value="org.apache.cordova.pim.Contact" />
+
+#### www/config.xml
+
+    <feature id="blackberry.find"        required="true" version="1.0.0.0" />
+    <feature id="blackberry.identity"    required="true" version="1.0.0.0" />
+    <feature id="blackberry.pim.Address" required="true" version="1.0.0.0" />
+    <feature id="blackberry.pim.Contact" required="true" version="1.0.0.0" />
+
+### iOS
+
+#### App/Supporting Files/Cordova.plist
+
+    <key>Plugins</key>
+    <dict>
+        <key>Contacts</key>
+        <string>CDVContacts</string>
+    </dict>
+
+### webOS
+
+    No permissions are required.
+
+### Windows Phone
+
+#### Properties/WPAppManifest.xml
+
+    <Capabilities>
+        <Capability Name="ID_CAP_CONTACTS" />
+    </Capabilities>
+
+Reference: [Application Manifest for Windows Phone](http://msdn.microsoft.com/en-us/library/ff769509%28v=vs.92%29.aspx)
diff --git a/docs/en/1.9.0/cordova/contacts/parameters/contactError.md b/docs/en/1.9.0/cordova/contacts/parameters/contactError.md
new file mode 100644
index 0000000..6b50ddc
--- /dev/null
+++ b/docs/en/1.9.0/cordova/contacts/parameters/contactError.md
@@ -0,0 +1,27 @@
+---
+license: 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.
+---
+
+contactError
+============
+
+Error callback function for contact functions.
+
+    function(error) {
+        // Handle the error
+    }
\ No newline at end of file
diff --git a/docs/en/1.9.0/cordova/contacts/parameters/contactFields.md b/docs/en/1.9.0/cordova/contacts/parameters/contactFields.md
new file mode 100644
index 0000000..66c9d3d
--- /dev/null
+++ b/docs/en/1.9.0/cordova/contacts/parameters/contactFields.md
@@ -0,0 +1,25 @@
+---
+license: 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.
+---
+
+contactFields
+=============
+
+Required parameter of the `contacts.find` method.  Use this parameter to specify which fields should be included in the `Contact` objects resulting from a find operation.
+
+    ["name", "phoneNumbers", "emails"]
diff --git a/docs/en/1.9.0/cordova/contacts/parameters/contactFindOptions.md b/docs/en/1.9.0/cordova/contacts/parameters/contactFindOptions.md
new file mode 100644
index 0000000..2eb9afc
--- /dev/null
+++ b/docs/en/1.9.0/cordova/contacts/parameters/contactFindOptions.md
@@ -0,0 +1,35 @@
+---
+license: 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.
+---
+
+contactFindOptions
+==================
+
+Optional parameter of the `contacts.find` method.  Use this parameter to filter the contacts returned from the contacts database.
+
+    { 
+		filter: "",
+		multiple: true,
+	};
+
+Options
+-------
+
+- __filter:__ The search string used to filter contacts. _(DOMString)_ (Default: "")
+- __multiple:__ Determines if the find operation should return multiple contacts. _(Boolean)_ (Default: false)
+
diff --git a/docs/en/1.9.0/cordova/contacts/parameters/contactSuccess.md b/docs/en/1.9.0/cordova/contacts/parameters/contactSuccess.md
new file mode 100644
index 0000000..9068218
--- /dev/null
+++ b/docs/en/1.9.0/cordova/contacts/parameters/contactSuccess.md
@@ -0,0 +1,40 @@
+---
+license: 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.
+---
+
+contactSuccess
+==============
+
+Success callback function that provides the `Contact` array resulting from a `contacts.find` operation.
+
+    function(contacts) {
+        // Do something
+    }
+
+Parameters
+----------
+
+- __contacts:__ The contact array resulting from a find operation. (`Contact`)
+
+Example
+-------
+
+    function contactSuccess(contacts) {
+		for (var i=0; i<contacts.length; i++) {
+			console.log("Display Name = " + contacts[i].displayName;
+    }
\ No newline at end of file
diff --git a/docs/en/1.9.0/cordova/device/device.cordova.md b/docs/en/1.9.0/cordova/device/device.cordova.md
new file mode 100644
index 0000000..3aaa669
--- /dev/null
+++ b/docs/en/1.9.0/cordova/device/device.cordova.md
@@ -0,0 +1,79 @@
+---
+license: 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.
+---
+
+device.cordova
+===============
+
+Get the version of Cordova running on the device.
+
+    var string = device.cordova;
+    
+Description
+-----------
+
+`device.cordova` returns the version of Cordova running on the device.
+
+Supported Platforms
+-------------------
+
+- Android
+- BlackBerry WebWorks (OS 5.0 and higher)
+- iPhone
+- Windows Phone 7 ( Mango )
+- Bada 1.2 & 2.x
+
+Quick Example
+-------------
+
+    var name = device.cordova;
+
+Full Example
+------------
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>Device Properties Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for Cordova to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        // Cordova is ready
+        //
+        function onDeviceReady() {
+            var element = document.getElementById('deviceProperties');
+    
+            element.innerHTML = 'Device Name: '     + device.name     + '<br />' + 
+                                'Device Cordova: '  + device.cordova  + '<br />' + 
+                                'Device Platform: ' + device.platform + '<br />' + 
+                                'Device UUID: '     + device.uuid     + '<br />' + 
+                                'Device Version: '  + device.version  + '<br />';
+        }
+
+        </script>
+      </head>
+      <body>
+        <p id="deviceProperties">Loading device properties...</p>
+      </body>
+    </html>
+
diff --git a/docs/en/1.9.0/cordova/device/device.md b/docs/en/1.9.0/cordova/device/device.md
new file mode 100644
index 0000000..1166a85
--- /dev/null
+++ b/docs/en/1.9.0/cordova/device/device.md
@@ -0,0 +1,95 @@
+---
+license: 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.
+---
+
+Device
+======
+
+> The `device` object describes the device's hardware and software.
+
+Properties
+----------
+
+- device.name
+- device.cordova
+- device.platform
+- device.uuid
+- device.version
+
+Variable Scope
+--------------
+
+Since `device` is assigned to the `window` object, it is implicitly in the global scope.
+
+    // These reference the same `device`
+    var phoneName = window.device.name;
+    var phoneName = device.name;
+
+Permissions
+-----------
+
+### Android
+
+#### app/res/xml/plugins.xml
+
+    <plugin name="Device" value="org.apache.cordova.Device" />
+
+#### app/AndroidManifest.xml
+
+    <uses-permission android:name="android.permission.READ_PHONE_STATE" />
+
+### Bada
+
+#### manifest.xml
+
+    <Privilege>
+        <Name>SYSTEM_SERVICE</Name>
+    </Privilege>
+
+### BlackBerry WebWorks
+
+#### www/plugins.xml
+
+    <plugin name="Device" value="org.apache.cordova.device.Device" />
+
+#### www/config.xml
+
+    <feature id="blackberry.app" required="true" version="1.0.0.0" />
+    <rim:permissions>
+        <rim:permit>read_device_identifying_information</rim:permit>
+    </rim:permissions>
+
+### iOS
+
+    No permissions are required.
+
+### webOS
+
+    No permissions are required.
+
+### Windows Phone
+
+#### Properties/WPAppManifest.xml
+
+    <Capabilities>
+        <Capability Name="ID_CAP_WEBBROWSERCOMPONENT" />
+        <Capability Name="ID_CAP_IDENTITY_DEVICE" />
+        <Capability Name="ID_CAP_IDENTITY_USER" />
+    </Capabilities>
+
+Reference: [Application Manifest for Windows Phone](http://msdn.microsoft.com/en-us/library/ff769509%28v=vs.92%29.aspx)
diff --git a/docs/en/1.9.0/cordova/device/device.name.md b/docs/en/1.9.0/cordova/device/device.name.md
new file mode 100644
index 0000000..7c0a7d7
--- /dev/null
+++ b/docs/en/1.9.0/cordova/device/device.name.md
@@ -0,0 +1,108 @@
+---
+license: 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.
+---
+
+device.name
+===========
+
+Get the device's model name.
+
+    var string = device.name;
+    
+Description
+-----------
+
+`device.name` returns the name of the device's model or product. This value is set by the device manufacturer and may be different across versions of the same product.
+
+Supported Platforms
+-------------------
+
+- Android
+- BlackBerry WebWorks (OS 5.0 and higher)
+- iPhone
+- Windows Phone 7 ( Mango )
+- Bada 1.2 & 2.x
+- webOS
+
+Quick Example
+-------------
+
+    // Android:    Nexus One       returns "Passion" (Nexus One code name)
+    //             Motorola Droid  returns "voles"
+    // BlackBerry: Torch 9800      returns "9800"
+    // iPhone:     All devices     returns a name set by iTunes e.g. "Joe's iPhone"
+    //
+    var name = device.name;
+
+Full Example
+------------
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>Device Properties Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for Cordova to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        // Cordova is ready
+        //
+        function onDeviceReady() {
+            var element = document.getElementById('deviceProperties');
+    
+            element.innerHTML = 'Device Name: '     + device.name     + '<br />' + 
+                                'Device Cordova: '  + device.cordova + '<br />' + 
+                                'Device Platform: ' + device.platform + '<br />' + 
+                                'Device UUID: '     + device.uuid     + '<br />' + 
+                                'Device Version: '  + device.version  + '<br />';
+        }
+
+        </script>
+      </head>
+      <body>
+        <p id="deviceProperties">Loading device properties...</p>
+      </body>
+    </html>
+
+
+Android Quirks
+--------------
+
+- Gets the [product name](http://developer.android.com/reference/android/os/Build.html#PRODUCT) instead of the [model name](http://developer.android.com/reference/android/os/Build.html#MODEL).
+    - The product name is often the code name given during production.
+    - e.g. Nexus One returns "Passion", Motorola Droid returns "voles"
+
+iPhone Quirks
+-------------
+
+- Gets the [device's custom name](http://developer.apple.com/iphone/library/documentation/uikit/reference/UIDevice_Class/Reference/UIDevice.html#//apple_ref/doc/uid/TP40006902-CH3-SW13) instead of the [device model name](http://developer.apple.com/iphone/library/documentation/uikit/reference/UIDevice_Class/Reference/UIDevice.html#//apple_ref/doc/uid/TP40006902-CH3-SW1).
+    - The custom name is set by the owner in iTunes.
+    - e.g. "Joe's iPhone"
+
+Windows Phone 7 Quirks
+-------------
+
+- returns the manufacturer specified device name, for example, the Samsung Focus returns 'SGH-i917'
+
+Bada Quirks
+-----------
+- returns the manufacturer model name. For example 'Samsung Wave S8500'
diff --git a/docs/en/1.9.0/cordova/device/device.platform.md b/docs/en/1.9.0/cordova/device/device.platform.md
new file mode 100644
index 0000000..8d17726
--- /dev/null
+++ b/docs/en/1.9.0/cordova/device/device.platform.md
@@ -0,0 +1,95 @@
+---
+license: 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.
+---
+
+device.platform
+===============
+
+Get the device's operating system name.
+
+    var string = device.platform;
+
+Supported Platforms
+-------------------
+
+- Android
+- BlackBerry WebWorks (OS 5.0 and higher)
+- iPhone
+- Windows Phone 7 ( Mango )
+- Bada 1.2 & 2.x
+- webOS
+
+Quick Example
+-------------
+
+    // Depending on the device, a few examples are:
+    //   - "Android"
+    //   - "BlackBerry"
+    //   - "iPhone"
+    //   - "webOS"
+    //   - "WinCE"
+    var devicePlatform = device.platform;
+
+Full Example
+------------
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>Device Properties Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for Cordova to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        // Cordova is ready
+        //
+        function onDeviceReady() {
+            var element = document.getElementById('deviceProperties');
+    
+            element.innerHTML = 'Device Name: '     + device.name     + '<br />' + 
+                                'Device Cordova: '  + device.cordova  + '<br />' + 
+                                'Device Platform: ' + device.platform + '<br />' + 
+                                'Device UUID: '     + device.uuid     + '<br />' + 
+                                'Device Version: '  + device.version  + '<br />';
+        }
+
+        </script>
+      </head>
+      <body>
+        <p id="deviceProperties">Loading device properties...</p>
+      </body>
+    </html>
+    
+iPhone Quirks
+-------------
+
+The iPhone returns `iPhone` as the platform. The iPad returns `iPad` as the platform.  In the simulator they will return `iPhone Simulator` and `iPad Simulator` respectively.  These are inaccurate in all cases because Apple has rebranded the iPhone operating system as `iOS`.
+
+BlackBerry Quirks
+-----------------
+
+Devices may return the device platform version instead of the platform name.  For example, the Storm2 9550 would return '2.13.0.95' or similar.
+
+Windows Phone 7 Quirks
+-----------------
+
+Windows Phone 7 devices report platform as 'WinCE'
diff --git a/docs/en/1.9.0/cordova/device/device.uuid.md b/docs/en/1.9.0/cordova/device/device.uuid.md
new file mode 100644
index 0000000..3207b44
--- /dev/null
+++ b/docs/en/1.9.0/cordova/device/device.uuid.md
@@ -0,0 +1,103 @@
+---
+license: 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.
+---
+
+device.uuid
+===========
+
+Get the device's Universally Unique Identifier ([UUID](http://en.wikipedia.org/wiki/Universally_Unique_Identifier)).
+
+    var string = device.uuid;
+    
+Description
+-----------
+
+The details of how a UUID is generated are determined by the device manufacturer and specific to the device's platform or model.
+
+Supported Platforms
+-------------------
+
+- Android
+- BlackBerry WebWorks (OS 5.0 and higher)
+- iPhone
+- Windows Phone 7 ( Mango )
+- Bada 1.2 & 2.x
+- webOS
+
+Quick Example
+-------------
+
+    // Android: Returns a random 64-bit integer (as a string, again!)
+    //          The integer is generated on the device's first boot
+    //
+    // BlackBerry: Returns the PIN number of the device
+    //             This is a nine-digit unique integer (as a string, though!)
+    //
+    // iPhone: (Paraphrased from the UIDevice Class documentation)
+    //         Returns a string of hash values created from multiple hardware identifies.
+    //         It is guaranteed to be unique for every device and cannot be tied
+    //         to the user account.
+    // Windows Phone 7 : Returns a hash of device+current user, 
+    // if the user is not defined, a guid is generated and will persist until the app is uninstalled
+    // 
+    // webOS: returns the device NDUID
+    var deviceID = device.uuid;
+
+Full Example
+------------
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>Device Properties Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for Cordova to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        // Cordova is ready
+        //
+        function onDeviceReady() {
+            var element = document.getElementById('deviceProperties');
+    
+            element.innerHTML = 'Device Name: '     + device.name     + '<br />' + 
+                                'Device Cordova: '  + device.cordova  + '<br />' + 
+                                'Device Platform: ' + device.platform + '<br />' + 
+                                'Device UUID: '     + device.uuid     + '<br />' + 
+                                'Device Version: '  + device.version  + '<br />';
+        }
+
+        </script>
+      </head>
+      <body>
+        <p id="deviceProperties">Loading device properties...</p>
+      </body>
+    </html>
+
+iOS Quirk
+-------------
+
+The uuid for iOS is not unique for a device, but is unique per application per install. This will change if you delete the app and re-install, and possibly also when you upgrade your iOS version, or even upgrade your app per version (as we've seen in iOS 5.1). Not a reliable value.
+
+Windows Phone 7 Quirks
+-------------
+
+The uuid for Windows Phone 7 requires the permission ID_CAP_IDENTITY_DEVICE.  Microsoft will likely be deprecating this property in the near future.  If the capablility is not available, the application generates a persistent guid, that will be maintained for the install-lifetime of the application on the device.
diff --git a/docs/en/1.9.0/cordova/device/device.version.md b/docs/en/1.9.0/cordova/device/device.version.md
new file mode 100644
index 0000000..beff496
--- /dev/null
+++ b/docs/en/1.9.0/cordova/device/device.version.md
@@ -0,0 +1,84 @@
+---
+license: 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.
+---
+
+device.version
+==============
+
+Get the operating system version.
+
+    var string = device.version;
+
+Supported Platforms
+-------------------
+
+- Android 2.1+
+- BlackBerry WebWorks (OS 5.0 and higher)
+- iPhone
+- Windows Phone 7 ( Mango )
+- Bada 1.2 & 2.x
+- webOS
+
+Quick Example
+-------------
+
+    // Android:    Froyo OS would return "2.2"
+    //             Eclair OS would return "2.1", "2.0.1", or "2.0"
+    //             Version can also return update level "2.1-update1" 
+    //
+    // BlackBerry: Torch 9800 using OS 6.0 would return "6.0.0.600"
+    //
+    // iPhone:     iOS 3.2 returns "3.2"
+    //
+    // Windows Phone 7: returns current OS version number, ex. on Mango returns 7.10.7720
+    // webOS: webOS 2.2.4 return 2.2.4
+    var deviceVersion = device.version;
+
+Full Example
+------------
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>Device Properties Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for Cordova to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        // Cordova is ready
+        //
+        function onDeviceReady() {
+            var element = document.getElementById('deviceProperties');
+        
+            element.innerHTML = 'Device Name: '     + device.name     + '<br />' + 
+                                'Device Cordova: '  + device.cordova  + '<br />' + 
+                                'Device Platform: ' + device.platform + '<br />' + 
+                                'Device UUID: '     + device.uuid     + '<br />' + 
+                                'Device Version: '  + device.version  + '<br />';
+        }
+
+        </script>
+      </head>
+      <body>
+        <p id="deviceProperties">Loading device properties...</p>
+      </body>
+    </html>
diff --git a/docs/en/1.9.0/cordova/events/events.backbutton.md b/docs/en/1.9.0/cordova/events/events.backbutton.md
new file mode 100644
index 0000000..bb7d11a
--- /dev/null
+++ b/docs/en/1.9.0/cordova/events/events.backbutton.md
@@ -0,0 +1,87 @@
+---
+license: 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.
+---
+
+backbutton
+===========
+
+This is an event that fires when the user presses the back button.
+
+    document.addEventListener("backbutton", yourCallbackFunction, false);
+
+Details
+-------
+
+If you need to override the default back button behaviour you can register an event listener for the 'backbutton' event.  It is no longer necessary to call any other method to over ride the back button behaviour.  Now, you only need to register an event listener for 'backbutton'.
+
+Typically, you will want to attach an event listener with `document.addEventListener` once you receive the Cordova 'deviceready' event.
+
+Supported Platforms
+-------------------
+
+- Android
+- BlackBerry WebWorks (OS 5.0 and higher)
+- Windows Phone 7 ( Mango )
+
+Quick Example
+-------------
+
+    document.addEventListener("backbutton", onBackKeyDown, false);
+
+    function onBackKeyDown() {
+        // Handle the back button
+    }
+
+Full Example
+------------
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>Cordova Back Button Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Call onDeviceReady when Cordova is loaded.
+        //
+        // At this point, the document has loaded but cordova-1.9.0.js has not.
+        // When Cordova is loaded and talking with the native device,
+        // it will call the event `deviceready`.
+        //
+        function onLoad() {
+            document.addEventListener("deviceready", onDeviceReady, false);
+        }
+
+        // Cordova is loaded and it is now safe to call Cordova methods
+        //
+        function onDeviceReady() {
+            // Register the event listener
+            document.addEventListener("backbutton", onBackKeyDown, false);
+        }
+        
+        // Handle the back button
+        //
+        function onBackKeyDown() {
+        }
+
+        </script>
+      </head>
+      <body onload="onLoad()">
+      </body>
+    </html>
diff --git a/docs/en/1.9.0/cordova/events/events.batterycritical.md b/docs/en/1.9.0/cordova/events/events.batterycritical.md
new file mode 100644
index 0000000..aafd739
--- /dev/null
+++ b/docs/en/1.9.0/cordova/events/events.batterycritical.md
@@ -0,0 +1,93 @@
+---
+license: 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.
+---
+
+batterycritical
+===========
+
+This is an event that fires when a Cordova application detects the battery has reached the critical level threshold.
+
+    window.addEventListener("batterycritical", yourCallbackFunction, false);
+
+Details
+-------
+
+This event that fires when a Cordova application detects the percentage of battery has reached the critical battery threshold. This value is device specific.
+
+The batterycritical handler will be called with an object that contains two properties:
+
+- __level:__ The percentage of battery (0-100). _(Number)_
+- __isPlugged:__ A boolean that represents whether or not the device is plugged in or not. _(Boolean)_
+
+Typically, you will want to attach an event listener with `window.addEventListener` once you receive the Cordova 'deviceready' event.
+
+Supported Platforms
+-------------------
+
+- iOS
+- Android
+- BlackBerry WebWorks (OS 5.0 and higher)
+
+Quick Example
+-------------
+
+    window.addEventListener("batterycritical", onBatteryCritical, false);
+
+    function onBatteryCritical(info) {
+        // Handle the battery critical event
+       	alert("Battery Level Critical " + info.level + "%\nRecharge Soon!"); 
+    }
+
+Full Example
+------------
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>Cordova Device Ready Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Call onDeviceReady when Cordova is loaded.
+        //
+        // At this point, the document has loaded but cordova-1.9.0.js has not.
+        // When Cordova is loaded and talking with the native device,
+        // it will call the event `deviceready`.
+        // 
+	    function onLoad() {
+    	    document.addEventListener("deviceready", onDeviceReady, false);
+    	}
+
+        // Cordova is loaded and it is now safe to make calls Cordova methods
+        //
+        function onDeviceReady() {
+		    window.addEventListener("batterycritical", onBatteryCritical, false);
+        }
+
+        // Handle the batterycritical event
+        //
+        function onBatteryCritical(info) {
+	       	alert("Battery Level Critical " + info.level + "%\nRecharge Soon!"); 
+        }
+        
+        </script>
+      </head>
+      <body onload="onLoad()">
+      </body>
+    </html>
diff --git a/docs/en/1.9.0/cordova/events/events.batterylow.md b/docs/en/1.9.0/cordova/events/events.batterylow.md
new file mode 100644
index 0000000..137186e
--- /dev/null
+++ b/docs/en/1.9.0/cordova/events/events.batterylow.md
@@ -0,0 +1,93 @@
+---
+license: 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.
+---
+
+batterylow
+===========
+
+This is an event that fires when a Cordova application detects the battery has reached the low level threshold.
+
+    window.addEventListener("batterylow", yourCallbackFunction, false);
+
+Details
+-------
+
+This event that fires when a Cordova application detects the percentage of battery has reached the low battery threshold. This value is device specific.
+
+The batterylow handler will be called with an object that contains two properties:
+
+- __level:__ The percentage of battery (0-100). _(Number)_
+- __isPlugged:__ A boolean that represents whether or not the device is plugged in or not. _(Boolean)_
+
+Typically, you will want to attach an event listener with `document.addEventListener` once you receive the Cordova 'deviceready' event.
+
+Supported Platforms
+-------------------
+
+- iOS
+- Android
+- BlackBerry WebWorks (OS 5.0 and higher)
+
+Quick Example
+-------------
+
+    window.addEventListener("batterylow", onBatteryLow, false);
+
+    function onBatteryLow(info) {
+        // Handle the battery low event
+       	alert("Battery Level Low " + info.level + "%"); 
+    }
+
+Full Example
+------------
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>Cordova Device Ready Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Call onDeviceReady when Cordova is loaded.
+        //
+        // At this point, the document has loaded but cordova-1.9.0.js has not.
+        // When Cordova is loaded and talking with the native device,
+        // it will call the event `deviceready`.
+        // 
+	    function onLoad() {
+    	    document.addEventListener("deviceready", onDeviceReady, false);
+    	}
+
+        // Cordova is loaded and it is now safe to make calls Cordova methods
+        //
+        function onDeviceReady() {
+		    window.addEventListener("batterylow", onBatteryLow, false);
+        }
+
+        // Handle the batterylow event
+        //
+        function onBatteryLow(info) {
+	       	alert("Battery Level Low " + info.level + "%"); 
+        }
+        
+        </script>
+      </head>
+      <body onload="onLoad()">
+      </body>
+    </html>
diff --git a/docs/en/1.9.0/cordova/events/events.batterystatus.md b/docs/en/1.9.0/cordova/events/events.batterystatus.md
new file mode 100644
index 0000000..5725c94
--- /dev/null
+++ b/docs/en/1.9.0/cordova/events/events.batterystatus.md
@@ -0,0 +1,102 @@
+---
+license: 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.
+---
+
+batterystatus
+===========
+
+This is an event that fires when a Cordova application detects a change in the battery status.
+
+    window.addEventListener("batterystatus", yourCallbackFunction, false);
+
+Details
+-------
+
+This event that fires when a Cordova application detects the percentage of battery has changed by at least 1 percent. It is also fired if the device has been plugged in or un-plugged.
+
+The battery status handler will be called with an object that contains two properties:
+
+- __level:__ The percentage of battery (0-100). _(Number)_
+- __isPlugged:__ A boolean that represents whether or not the device is plugged in or not. _(Boolean)_
+
+Typically, you will want to attach an event listener with `window.addEventListener` once you receive the Cordova 'deviceready' event.
+
+Supported Platforms
+-------------------
+
+- iOS
+- Android
+- BlackBerry WebWorks (OS 5.0 and higher)
+- Windows Phone 7 ( Mango )
+
+
+Windows Phone 7 Quirks
+----------------------
+
+The `level` property is unavailable as Windows Phone 7 does not provide
+native APIs for determining battery level. The `isPlugged` parameter
+_is_ supported.
+
+Quick Example
+-------------
+
+    window.addEventListener("batterystatus", onBatteryStatus, false);
+
+    function onBatteryStatus(info) {
+        // Handle the online event
+       	console.log("Level: " + info.level + " isPlugged: " + info.isPlugged); 
+    }
+
+Full Example
+------------
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>Cordova Device Ready Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Call onDeviceReady when Cordova is loaded.
+        //
+        // At this point, the document has loaded but cordova-1.9.0.js has not.
+        // When Cordova is loaded and talking with the native device,
+        // it will call the event `deviceready`.
+        // 
+	    function onLoad() {
+    	    document.addEventListener("deviceready", onDeviceReady, false);
+    	}
+
+        // Cordova is loaded and it is now safe to make calls Cordova methods
+        //
+        function onDeviceReady() {
+		    window.addEventListener("batterystatus", onBatteryStatus, false);
+        }
+
+        // Handle the batterystatus event
+        //
+        function onBatteryStatus(info) {
+        	console.log("Level: " + info.level + " isPlugged: " + info.isPlugged); 
+        }
+        
+        </script>
+      </head>
+      <body onload="onLoad()">
+      </body>
+    </html>
diff --git a/docs/en/1.9.0/cordova/events/events.deviceready.md b/docs/en/1.9.0/cordova/events/events.deviceready.md
new file mode 100644
index 0000000..2b29501
--- /dev/null
+++ b/docs/en/1.9.0/cordova/events/events.deviceready.md
@@ -0,0 +1,87 @@
+---
+license: 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.
+---
+
+deviceready
+===========
+
+This is an event that fires when Cordova is fully loaded.
+
+    document.addEventListener("deviceready", yourCallbackFunction, false);
+
+Details
+-------
+
+This is a very important event that every Cordova application should use.
+
+Cordova consists of two code bases: native and JavaScript. While the native code is loading, a custom loading image is displayed. However, JavaScript is only loaded once the DOM loads. This means your web application could, potentially, call a Cordova JavaScript function before it is loaded.
+
+The Cordova `deviceready` event fires once Cordova has fully loaded. After the device has fired, you can safely make calls to Cordova function.
+
+Typically, you will want to attach an event listener with `document.addEventListener` once the HTML document's DOM has loaded.
+
+Supported Platforms
+-------------------
+
+- Android
+- BlackBerry WebWorks (OS 5.0 and higher)
+- iOS
+- Windows Phone 7
+- Bada 1.2 & 2.x
+
+Quick Example
+-------------
+
+    document.addEventListener("deviceready", onDeviceReady, false);
+
+    function onDeviceReady() {
+        // Now safe to use the Cordova API
+    }
+
+Full Example
+------------
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>Cordova Device Ready Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Call onDeviceReady when Cordova is loaded.
+        //
+        // At this point, the document has loaded but cordova-1.9.0.js has not.
+        // When Cordova is loaded and talking with the native device,
+        // it will call the event `deviceready`.
+        //
+        function onLoad() {
+            document.addEventListener("deviceready", onDeviceReady, false);
+        }
+
+        // Cordova is loaded and it is now safe to make calls Cordova methods
+        //
+        function onDeviceReady() {
+            // Now safe to use the Cordova API
+        }
+
+        </script>
+      </head>
+      <body onload="onLoad()">
+      </body>
+    </html>
diff --git a/docs/en/1.9.0/cordova/events/events.endcallbutton.md b/docs/en/1.9.0/cordova/events/events.endcallbutton.md
new file mode 100644
index 0000000..94c995f
--- /dev/null
+++ b/docs/en/1.9.0/cordova/events/events.endcallbutton.md
@@ -0,0 +1,86 @@
+---
+license: 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.
+---
+
+endcallbutton
+===========
+
+This is an event that fires when the user presses the end call button.
+
+    document.addEventListener("endcallbutton", yourCallbackFunction, false);
+
+Details
+-------
+
+If you need to override the default end call behaviour you can register an event listener for the 'endcallbutton' event.
+
+Typically, you will want to attach an event listener with `document.addEventListener` once you receive the Cordova 'deviceready' event.
+
+Supported Platforms
+-------------------
+
+- BlackBerry WebWorks (OS 5.0 and higher)
+
+Quick Example
+-------------
+
+    document.addEventListener("endcallbutton", onEndCallKeyDown, false);
+
+    function onEndCallKeyDown() {
+        // Handle the end call button
+    }
+
+Full Example
+------------
+
+    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
+                          "http://www.w3.org/TR/html4/strict.dtd">
+    <html>
+      <head>
+        <title>Cordova End Call Button Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Call onDeviceReady when Cordova is loaded.
+        //
+        // At this point, the document has loaded but cordova-1.9.0.js has not.
+        // When Cordova is loaded and talking with the native device,
+        // it will call the event `deviceready`.
+        //
+        function onLoad() {
+            document.addEventListener("deviceready", onDeviceReady, false);
+        }
+
+        // Cordova is loaded and it is now safe to make calls Cordova methods
+        //
+        function onDeviceReady() {
+            // Register the event listener
+            document.addEventListener("endcallbutton", onEndCallKeyDown, false);
+        }
+
+        // Handle the end call button
+        //
+        function onEndCallKeyDown() {
+        }
+
+        </script>
+      </head>
+      <body onload="onLoad()">
+      </body>
+    </html>
diff --git a/docs/en/1.9.0/cordova/events/events.md b/docs/en/1.9.0/cordova/events/events.md
new file mode 100644
index 0000000..83125b8
--- /dev/null
+++ b/docs/en/1.9.0/cordova/events/events.md
@@ -0,0 +1,93 @@
+---
+license: 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.
+---
+
+Events
+======
+
+> Cordova lifecycle events.
+
+Event Types
+-----------
+
+- deviceready
+- pause
+- resume
+- online
+- offline
+- backbutton
+- batterycritical
+- batterylow
+- batterystatus
+- menubutton
+- searchbutton
+- startcallbutton
+- endcallbutton
+- volumedownbutton
+- volumeupbutton
+
+Permissions
+-----------
+
+### Android
+
+#### app/res/xml/plugins.xml
+
+    <plugin name="Battery" value="org.apache.cordova.BatteryListener" />
+
+#### app/AndroidManifest.xml
+
+    <uses-permission android:name="android.permission.BROADCAST_STICKY" />
+
+### Bada
+
+#### manifest.xml
+
+    <Privilege>
+        <Name>SYSTEM_SERVICE</Name>
+    </Privilege>
+
+### BlackBerry WebWorks
+
+#### www/plugins.xml
+
+    <plugin name="Battery" value="org.apache.cordova.battery.Battery" />
+
+#### www/config.xml
+
+    <feature id="blackberry.app"          required="true" version="1.0.0.0" />
+    <feature id="blackberry.app.event"    required="true" version="1.0.0.0" />
+    <feature id="blackberry.system.event" required="true" version="1.0.0.0" />
+
+### iOS
+
+#### App/Supporting Files/Cordova.plist
+
+    <key>Plugins</key>
+    <dict>
+        <key>Battery</key>
+        <string>CDVBattery</string>
+    </dict>
+
+### webOS
+
+    No permissions are required.
+
+### Windows Phone
+
+    No permissions are required.
diff --git a/docs/en/1.9.0/cordova/events/events.menubutton.md b/docs/en/1.9.0/cordova/events/events.menubutton.md
new file mode 100644
index 0000000..534503a
--- /dev/null
+++ b/docs/en/1.9.0/cordova/events/events.menubutton.md
@@ -0,0 +1,87 @@
+---
+license: 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.
+---
+
+menubutton
+===========
+
+This is an event that fires when the user presses the menu button.
+
+    document.addEventListener("menubutton", yourCallbackFunction, false);
+
+Details
+-------
+
+If you need to override the default menu button behaviour you can register an event listenter for the 'menubutton' event.
+
+Typically, you will want to attach an event listener with `document.addEventListener` once you receive the Cordova 'deviceready' event.
+
+Supported Platforms
+-------------------
+
+- Android
+- BlackBerry WebWorks (OS 5.0 and higher)
+
+Quick Example
+-------------
+
+    document.addEventListener("menubutton", onMenuKeyDown, false);
+
+    function onMenuKeyDown() {
+        // Handle the back button
+    }
+
+Full Example
+------------
+
+    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
+                          "http://www.w3.org/TR/html4/strict.dtd">
+    <html>
+      <head>
+        <title>Cordova Menu Button Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Call onDeviceReady when Cordova is loaded.
+        //
+        // At this point, the document has loaded but cordova-1.9.0.js has not.
+        // When Cordova is loaded and talking with the native device,
+        // it will call the event `deviceready`.
+        //
+        function onLoad() {
+            document.addEventListener("deviceready", onDeviceReady, false);
+        }
+
+        // Cordova is loaded and it is now safe to make calls Cordova methods
+        //
+        function onDeviceReady() {
+            // Register the event listener
+            document.addEventListener("menubutton", onMenuKeyDown, false);
+        }
+
+        // Handle the menu button
+        //
+        function onMenuKeyDown() {
+        }
+
+        </script>
+      </head>
+      <body onload="onLoad()">
+      </body>
+    </html>
diff --git a/docs/en/1.9.0/cordova/events/events.offline.md b/docs/en/1.9.0/cordova/events/events.offline.md
new file mode 100644
index 0000000..16ea81c
--- /dev/null
+++ b/docs/en/1.9.0/cordova/events/events.offline.md
@@ -0,0 +1,95 @@
+---
+license: 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.
+---
+
+offline
+===========
+
+This is an event that fires when a Cordova application is offline (not connected to the Internet).
+
+    document.addEventListener("offline", yourCallbackFunction, false);
+
+Details
+-------
+
+When the application's network connection changes to being offline, the offline event is fired.  
+
+Typically, you will want to attach an event listener with `document.addEventListener` once you receive the Cordova 'deviceready' event.
+
+Supported Platforms
+-------------------
+
+- Android
+- BlackBerry WebWorks (OS 5.0 and higher)
+- iOS
+- Windows Phone 7
+
+Quick Example
+-------------
+
+    document.addEventListener("offline", onOffline, false);
+
+    function onOffline() {
+        // Handle the offline event
+    }
+
+Full Example
+------------
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>Cordova Offline Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Call onDeviceReady when Cordova is loaded.
+        //
+        // At this point, the document has loaded but cordova-1.9.0.js has not.
+        // When Cordova is loaded and talking with the native device,
+        // it will call the event `deviceready`.
+        //
+        function onLoad() {
+            document.addEventListener("deviceready", onDeviceReady, false);
+        }
+
+        // Cordova is loaded and it is now safe to make calls Cordova methods
+        //
+        function onDeviceReady() {
+		    document.addEventListener("offline", onOffline, false);
+        }
+
+        // Handle the offline event
+        //
+        function onOffline() {
+        }
+
+        </script>
+      </head>
+      <body onload="onLoad()">
+      </body>
+    </html>
+
+iOS Quirks
+--------------------------
+During initial startup, the first offline event (if applicable) will take at least a second to fire.
+
+Windows Phone 7 Quirks
+--------------------------
+When running in the Emulator, the connection.status of the device is always unknown, and this event will NOT fire.
diff --git a/docs/en/1.9.0/cordova/events/events.online.md b/docs/en/1.9.0/cordova/events/events.online.md
new file mode 100644
index 0000000..fdf3a96
--- /dev/null
+++ b/docs/en/1.9.0/cordova/events/events.online.md
@@ -0,0 +1,95 @@
+---
+license: 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.
+---
+
+online
+===========
+
+This is an event that fires when a Cordova application is online (connected to the Internet).
+
+    document.addEventListener("online", yourCallbackFunction, false);
+
+Details
+-------
+
+When the application's network connection changes to being online, the online event is fired.  
+
+Typically, you will want to attach an event listener with `document.addEventListener` once you receive the Cordova 'deviceready' event.
+
+Supported Platforms
+-------------------
+
+- Android
+- BlackBerry WebWorks (OS 5.0 and higher)
+- iOS
+- Windows Phone 7
+
+Quick Example
+-------------
+
+    document.addEventListener("online", onOnline, false);
+
+    function onOnline() {
+        // Handle the online event
+    }
+
+Full Example
+------------
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>Cordova Online Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Call onDeviceReady when Cordova is loaded.
+        //
+        // At this point, the document has loaded but cordova-1.9.0.js has not.
+        // When Cordova is loaded and talking with the native device,
+        // it will call the event `deviceready`.
+        //
+        function onLoad() {
+            document.addEventListener("deviceready", onDeviceReady, false);
+        }
+
+        // Cordova is loaded and it is now safe to make calls Cordova methods
+        //
+        function onDeviceReady() {
+            document.addEventListener("online", onOnline, false);
+        }
+
+        // Handle the online event
+        //
+        function onOnline() {
+        }
+
+        </script>
+      </head>
+      <body onload="onLoad()">
+      </body>
+    </html>
+
+iOS Quirks
+--------------------------
+During initial startup, the first online event (if applicable) will take at least a second to fire.
+
+Windows Phone 7 Quirks
+--------------------------
+When running in the Emulator, the connection.status of the device is always unknown, and this event will NOT fire.
diff --git a/docs/en/1.9.0/cordova/events/events.pause.md b/docs/en/1.9.0/cordova/events/events.pause.md
new file mode 100644
index 0000000..427f8c3
--- /dev/null
+++ b/docs/en/1.9.0/cordova/events/events.pause.md
@@ -0,0 +1,97 @@
+---
+license: 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.
+---
+
+pause
+===========
+
+This is an event that fires when a Cordova application is put into the background.
+
+    document.addEventListener("pause", yourCallbackFunction, false);
+
+Details
+-------
+
+Cordova consists of two code bases: native and JavaScript. While the native code puts the application into the background the pause event is fired.  
+
+Typically, you will want to attach an event listener with `document.addEventListener` once you receive the Cordova 'deviceready' event.
+
+Supported Platforms
+-------------------
+
+- Android
+- BlackBerry WebWorks (OS 5.0 and higher)
+- iOS
+- Windows Phone 7
+
+Quick Example
+-------------
+
+    document.addEventListener("pause", onPause, false);
+
+    function onPause() {
+        // Handle the pause event
+    }
+
+Full Example
+------------
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>Cordova Pause Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Call onDeviceReady when Cordova is loaded.
+        //
+        // At this point, the document has loaded but cordova-1.9.0.js has not.
+        // When Cordova is loaded and talking with the native device,
+        // it will call the event `deviceready`.
+        //
+        function onLoad() {
+            document.addEventListener("deviceready", onDeviceReady, false);
+        }
+
+        // Cordova is loaded and it is now safe to make calls Cordova methods
+        //
+        function onDeviceReady() {
+		    document.addEventListener("pause", onPause, false);
+        }
+
+        // Handle the pause event
+        //
+        function onPause() {
+        }
+
+        </script>
+      </head>
+      <body onload="onLoad()">
+      </body>
+    </html>
+
+iOS Quirks
+--------------------------
+In the pause handler, any calls that go through Objective-C will not work, nor will any calls that are interactive, like alerts. This means that you cannot call console.log (and its variants), or any calls from Plugins or the Cordova API. These will only be processed when the app resumes (processed on the next run-loop).
+
+- __resign__ event 
+
+    This iOS specific event is available as a variant of the **pause** event, and is often used to detect when the "Lock" button has been pressed to lock the device when your app is the foreground app. If your app (and device) is enabled for multi-tasking, this will be paired with a subsequent **pause** event, but only under iOS 5 (effectively all "locked" apps in iOS 5 that have multi-tasking enabled are put to the background). 
+    
+    Under iOS 5, if you want your app to still run when the device is locked, you will have to disable multi-tasking (UIApplicationExitsOnSuspend - YES) for your app. This is different when you are on iOS 4 - to have your app run when the device is locked, the multi-tasking setting for your app does not matter.
diff --git a/docs/en/1.9.0/cordova/events/events.resume.md b/docs/en/1.9.0/cordova/events/events.resume.md
new file mode 100644
index 0000000..4291870
--- /dev/null
+++ b/docs/en/1.9.0/cordova/events/events.resume.md
@@ -0,0 +1,97 @@
+---
+license: 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.
+---
+
+resume
+===========
+
+This is an event that fires when a Cordova application is retrieved from the background.
+
+    document.addEventListener("resume", yourCallbackFunction, false);
+
+Details
+-------
+
+Cordova consists of two code bases: native and JavaScript. While the native code pulls the application from the background the resume event is fired.  
+
+Typically, you will want to attach an event listener with `document.addEventListener` once you receive the Cordova 'deviceready' event.
+
+Supported Platforms
+-------------------
+
+- Android
+- BlackBerry WebWorks (OS 5.0 and higher)
+- iOS
+- Windows Phone 7
+
+Quick Example
+-------------
+
+    document.addEventListener("resume", onResume, false);
+
+    function onResume() {
+        // Handle the resume event
+    }
+
+Full Example
+------------
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>Cordova Resume Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Call onDeviceReady when Cordova is loaded.
+        //
+        // At this point, the document has loaded but cordova-1.9.0.js has not.
+        // When Cordova is loaded and talking with the native device,
+        // it will call the event `deviceready`.
+        //
+        function onLoad() {
+            document.addEventListener("deviceready", onDeviceReady, false);
+        }
+
+        // Cordova is loaded and it is now safe to make calls Cordova methods
+        //
+        function onDeviceReady() {
+            document.addEventListener("resume", onResume, false);
+        }
+
+        // Handle the resume event
+        //
+        function onResume() {
+        }
+
+        </script>
+      </head>
+      <body onload="onLoad()">
+      </body>
+    </html>
+
+iOS Quirks
+--------------------------
+Any calls to console.log during your **pause** event handler will be run now when the app resumes, see the iOS Quirks section for the **pause** event for an explanation. 
+
+- __active__ event 
+
+    This iOS specific event is available as a variant of the **resume** event, and is often used to detect when the "Lock" button has been pressed to unlock the device when your app is the foreground app. If your app (and device) is enabled for multi-tasking, this will be paired with a subsequent **resume** event, but only under iOS 5 (effectively all "locked" apps in iOS 5 that have multi-tasking enabled are put to the background). 
+    
+    Under iOS 5,  if you want your app to still run when the device is locked, you will have to disable multi-tasking (UIApplicationExitsOnSuspend - YES) for your app. This is different when you are on iOS 4 - to have your app run when the device is locked, the multi-tasking setting for your app does not matter.
diff --git a/docs/en/1.9.0/cordova/events/events.searchbutton.md b/docs/en/1.9.0/cordova/events/events.searchbutton.md
new file mode 100644
index 0000000..8946d8b
--- /dev/null
+++ b/docs/en/1.9.0/cordova/events/events.searchbutton.md
@@ -0,0 +1,86 @@
+---
+license: 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.
+---
+
+searchbutton
+===========
+
+This is an event that fires when the user presses the search button on Android.
+
+    document.addEventListener("searchbutton", yourCallbackFunction, false);
+
+Details
+-------
+
+If you need to override the default search button behaviour on Android you can register an event listener for the 'searchbutton' event.
+
+Typically, you will want to attach an event listener with `document.addEventListener` once you receive the Cordova 'deviceready' event.
+
+Supported Platforms
+-------------------
+
+- Android
+
+Quick Example
+-------------
+
+    document.addEventListener("searchbutton", onSearchKeyDown, false);
+
+    function onSearchKeyDown() {
+        // Handle the search button
+    }
+
+Full Example
+------------
+
+    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
+                          "http://www.w3.org/TR/html4/strict.dtd">
+    <html>
+      <head>
+        <title>Cordova Search Button Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Call onDeviceReady when Cordova is loaded.
+        //
+        // At this point, the document has loaded but cordova-1.9.0.js has not.
+        // When Cordova is loaded and talking with the native device,
+        // it will call the event `deviceready`.
+        //
+        function onLoad() {
+            document.addEventListener("deviceready", onDeviceReady, false);
+        }
+
+        // Cordova is loaded and it is now safe to make calls Cordova methods
+        //
+        function onDeviceReady() {
+            // Register the event listener
+            document.addEventListener("searchbutton", onSearchKeyDown, false);
+        }
+
+        // Handle the search button
+        //
+        function onSearchKeyDown() {
+        }
+
+        </script>
+      </head>
+      <body onload="onLoad()">
+      </body>
+    </html>
diff --git a/docs/en/1.9.0/cordova/events/events.startcallbutton.md b/docs/en/1.9.0/cordova/events/events.startcallbutton.md
new file mode 100644
index 0000000..702b614
--- /dev/null
+++ b/docs/en/1.9.0/cordova/events/events.startcallbutton.md
@@ -0,0 +1,86 @@
+---
+license: 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.
+---
+
+startcallbutton
+===========
+
+This is an event that fires when the user presses the start call button.
+
+    document.addEventListener("startcallbutton", yourCallbackFunction, false);
+
+Details
+-------
+
+If you need to override the default start call behaviour you can register an event listener for the 'startcallbutton' event.
+
+Typically, you will want to attach an event listener with `document.addEventListener` once you receive the Cordova 'deviceready' event.
+
+Supported Platforms
+-------------------
+
+- BlackBerry WebWorks (OS 5.0 and higher)
+
+Quick Example
+-------------
+
+    document.addEventListener("startcallbutton", onStartCallKeyDown, false);
+
+    function onStartCallKeyDown() {
+        // Handle the start call button
+    }
+
+Full Example
+------------
+
+    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
+                          "http://www.w3.org/TR/html4/strict.dtd">
+    <html>
+      <head>
+        <title>Cordova Start Call Button Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Call onDeviceReady when Cordova is loaded.
+        //
+        // At this point, the document has loaded but cordova-1.9.0.js has not.
+        // When Cordova is loaded and talking with the native device,
+        // it will call the event `deviceready`.
+        //
+        function onLoad() {
+            document.addEventListener("deviceready", onDeviceReady, false);
+        }
+
+        // Cordova is loaded and it is now safe to make calls Cordova methods
+        //
+        function onDeviceReady() {
+            // Register the event listener
+            document.addEventListener("startcallbutton", onStartCallKeyDown, false);
+        }
+
+        // Handle the start call button
+        //
+        function onStartCallKeyDown() {
+        }
+
+        </script>
+      </head>
+      <body onload="onLoad()">
+      </body>
+    </html>
diff --git a/docs/en/1.9.0/cordova/events/events.volumedownbutton.md b/docs/en/1.9.0/cordova/events/events.volumedownbutton.md
new file mode 100644
index 0000000..ac3b498
--- /dev/null
+++ b/docs/en/1.9.0/cordova/events/events.volumedownbutton.md
@@ -0,0 +1,86 @@
+---
+license: 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.
+---
+
+volumedownbutton
+===========
+
+This is an event that fires when the user presses the volume down button.
+
+    document.addEventListener("volumedownbutton", yourCallbackFunction, false);
+
+Details
+-------
+
+If you need to override the default volume down behaviour you can register an event listener for the 'volumedownbutton' event.
+
+Typically, you will want to attach an event listener with `document.addEventListener` once you receive the Cordova 'deviceready' event.
+
+Supported Platforms
+-------------------
+
+- BlackBerry WebWorks (OS 5.0 and higher)
+
+Quick Example
+-------------
+
+    document.addEventListener("volumedownbutton", onVolumeDownKeyDown, false);
+
+    function onVolumeDownKeyDown() {
+        // Handle the volume down button
+    }
+
+Full Example
+------------
+
+    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
+                          "http://www.w3.org/TR/html4/strict.dtd">
+    <html>
+      <head>
+        <title>Cordova Volume Down Button Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Call onDeviceReady when Cordova is loaded.
+        //
+        // At this point, the document has loaded but cordova-1.9.0.js has not.
+        // When Cordova is loaded and talking with the native device,
+        // it will call the event `deviceready`.
+        //
+        function onLoad() {
+            document.addEventListener("deviceready", onDeviceReady, false);
+        }
+
+        // Cordova is loaded and it is now safe to make calls Cordova methods
+        //
+        function onDeviceReady() {
+            // Register the event listener
+            document.addEventListener("volumedownbutton", onVolumeDownKeyDown, false);
+        }
+
+        // Handle the volume down button
+        //
+        function onVolumeDownKeyDown() {
+        }
+
+        </script>
+      </head>
+      <body onload="onLoad()">
+      </body>
+    </html>
diff --git a/docs/en/1.9.0/cordova/events/events.volumeupbutton.md b/docs/en/1.9.0/cordova/events/events.volumeupbutton.md
new file mode 100644
index 0000000..53a6747
--- /dev/null
+++ b/docs/en/1.9.0/cordova/events/events.volumeupbutton.md
@@ -0,0 +1,86 @@
+---
+license: 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.
+---
+
+volumeupbutton
+===========
+
+This is an event that fires when the user presses the volume up button.
+
+    document.addEventListener("volumeupbutton", yourCallbackFunction, false);
+
+Details
+-------
+
+If you need to override the default volume up behaviour you can register an event listener for the 'volumeupbutton' event.
+
+Typically, you will want to attach an event listener with `document.addEventListener` once you receive the Cordova 'deviceready' event.
+
+Supported Platforms
+-------------------
+
+- BlackBerry WebWorks (OS 5.0 and higher)
+
+Quick Example
+-------------
+
+    document.addEventListener("volumeupbutton", onVolumeUpKeyDown, false);
+
+    function onVolumeUpKeyDown() {
+        // Handle the volume up button
+    }
+
+Full Example
+------------
+
+    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
+                          "http://www.w3.org/TR/html4/strict.dtd">
+    <html>
+      <head>
+        <title>Cordova Volume Up Button Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Call onDeviceReady when Cordova is loaded.
+        //
+        // At this point, the document has loaded but cordova-1.9.0.js has not.
+        // When Cordova is loaded and talking with the native device,
+        // it will call the event `deviceready`.
+        //
+        function onLoad() {
+            document.addEventListener("deviceready", onDeviceReady, false);
+        }
+
+        // Cordova is loaded and it is now safe to make calls Cordova methods
+        //
+        function onDeviceReady() {
+            // Register the event listener
+            document.addEventListener("volumeupbutton", onVolumeUpKeyDown, false);
+        }
+
+        // Handle the volume up button
+        //
+        function onVolumeUpKeyDown() {
+        }
+
+        </script>
+      </head>
+      <body onload="onLoad()">
+      </body>
+    </html>
diff --git a/docs/en/1.9.0/cordova/file/directoryentry/directoryentry.md b/docs/en/1.9.0/cordova/file/directoryentry/directoryentry.md
new file mode 100644
index 0000000..2c44d42
--- /dev/null
+++ b/docs/en/1.9.0/cordova/file/directoryentry/directoryentry.md
@@ -0,0 +1,351 @@
+---
+license: 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.
+---
+
+DirectoryEntry
+==============
+
+This object represents a directory on a file system.  It is defined in the [W3C Directories and Systems](http://www.w3.org/TR/file-system-api/) specification.
+
+Properties
+----------
+
+- __isFile:__ Always false. _(boolean)_
+- __isDirectory:__ Always true. _(boolean)_
+- __name:__ The name of the DirectoryEntry, excluding the path leading to it. _(DOMString)_
+- __fullPath:__ The full absolute path from the root to the DirectoryEntry. _(DOMString)_
+
+NOTE: The following attributes are defined by the W3C specification, but are __not supported__ by Cordova:
+
+- __filesystem:__ The file system on which the DirectoryEntry resides. _(FileSystem)_
+
+Methods
+-------
+
+The following methods can be invoked on a DirectoryEntry object:
+
+- __getMetadata__: Look up metadata about a directory.
+- __setMetadata__: Set metadata on a directory.
+- __moveTo__: Move a directory to a different location on the file system.
+- __copyTo__: Copy a directory to a different location on the file system.
+- __toURL__: Return a URL that can be used to locate a directory.
+- __remove__: Delete a directory.  The directory must be empty.
+- __getParent__: Look up the parent directory.
+- __createReader__: Create a new DirectoryReader that can read entries from a directory.
+- __getDirectory__: Create or look up a directory.
+- __getFile__: Create or look up a file.
+- __removeRecursively__: Delete a directory and all of its contents.
+
+
+Supported Platforms
+-------------------
+
+- Android
+- BlackBerry WebWorks (OS 5.0 and higher)
+- iOS
+- Windows Phone 7 ( Mango )
+
+getMetadata
+-----------
+
+Look up metadata about a directory.
+
+__Parameters:__
+
+- __successCallback__ - A callback that is called with a Metadata object. _(Function)_
+- __errorCallback__ - A callback that is called if an error occurs retrieving the Metadata. Invoked with a FileError object. _(Function)_
+
+
+__Quick Example__
+
+    function success(metadata) {
+        console.log("Last Modified: " + metadata.modificationTime);
+    }
+
+    function fail(error) {
+        alert(error.code);
+    }
+
+    // Request the metadata object for this entry
+    entry.getMetadata(success, fail);
+
+setMetadata
+----------------
+
+Set metadata on a directory.
+**Only works on iOS currently** - this will set the extended attributes of a directory.
+
+__Parameters:__
+
+- __successCallback__ - A callback that is called when the metadata was successfully set. _(Function)_
+- __errorCallback__ - A callback that is called when the metadata was not successfully set. _(Function)_
+- __metadataObject__ - An object that contains the metadata keys and values. _(Object)_
+
+
+__Quick Example__
+
+    function success() {
+        console.log("The metadata was successfully set.");
+    }
+
+    function fail() {
+        alert("There was an error in setting the metadata");
+    }
+
+    // Set the metadata
+    entry.setMetadata(success, fail, { "com.apple.MobileBackup": 1});
+__iOS Quirk__
+
+- only the **"com.apple.MobileBackup"** extended attribute is supported. Set the value to **1** to NOT enable the directory to be backed up by iCloud. Set the value to **0** to re-enable the directory to be backed up by iCloud.
+
+
+moveTo
+------
+
+Move a directory to a different location on the file system. It is an error to attempt to:
+
+- move a directory inside itself or to any child at any depth;
+- move a directory into its parent if a name different from its current one is not provided;
+- move a directory to a path occupied by a file;
+- move a directory to a path occupied by a directory which is not empty.
+
+In addition, an attempt to move a directory on top of an existing empty directory must attempt to delete and replace that directory.
+
+__Parameters:__
+
+- __parent__ - The parent directory to which to move the directory. _(DirectoryEntry)_
+- __newName__ - The new name of the directory. Defaults to the current name if unspecified. _(DOMString)_
+- __successCallback__ - A callback that is called with the DirectoryEntry object of the new directory. _(Function)_
+- __errorCallback__ - A callback that is called if an error occurs when attempting to move the directory.  Invoked with a FileError object. _(Function)_
+
+
+__Quick Example__
+
+    function success(entry) {
+        console.log("New Path: " + entry.fullPath);
+    }
+
+    function fail(error) {
+        alert(error.code);
+    }
+
+	function moveDir(entry) {
+        var parent = document.getElementById('parent').value,
+            parentName = parent.substring(parent.lastIndexOf('/')+1),
+            newName = document.getElementById('newName').value,
+            parentEntry = new DirectoryEntry(parentName, parent);
+
+        // move the directory to a new directory and rename it
+        entry.moveTo(parentEntry, newName, success, fail);
+    }
+
+copyTo
+------
+
+Copy a directory to a different location on the file system. It is an error to attempt to:
+
+- copy a directory inside itself at any depth;
+- copy a directory into its parent if a name different from its current one is not provided.
+
+Directory copies are always recursive - that is, they copy all contents of the directory.
+
+__Parameters:__
+
+- __parent__ - The parent directory to which to copy the directory. _(DirectoryEntry)_
+- __newName__ - The new name of the directory. Defaults to the current name if unspecified. _(DOMString)_
+- __successCallback__ - A callback that is called with the DirectoryEntry object of the new directory. _(Function)_
+- __errorCallback__ - A callback that is called if an error occurs when attempting to copy the underlying directory.  Invoked with a FileError object. _(Function)_
+
+
+__Quick Example__
+
+	function win(entry) {
+		console.log("New Path: " + entry.fullPath);
+	}
+
+	function fail(error) {
+		alert(error.code);
+	}
+
+	function copyDir(entry) {
+        var parent = document.getElementById('parent').value,
+            parentName = parent.substring(parent.lastIndexOf('/')+1),
+            newName = document.getElementById('newName').value,
+            parentEntry = new DirectoryEntry(parentName, parent);
+
+        // copy the directory to a new directory and rename it
+        entry.copyTo(parentEntry, newName, success, fail);
+    }
+
+
+toURL
+-----
+
+Returns a URL that can be used to locate the directory.
+
+__Quick Example__
+
+    // Get the URL for this directory
+    var dirURL = entry.toURL();
+    console.log(dirURL);
+
+
+remove
+------
+
+Deletes a directory. It is an error to attempt to:
+
+- delete a directory that is not empty;
+- delete the root directory of a filesystem.
+
+__Parameters:__
+
+- __successCallback__ - A callback that is called after the directory has been deleted.  Invoked with no parameters. _(Function)_
+- __errorCallback__ - A callback that is called if an error occurs when attempting to delete the directory.  Invoked with a FileError object. _(Function)_
+
+__Quick Example__
+
+    function success(entry) {
+        console.log("Removal succeeded");
+    }
+
+    function fail(error) {
+        alert('Error removing directory: ' + error.code);
+    }
+
+    // remove this directory
+    entry.remove(success, fail);
+
+
+getParent
+---------
+
+Look up the parent DirectoryEntry containing the directory.
+
+__Parameters:__
+
+- __successCallback__ - A callback that is called with the directory's parent DirectoryEntry. _(Function)_
+- __errorCallback__ - A callback that is called if an error occurs when attempting to retrieve the parent DirectoryEntry.  Invoked with a FileError object. _(Function)_
+
+__Quick Example__
+
+    function success(parent) {
+        console.log("Parent Name: " + parent.name);
+    }
+
+    function fail(error) {
+        alert('Failed to get parent directory: ' + error.code);
+    }
+
+	// Get the parent DirectoryEntry
+	entry.getParent(success, fail);
+
+
+createReader
+------------
+
+Creates a new DirectoryReader to read entries in a directory.
+
+__Quick Example__
+
+    // create a directory reader
+    var directoryReader = entry.createReader();
+
+
+getDirectory
+------------
+
+Creates or looks up an existing directory.  It is an error to attempt to:
+
+- create a directory whose immediate parent does not yet exist.
+
+__Parameters:__
+
+- __path__ - The path to the directory to be looked up or created.  Either an absolute path, or a relative path from this DirectoryEntry. _(DOMString)_
+- __options__ - Options to specify whether the directory is created if it doesn't exist.  _(Flags)_
+- __successCallback__ - A callback that is invoked with a DirectoryEntry object. _(Function)_
+- __errorCallback__ - A callback that is called if an error occurs creating or looking up the directory.  Invoked with a FileError object. _(Function)_
+
+__Quick Example__
+
+    function success(parent) {
+        console.log("Parent Name: " + parent.name);
+    }
+
+    function fail(error) {
+        alert("Unable to create new directory: " + error.code);
+    }
+
+    // Retrieve an existing directory, or create it if it does not already exist
+    entry.getDirectory("newDir", {create: true, exclusive: false}, success, fail);
+
+
+getFile
+-------
+
+Creates or looks up a file.  It is an error to attempt to:
+
+- create a file whose immediate parent does not yet exist.
+
+__Parameters:__
+
+- __path__ - The path to the file to be looked up or created.  Either an absolute path, or a relative path from this DirectoryEntry. _(DOMString)_
+- __options__ - Options to specify whether the file is created if it doesn't exist.  _(Flags)_
+- __successCallback__ - A callback that is invoked with a FileEntry object. _(Function)_
+- __errorCallback__ - A callback that is called if an error occurs creating or looking up the file.  Invoked with a FileError object. _(Function)_
+
+__Quick Example__
+
+    function success(parent) {
+        console.log("Parent Name: " + parent.name);
+    }
+
+    function fail(error) {
+        alert("Failed to retrieve file: " + error.code);
+    }
+
+    // Retrieve an existing file, or create it if it does not exist
+    entry.getFile("newFile.txt", {create: true, exclusive: false}, success, fail);
+
+
+removeRecursively
+-----------------
+
+Deletes a directory and all of its contents.  In the event of an error (e.g. trying to delete
+a directory that contains a file that cannot be removed), some of the contents of the directory may
+be deleted.   It is an error to attempt to:
+
+- delete the root directory of a filesystem.
+
+__Parameters:__
+
+- __successCallback__ - A callback that is called after the DirectoryEntry has been deleted.  Invoked with no parameters. _(Function)_
+- __errorCallback__ - A callback that is called if an error occurs when attempting to delete the DirectoryEntry.  Invoked with a FileError object. _(Function)_
+
+__Quick Example__
+
+    function success(parent) {
+        console.log("Remove Recursively Succeeded");
+    }
+
+    function fail(error) {
+        alert("Failed to remove directory or it's contents: " + error.code);
+    }
+
+    // remove the directory and all it's contents
+    entry.removeRecursively(success, fail);
diff --git a/docs/en/1.9.0/cordova/file/directoryreader/directoryreader.md b/docs/en/1.9.0/cordova/file/directoryreader/directoryreader.md
new file mode 100644
index 0000000..58e59ba
--- /dev/null
+++ b/docs/en/1.9.0/cordova/file/directoryreader/directoryreader.md
@@ -0,0 +1,66 @@
+---
+license: 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.
+---
+
+DirectoryReader
+===============
+
+An object that lists files and directories in a directory.  Defined in the [Directories and Systems](http://www.w3.org/TR/file-system-api/) specification.
+
+Methods
+-------
+
+- __readEntries__: Read the entries in a directory. 
+
+
+Supported Platforms
+-------------------
+
+- Android
+- BlackBerry WebWorks (OS 5.0 and higher)
+- iOS
+- Windows Phone 7 ( Mango )
+
+readEntries
+-----------
+
+Read the entries in this directory.
+
+__Parameters:__
+
+- __successCallback__ - A callback that is passed an array of FileEntry and DirectoryEntry objects. _(Function)_
+- __errorCallback__ - A callback that is called if an error occurs retrieving the directory listing. Invoked with a FileError object. _(Function)_
+
+__Quick Example__
+	
+    function success(entries) {
+        var i;
+        for (i=0; i<entries.length; i++) {
+            console.log(entries[i].name);
+        }
+    }
+
+    function fail(error) {
+        alert("Failed to list directory contents: " + error.code);
+    }
+
+    // Get a directory reader
+    var directoryReader = dirEntry.createReader();
+
+    // Get a list of all the entries in the directory
+    directoryReader.readEntries(success,fail);
diff --git a/docs/en/1.9.0/cordova/file/file.md b/docs/en/1.9.0/cordova/file/file.md
new file mode 100644
index 0000000..0f93e22
--- /dev/null
+++ b/docs/en/1.9.0/cordova/file/file.md
@@ -0,0 +1,100 @@
+---
+license: 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.
+---
+
+File
+==========
+
+>  This API is based on the W3C [File API](http://www.w3.org/TR/FileAPI). An API to read, write and navigate file system hierarchies.
+
+Objects
+-------
+
+- DirectoryEntry
+- DirectoryReader
+- File
+- FileEntry
+- FileError
+- FileReader
+- FileSystem
+- FileTransfer
+- FileTransferError
+- FileUploadOptions
+- FileUploadResult
+- FileWriter
+- Flags
+- LocalFileSystem
+- Metadata
+
+Permissions
+-----------
+
+### Android
+
+#### app/res/xml/plugins.xml
+
+    <plugin name="File" value="org.apache.cordova.FileUtils" />
+    <plugin name="FileTransfer" value="org.apache.cordova.FileTransfer" />
+
+#### app/AndroidManifest.xml
+
+    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
+
+### Bada
+
+    No permissions are required.
+
+### BlackBerry WebWorks
+
+#### www/plugins.xml
+
+    <plugin name="File" value="org.apache.cordova.file.FileManager" />
+    <plugin name="FileTransfer" value="org.apache.cordova.http.FileTransfer" />
+
+#### www/config.xml
+
+    <feature id="blackberry.io.file" required="true" version="1.0.0.0" />
+    <feature id="blackberry.utils"   required="true" version="1.0.0.0" />
+    <feature id="blackberry.io.dir"  required="true" version="1.0.0.0" />
+    <rim:permissions>
+        <rim:permit>access_shared</rim:permit>
+    </rim:permissions>
+
+### iOS
+
+#### App/Supporting Files/Cordova.plist
+
+    <key>Plugins</key>
+    <dict>
+        <key>File</key>
+        <string>CDVFile</string>
+    </dict>
+
+    <key>Plugins</key>
+    <dict>
+        <key>FileTransfer</key>
+        <string>CDVFileTransfer</string>
+    </dict>
+
+### webOS
+
+    No permissions are required.
+
+### Windows Phone
+
+    No permissions are required.
diff --git a/docs/en/1.9.0/cordova/file/fileentry/fileentry.md b/docs/en/1.9.0/cordova/file/fileentry/fileentry.md
new file mode 100644
index 0000000..0fdfd1a
--- /dev/null
+++ b/docs/en/1.9.0/cordova/file/fileentry/fileentry.md
@@ -0,0 +1,294 @@
+---
+license: 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.
+---
+
+FileEntry
+==========
+
+This object represents a file on a file system.  It is defined in the [W3C Directories and Systems](http://www.w3.org/TR/file-system-api/) specification.
+
+Properties
+----------
+
+- __isFile:__ Always true. _(boolean)_
+- __isDirectory:__ Always false. _(boolean)_
+- __name:__ The name of the FileEntry, excluding the path leading to it. _(DOMString)_
+- __fullPath:__ The full absolute path from the root to the FileEntry. _(DOMString)_
+
+NOTE: The following attributes are defined by the W3C specification, but are __not supported__ by Cordova:
+
+- __filesystem:__ The file system on which the FileEntry resides. _(FileSystem)_
+
+
+Methods
+-------
+
+- __getMetadata__: Look up metadata about a file.
+- __setMetadata__: Set metadata on a file.
+- __moveTo__: Move a file to a different location on the file system.
+- __copyTo__: Copy a file to a different location on the file system.
+- __toURL__: Return a URL that can be used to locate a file.
+- __remove__: Delete a file.
+- __getParent__: Look up the parent directory.
+- __createWriter__: Creates a FileWriter object that can be used to write to a file.
+- __file__: Creates a File object containing file properties.
+
+
+Supported Platforms
+-------------------
+
+- Android
+- BlackBerry WebWorks (OS 5.0 and higher)
+- iOS
+- Windows Phone 7 ( Mango )
+
+
+getMetadata
+----------------
+
+Look up metadata about a file.
+
+__Parameters:__
+
+- __successCallback__ - A callback that is called with a Metadata object. _(Function)_
+- __errorCallback__ - A callback that is called if an error occurs retrieving the Metadata. Invoked with a FileError object. _(Function)_
+
+
+__Quick Example__
+
+    function success(metadata) {
+        console.log("Last Modified: " + metadata.modificationTime);
+    }
+
+    function fail(error) {
+        alert(error.code);
+    }
+
+    // Request the metadata object for this entry
+    entry.getMetadata(success, fail);
+
+
+setMetadata
+----------------
+
+Set metadata on a file.
+**Only works on iOS currently** - this will set the extended attributes of a file.
+
+__Parameters:__
+
+- __successCallback__ - A callback that is called when the metadata was successfully set. _(Function)_
+- __errorCallback__ - A callback that is called when the metadata was not successfully set. _(Function)_
+- __metadataObject__ - An object that contains the metadata keys and values. _(Object)_
+
+
+__Quick Example__
+
+    function success() {
+        console.log("The metadata was successfully set.");
+    }
+
+    function fail() {
+        alert("There was an error in setting the metadata");
+    }
+
+    // Set the metadata
+    entry.setMetadata(success, fail, { "com.apple.MobileBackup": 1});
+__iOS Quirk__
+
+- only the **"com.apple.MobileBackup"** extended attribute is supported. Set the value to **1** to NOT enable the file to be backed up by iCloud. Set the value to **0** to re-enable the file to be backed up by iCloud.
+
+
+moveTo
+------
+
+Move a file to a different location on the file system. It is an error to attempt to:
+
+- move a file into its parent if a name different from its current one isn't provided;
+- move a file to a path occupied by a directory;
+
+In addition, an attempt to move a file on top of an existing file must attempt to delete and replace that file.
+
+__Parameters:__
+
+- __parent__ - The parent directory to which to move the file. _(DirectoryEntry)_
+- __newName__ - The new name of the file. Defaults to the current name if unspecified. _(DOMString)_
+- __successCallback__ - A callback that is called with the FileEntry object of the new file. _(Function)_
+- __errorCallback__ - A callback that is called if an error occurs when attempting to move the file.  Invoked with a FileError object. _(Function)_
+
+
+__Quick Example__
+
+    function success(entry) {
+        console.log("New Path: " + entry.fullPath);
+    }
+
+    function fail(error) {
+        alert(error.code);
+    }
+
+    function moveFile(entry) {
+        var parent = document.getElementById('parent').value,
+            parentName = parent.substring(parent.lastIndexOf('/')+1),
+            parentEntry = new DirectoryEntry(parentName, parent);
+
+        // move the file to a new directory and rename it
+        entry.moveTo(parentEntry, "newFile.txt", success, fail);
+    }
+
+
+copyTo
+------
+
+Copy a file to a new location on the file system.  It is an error to attempt to:
+
+- copy a file into its parent if a name different from its current one is not provided.
+
+__Parameters:__
+
+- __parent__ - The parent directory to which to copy the file. _(DirectoryEntry)_
+- __newName__ - The new name of the file. Defaults to the current name if unspecified. _(DOMString)_
+- __successCallback__ - A callback that is called with the FileEntry object of the new file. _(Function)_
+- __errorCallback__ - A callback that is called if an error occurs when attempting to copy the file.  Invoked with a FileError object. _(Function)_
+
+
+__Quick Example__
+
+    function win(entry) {
+	    console.log("New Path: " + entry.fullPath);
+    }
+
+    function fail(error) {
+	    alert(error.code);
+    }
+
+    function copyFile(entry) {
+        var parent = document.getElementById('parent').value,
+            parentName = parent.substring(parent.lastIndexOf('/')+1),
+            parentEntry = new DirectoryEntry(parentName, parent);
+
+        // copy the file to a new directory and rename it
+        entry.copyTo(parentEntry, "file.copy", success, fail);
+    }
+
+
+toURL
+-----
+
+Returns a URL that can be used to locate the file.
+
+__Quick Example__
+
+    // Request the URL for this entry
+    var fileURL = entry.toURL();
+    console.log(fileURL);
+
+
+remove
+------
+
+Deletes a file.
+
+__Parameters:__
+
+- __successCallback__ - A callback that is called after the file has been deleted.  Invoked with no parameters. _(Function)_
+- __errorCallback__ - A callback that is called if an error occurs when attempting to delete the file.  Invoked with a FileError object. _(Function)_
+
+__Quick Example__
+
+    function success(entry) {
+        console.log("Removal succeeded");
+    }
+
+    function fail(error) {
+        alert('Error removing file: ' + error.code);
+    }
+
+    // remove the file
+    entry.remove(success, fail);
+
+
+getParent
+---------
+
+Look up the parent DirectoryEntry containing the file.
+
+__Parameters:__
+
+- __successCallback__ - A callback that is called with the file's parent DirectoryEntry. _(Function)_
+- __errorCallback__ - A callback that is called if an error occurs when attempting to retrieve the parent DirectoryEntry.  Invoked with a FileError object. _(Function)_
+
+__Quick Example__
+
+    function success(parent) {
+        console.log("Parent Name: " + parent.name);
+    }
+
+    function fail(error) {
+        alert(error.code);
+    }
+
+    // Get the parent DirectoryEntry
+    entry.getParent(success, fail);
+
+
+createWriter
+------------
+
+Create a FileWriter object associated with the file that the FileEntry represents.
+
+__Parameters:__
+
+- __successCallback__ - A callback that is called with a FileWriter object. _(Function)_
+- __errorCallback__ - A callback that is called if an error occurs while attempting to create the FileWriter.  Invoked with a FileError object. _(Function)_
+
+__Quick Example__
+
+    function success(writer) {
+        writer.write("Some text to the file");
+    }
+
+    function fail(error) {
+        alert(error.code);
+    }
+
+    // create a FileWriter to write to the file
+    entry.createWriter(success, fail);
+
+
+file
+----
+
+Return a File object that represents the current state of the file that this FileEntry represents.
+
+__Parameters:__
+
+- __successCallback__ - A callback that is called with a File object. _(Function)_
+- __errorCallback__ - A callback that is called if an error occurs when creating the File object (e.g. the underlying file no longer exists).  Invoked with a FileError object. _(Function)_
+
+__Quick Example__
+
+    function success(file) {
+        console.log("File size: " + file.size);
+    }
+
+    function fail(error) {
+        alert("Unable to retrieve file properties: " + error.code);
+    }
+
+    // obtain properties of a file
+    entry.file(success, fail);
diff --git a/docs/en/1.9.0/cordova/file/fileerror/fileerror.md b/docs/en/1.9.0/cordova/file/fileerror/fileerror.md
new file mode 100644
index 0000000..75511c5
--- /dev/null
+++ b/docs/en/1.9.0/cordova/file/fileerror/fileerror.md
@@ -0,0 +1,49 @@
+---
+license: 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.
+---
+
+FileError
+========
+
+A 'FileError' object is set when an error occurs in any of the File API methods. 
+
+Properties
+----------
+
+- __code:__ One of the predefined error codes listed below.
+
+Constants
+---------
+
+- `FileError.NOT_FOUND_ERR`
+- `FileError.SECURITY_ERR`
+- `FileError.ABORT_ERR`
+- `FileError.NOT_READABLE_ERR`
+- `FileError.ENCODING_ERR`
+- `FileError.NO_MODIFICATION_ALLOWED_ERR`
+- `FileError.INVALID_STATE_ERR`
+- `FileError.SYNTAX_ERR`
+- `FileError.INVALID_MODIFICATION_ERR`
+- `FileError.QUOTA_EXCEEDED_ERR`
+- `FileError.TYPE_MISMATCH_ERR`
+- `FileError.PATH_EXISTS_ERR`
+
+Description
+-----------
+
+The `FileError` object is the only parameter of any of the File API's error callbacks.  Developers must read the code property to determine the type of error.
\ No newline at end of file
diff --git a/docs/en/1.9.0/cordova/file/fileobj/fileobj.md b/docs/en/1.9.0/cordova/file/fileobj/fileobj.md
new file mode 100644
index 0000000..5c37994
--- /dev/null
+++ b/docs/en/1.9.0/cordova/file/fileobj/fileobj.md
@@ -0,0 +1,45 @@
+---
+license: 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.
+---
+
+File
+====
+
+This object contains attributes of a single file.
+
+Properties
+----------
+
+- __name:__ The name of the file. _(DOMString)_
+- __fullPath:__ The full path of the file including the file name. _(DOMString)_
+- __type:__ The mime type of the file. _(DOMString)_
+- __lastModifiedDate:__ The last time the file was modified. _(Date)_
+- __size:__ The size of the file in bytes. _(long)_
+
+Details
+-------
+
+The `File` object contains attributes of a single file.  You can get an instance of a File object by calling the __file__ method of a `FileEntry` object.
+
+Supported Platforms
+-------------------
+
+- Android
+- BlackBerry WebWorks (OS 5.0 and higher)
+- iOS
+- Windows Phone 7 ( Mango )
diff --git a/docs/en/1.9.0/cordova/file/filereader/filereader.md b/docs/en/1.9.0/cordova/file/filereader/filereader.md
new file mode 100644
index 0000000..8ca2443
--- /dev/null
+++ b/docs/en/1.9.0/cordova/file/filereader/filereader.md
@@ -0,0 +1,196 @@
+---
+license: 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.
+---
+
+FileReader
+==========
+
+FileReader is an object that allows one to read a file.
+
+Properties
+----------
+
+- __readyState:__ One of the three states the reader can be in EMPTY, LOADING or DONE.
+- __result:__ The contents of the file that has been read. _(DOMString)_
+- __error:__ An object containing errors. _(FileError)_
+- __onloadstart:__ Called when the read starts. . _(Function)_
+- __onprogress:__ Called while reading the file, reports progress (progess.loaded/progress.total). _(Function)_ -NOT SUPPORTED
+- __onload:__ Called when the read has successfully completed. _(Function)_
+- __onabort:__ Called when the read has been aborted. For instance, by invoking the abort() method. _(Function)_
+- __onerror:__ Called when the read has failed. _(Function)_
+- __onloadend:__ Called when the request has completed (either in success or failure).  _(Function)_
+
+Methods
+-------
+
+- __abort__: Aborts reading file. 
+- __readAsDataURL__: Read file and return data as a base64 encoded data url.
+- __readAsText__: Reads text file.
+
+Details
+-------
+
+The `FileReader` object is a way to read files from the devices file system.  Files can be read as text or as a base64 data encoded string.  Users register their own event listners to receive the loadstart, progress, load, loadend, error and abort events.
+
+Supported Platforms
+-------------------
+
+- Android
+- BlackBerry WebWorks (OS 5.0 and higher)
+- iOS
+- Windows Phone 7 ( Mango )
+
+Read As Data URL 
+----------------
+
+__Parameters:__
+- file - the file object to read
+
+
+Quick Example
+-------------
+
+	function win(file) {
+		var reader = new FileReader();
+		reader.onloadend = function(evt) {
+        	console.log("read success");
+            console.log(evt.target.result);
+        };
+		reader.readAsDataURL(file);
+	};
+
+	var fail = function(evt) {
+    	console.log(error.code);
+	};
+	
+    entry.file(win, fail);
+
+Read As Text
+------------
+
+__Parameters:__
+
+- file - the file object to read
+- encoding - the encoding to use to encode the file's content. Default is UTF8.
+
+Quick Example
+-------------
+
+	function win(file) {
+		var reader = new FileReader();
+		reader.onloadend = function(evt) {
+        	console.log("read success");
+            console.log(evt.target.result);
+        };
+		reader.readAsText(file);
+	};
+
+	var fail = function(evt) {
+    	console.log(error.code);
+	};
+	
+    entry.file(win, fail);
+
+Abort Quick Example
+-------------------
+
+	function win(file) {
+		var reader = new FileReader();
+		reader.onloadend = function(evt) {
+        	console.log("read success");
+            console.log(evt.target.result);
+        };
+		reader.readAsText(file);
+		reader.abort();
+	};
+
+    function fail(error) {
+    	console.log(error.code);
+    }
+	
+    entry.file(win, fail);
+
+Full Example
+------------
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>FileReader Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for Cordova to load
+        //
+        function onLoad() {
+            document.addEventListener("deviceready", onDeviceReady, false);
+        }
+
+        // Cordova is ready
+        //
+        function onDeviceReady() {
+			window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, gotFS, fail);
+        }
+		
+		function gotFS(fileSystem) {
+			fileSystem.root.getFile("readme.txt", null, gotFileEntry, fail);
+		}
+		
+		function gotFileEntry(fileEntry) {
+			fileEntry.file(gotFile, fail);
+		}
+		
+        function gotFile(file){
+			readDataUrl(file);
+			readAsText(file);
+		}
+        
+        function readDataUrl(file) {
+            var reader = new FileReader();
+            reader.onloadend = function(evt) {
+                console.log("Read as data URL");
+                console.log(evt.target.result);
+            };
+            reader.readAsDataURL(file);
+        }
+        
+        function readAsText(file) {
+            var reader = new FileReader();
+            reader.onloadend = function(evt) {
+                console.log("Read as text");
+                console.log(evt.target.result);
+            };
+            reader.readAsText(file);
+        }
+        
+        function fail(evt) {
+            console.log(evt.target.error.code);
+        }
+        
+        </script>
+      </head>
+      <body>
+        <h1>Example</h1>
+        <p>Read File</p>
+      </body>
+    </html>
+
+iOS Quirks
+----------
+- __encoding__ parameter is not supported, UTF8 encoding is always used.
\ No newline at end of file
diff --git a/docs/en/1.9.0/cordova/file/filesystem/filesystem.md b/docs/en/1.9.0/cordova/file/filesystem/filesystem.md
new file mode 100644
index 0000000..3ac7e95
--- /dev/null
+++ b/docs/en/1.9.0/cordova/file/filesystem/filesystem.md
@@ -0,0 +1,91 @@
+---
+license: 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.
+---
+
+FileSystem
+==========
+
+This object represents a file system.
+
+Properties
+----------
+
+- __name:__ The name of the file system. _(DOMString)_
+- __root:__ The root directory of the file system. _(DirectoryEntry)_
+
+Details
+-------
+
+The `FileSystem` object represents information about the file system. The name of the file system will be unique across the list of exposed file systems.  The root property contains a `DirectoryEntry` object which represents the root directory of the file system.
+
+Supported Platforms
+-------------------
+
+- Android
+- BlackBerry WebWorks (OS 5.0 and higher)
+- iOS
+- Windows Phone 7 ( Mango )
+
+File System Quick Example
+-------------------------
+
+	function onSuccess(fileSystem) {
+		console.log(fileSystem.name);
+		console.log(fileSystem.root.name);
+	}
+	
+	// request the persistent file system
+	window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, onSuccess, null);
+
+Full Example
+------------
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>File System Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for Cordova to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        // Cordova is ready
+        //
+        function onDeviceReady() {
+			window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, onFileSystemSuccess, fail);
+        }
+
+		function onFileSystemSuccess(fileSystem) {
+			console.log(fileSystem.name);
+			console.log(fileSystem.root.name);
+		}
+		
+		function fail(evt) {
+			console.log(evt.target.error.code);
+		}
+		
+        </script>
+      </head>
+      <body>
+        <h1>Example</h1>
+        <p>File System</p>
+      </body>
+    </html>
diff --git a/docs/en/1.9.0/cordova/file/filetransfer/filetransfer.md b/docs/en/1.9.0/cordova/file/filetransfer/filetransfer.md
new file mode 100644
index 0000000..a354c04
--- /dev/null
+++ b/docs/en/1.9.0/cordova/file/filetransfer/filetransfer.md
@@ -0,0 +1,216 @@
+---
+license: 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.
+---
+
+FileTransfer
+==========
+
+FileTransfer is an object that allows you to upload files to a server or download files from a server.
+
+Properties
+----------
+
+N/A
+
+Methods
+-------
+
+- __upload__: sends a file to a server. 
+- __download__: downloads a file from server.
+
+Details
+-------
+
+The `FileTransfer` object provides a way to upload files to a remote server using an HTTP multi-part POST request.  Both HTTP and HTTPS protocols are supported.  Optional parameters can be specified by passing a FileUploadOptions object to the upload method.  On successful upload, the success callback will be called with a FileUploadResult object.  If an error occurs, the error callback will be invoked with a FileTransferError object.
+It is also possible to download a file from remote and save it on the device (only iOS and Android).
+
+Supported Platforms
+-------------------
+
+- Android
+- BlackBerry WebWorks (OS 5.0 and higher)
+- iOS
+- Windows Phone 7 ( Mango )
+
+upload
+--------------
+
+__Parameters:__
+
+- __filePath__ - Full path of the file on the device
+- __server__ - URL of the server to receive the file
+- __successCallback__ - A callback that is called with a Metadata object. _(Function)_
+- __errorCallback__ - A callback that is called if an error occurs retrieving the Metadata. Invoked with a FileError object. _(Function)_
+- __options__ - Optional parameters such as file name and mimetype
+
+__Quick Example__
+	
+    // !! Assumes variable fileURI contains a valid URI to a  text file on the device
+	
+  	var win = function(r) {
+        console.log("Code = " + r.responseCode);
+        console.log("Response = " + r.response);
+        console.log("Sent = " + r.bytesSent);
+	}
+	
+    var fail = function(error) {
+        alert("An error has occurred: Code = " + error.code);
+        console.log("upload error source " + error.source);
+        console.log("upload error target " + error.target);
+    }
+	
+	var options = new FileUploadOptions();
+	options.fileKey="file";
+	options.fileName=fileURI.substr(fileURI.lastIndexOf('/')+1);
+	options.mimeType="text/plain";
+
+    var params = new Object();
+	params.value1 = "test";
+	params.value2 = "param";
+		
+	options.params = params;
+	
+	var ft = new FileTransfer();
+    ft.upload(fileURI, "http://some.server.com/upload.php", win, fail, options);
+    
+__Full Example__
+
+    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+    <html>
+    <head>
+        <title>File Transfer Example</title>
+    
+        <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
+        <script type="text/javascript" charset="utf-8">
+            
+            // Wait for Cordova to load
+            //
+            document.addEventListener("deviceready", onDeviceReady, false);
+            
+            // Cordova is ready
+            //
+            function onDeviceReady() {
+                
+                // Retrieve image file location from specified source
+                navigator.camera.getPicture(uploadPhoto,
+                                            function(message) { alert('get picture failed'); },
+                                            { quality: 50, 
+                                            destinationType: navigator.camera.DestinationType.FILE_URI,
+                                            sourceType: navigator.camera.PictureSourceType.PHOTOLIBRARY }
+                                            );
+                
+            }
+            
+            function uploadPhoto(imageURI) {
+                var options = new FileUploadOptions();
+                options.fileKey="file";
+                options.fileName=imageURI.substr(imageURI.lastIndexOf('/')+1);
+                options.mimeType="image/jpeg";
+                
+                var params = new Object();
+                params.value1 = "test";
+                params.value2 = "param";
+                
+                options.params = params;
+                
+                var ft = new FileTransfer();
+                ft.upload(imageURI, "http://some.server.com/upload.php", win, fail, options);
+            }
+            
+            function win(r) {
+                console.log("Code = " + r.responseCode);
+                console.log("Response = " + r.response);
+                console.log("Sent = " + r.bytesSent);
+            }
+            
+            function fail(error) {
+                alert("An error has occurred: Code = " + error.code);
+                console.log("upload error source " + error.source);
+                console.log("upload error target " + error.target);
+            }
+            
+            </script>
+    </head>
+    <body>
+        <h1>Example</h1>
+        <p>Upload File</p>
+    </body>
+    </html>
+    
+iOS Quirks
+----------
+
+Setting headers for FileTransfer Upload:
+
+__Quick Example__
+
+    function win(r) {
+        console.log("Code = " + r.responseCode);
+        console.log("Response = " + r.response);
+        console.log("Sent = " + r.bytesSent);
+    }
+    
+    function fail(error) {
+        alert("An error has occurred: Code = " + error.code);
+        console.log("upload error source " + error.source);
+        console.log("upload error target " + error.target);
+    }
+    
+    var uri = "http://some.server.com/upload.php";
+    
+    var options = new FileUploadOptions();
+    options.fileKey="file";
+    options.fileName=fileURI.substr(fileURI.lastIndexOf('/')+1);
+    options.mimeType="text/plain";
+        
+    var params = new Object();
+    params.headers={'headerParam':'headerValue'};
+    
+    options.params = params;
+    
+    var ft = new FileTransfer();
+    ft.upload(fileURI, uri, win, fail, options);    
+
+download
+--------------
+
+__Parameters:__
+
+- __source__ - URL of the server to receive the file
+- __target__ - Full path of the file on the device
+- __successCallback__ - A callback that is called with a FileEntry object. _(Function)_
+- __errorCallback__ - A callback that is called if an error occurs retrieving the Metadata. Invoked with a FileError object. _(Function)_
+
+__Quick Example__
+
+     // !! Assumes variable url contains a valid URI to a file on a server and filePath is a valid path on the device
+
+    var fileTransfer = new FileTransfer();
+    
+    fileTransfer.download(
+        url,
+        filePath,
+        function(entry) {
+            console.log("download complete: " + entry.fullPath);
+        },
+        function(error) {
+            console.log("download error source " + error.source);
+            console.log("download error target " + error.target);
+            console.log("upload error code" + error.code);
+        }
+    );
\ No newline at end of file
diff --git a/docs/en/1.9.0/cordova/file/filetransfererror/filetransfererror.md b/docs/en/1.9.0/cordova/file/filetransfererror/filetransfererror.md
new file mode 100644
index 0000000..a643bf3
--- /dev/null
+++ b/docs/en/1.9.0/cordova/file/filetransfererror/filetransfererror.md
@@ -0,0 +1,43 @@
+---
+license: 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.
+---
+
+FileTransferError
+========
+
+A `FileTransferError` object is returned via the error callback when an error occurs.
+
+Properties
+----------
+
+- __code__ One of the predefined error codes listed below. (Number)
+- __source__ URI to the source (String)
+- __target__ URI to the target (String)
+- __http_status__ HTTP status code.  This attribute is only available when a response code is received from the HTTP connection. (Number)
+
+Constants
+---------
+
+- `FileTransferError.FILE_NOT_FOUND_ERR`
+- `FileTransferError.INVALID_URL_ERR`
+- `FileTransferError.CONNECTION_ERR`
+
+Description
+-----------
+
+The `FileTransferError` object is returned via the error callback when an error occurs when uploading or downloading a file.
diff --git a/docs/en/1.9.0/cordova/file/fileuploadoptions/fileuploadoptions.md b/docs/en/1.9.0/cordova/file/fileuploadoptions/fileuploadoptions.md
new file mode 100644
index 0000000..440fbc2
--- /dev/null
+++ b/docs/en/1.9.0/cordova/file/fileuploadoptions/fileuploadoptions.md
@@ -0,0 +1,50 @@
+---
+license: 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.
+---
+
+FileUploadOptions
+========
+
+A `FileUploadOptions` object can be passed to the FileTransfer objects upload method in order to specify additional parameters to the upload script.
+
+Properties
+----------
+
+- __fileKey:__ The name of the form element.  If not set defaults to "file". (DOMString)
+- __fileName:__ The file name you want the file to be saved as on the server.  If not set defaults to "image.jpg". (DOMString)
+- __mimeType:__ The mime type of the data you are uploading.  If not set defaults to "image/jpeg". (DOMString)
+- __params:__ A set of optional key/value pairs to be passed along in the HTTP request. (Object)
+- __chunkedMode:__ Should the data be uploaded in chunked streaming mode. If not set defaults to "true". (Boolean)
+
+
+Description
+-----------
+
+A `FileUploadOptions` object can be passed to the FileTransfer objects upload method in order to specify additional parameters to the upload script.
+
+iOS Quirk
+---------
+
+- __chunkedMode:__
+    This parameter is ignored on iOS.
+
+WP7 Quirk
+---------
+
+- __chunkedMode:__
+    This parameter is ignored on WP7.    
diff --git a/docs/en/1.9.0/cordova/file/fileuploadresult/fileuploadresult.md b/docs/en/1.9.0/cordova/file/fileuploadresult/fileuploadresult.md
new file mode 100644
index 0000000..f21d036
--- /dev/null
+++ b/docs/en/1.9.0/cordova/file/fileuploadresult/fileuploadresult.md
@@ -0,0 +1,40 @@
+---
+license: 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.
+---
+
+FileUploadResult
+========
+
+A `FileUploadResult` object is returned via the success callback of the FileTransfer upload method.
+
+Properties
+----------
+
+- __bytesSent:__ The number of bytes sent to the server as part of the upload. (long)
+- __responseCode:__ The HTTP response code returned by the server. (long)
+- __response:__ The HTTP response returned by the server. (DOMString)
+
+Description
+-----------
+
+The `FileUploadResult` object is returned via the success callback of the FileTransfer upload method.
+
+iOS Quirks
+----------
+- iOS does not include values for responseCode nor bytesSent in the success callback FileUploadResult object. 
+
diff --git a/docs/en/1.9.0/cordova/file/filewriter/filewriter.md b/docs/en/1.9.0/cordova/file/filewriter/filewriter.md
new file mode 100644
index 0000000..f54e869
--- /dev/null
+++ b/docs/en/1.9.0/cordova/file/filewriter/filewriter.md
@@ -0,0 +1,194 @@
+---
+license: 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.
+---
+
+FileWriter
+==========
+
+FileWriter is an object that allows one to write a file.
+
+Properties
+----------
+
+- __readyState:__ One of the three states the reader can be in INIT, WRITING or DONE.
+- __fileName:__ The name of the file to be written. _(DOMString)_
+- __length:__ The length of the file to be written. _(long)_
+- __position:__ The current position of the file pointer. _(long)_
+- __error:__ An object containing errors. _(FileError)_
+- __onwritestart:__ Called when the write starts. . _(Function)_
+- __onprogress:__ Called while writing the file, reports progress (progess.loaded/progress.total). _(Function)_ -NOT SUPPORTED
+- __onwrite:__ Called when the request has completed successfully.  _(Function)_
+- __onabort:__ Called when the write has been aborted. For instance, by invoking the abort() method. _(Function)_
+- __onerror:__ Called when the write has failed. _(Function)_
+- __onwriteend:__ Called when the request has completed (either in success or failure).  _(Function)_
+
+Methods
+-------
+
+- __abort__: Aborts writing file. 
+- __seek__: Moves the file pointer to the byte specified.
+- __truncate__: Shortens the file to the length specified.
+- __write__: Writes data to the file with a UTF-8 encoding.
+
+Details
+-------
+
+The `FileWriter` object is a way to write files to the device file system (UTF-8 encoded).  Users register their own event listeners to receive the writestart, progress, write, writeend, error and abort events.
+
+A FileWriter is created for a single file. You can use it to write to a file multiple times. The FileWriter maintains the file's position and length attributes, so you can seek and write anywhere in the file. By default, the FileWriter writes to the beginning of the file (will overwrite existing data). Set the optional append boolean to true in the FileWriter's constructor to begin writing to the end of the file.
+
+Supported Platforms
+-------------------
+
+- Android
+- BlackBerry WebWorks (OS 5.0 and higher)
+- iOS
+- Windows Phone 7 ( Mango )
+
+Seek Quick Example
+------------------------------
+
+	function win(writer) {
+		// fast forwards file pointer to end of file
+		writer.seek(writer.length);	
+	};
+
+	var fail = function(evt) {
+    	console.log(error.code);
+	};
+	
+    entry.createWriter(win, fail);
+
+Truncate Quick Example
+--------------------------
+
+	function win(writer) {
+		writer.truncate(10);	
+	};
+
+	var fail = function(evt) {
+    	console.log(error.code);
+	};
+	
+    entry.createWriter(win, fail);
+
+Write Quick Example
+-------------------	
+
+	function win(writer) {
+		writer.onwrite = function(evt) {
+        	console.log("write success");
+        };
+		writer.write("some sample text");
+	};
+
+	var fail = function(evt) {
+    	console.log(error.code);
+	};
+	
+    entry.createWriter(win, fail);
+
+Append Quick Example
+--------------------	
+
+	function win(writer) {
+		writer.onwrite = function(evt) {
+        	console.log("write success");
+        };
+        writer.seek(writer.length);
+		writer.write("appended text");
+	};
+
+	var fail = function(evt) {
+    	console.log(error.code);
+	};
+	
+    entry.createWriter(win, fail);
+	
+Abort Quick Example
+-------------------
+
+	function win(writer) {
+		writer.onwrite = function(evt) {
+        	console.log("write success");
+        };
+		writer.write("some sample text");
+		writer.abort();
+	};
+
+	var fail = function(evt) {
+    	console.log(error.code);
+	};
+	
+    entry.createWriter(win, fail);
+
+Full Example
+------------
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>FileWriter Example</title>
+    
+        <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
+        <script type="text/javascript" charset="utf-8">
+    
+        // Wait for Cordova to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+    
+        // Cordova is ready
+        //
+        function onDeviceReady() {
+            window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, gotFS, fail);
+        }
+    
+        function gotFS(fileSystem) {
+            fileSystem.root.getFile("readme.txt", {create: true, exclusive: false}, gotFileEntry, fail);
+        }
+    
+        function gotFileEntry(fileEntry) {
+            fileEntry.createWriter(gotFileWriter, fail);
+        }
+    
+        function gotFileWriter(writer) {
+            writer.onwriteend = function(evt) {
+                console.log("contents of file now 'some sample text'");
+                writer.truncate(11);  
+                writer.onwriteend = function(evt) {
+                    console.log("contents of file now 'some sample'");
+                    writer.seek(4);
+                    writer.write(" different text");
+                    writer.onwriteend = function(evt){
+                        console.log("contents of file now 'some different text'");
+                    }
+                };
+            };
+            writer.write("some sample text");
+        }
+    
+        function fail(error) {
+            console.log(error.code);
+        }
+    
+        </script>
+      </head>
+      <body>
+        <h1>Example</h1>
+        <p>Write File</p>
+      </body>
+    </html>
diff --git a/docs/en/1.9.0/cordova/file/flags/flags.md b/docs/en/1.9.0/cordova/file/flags/flags.md
new file mode 100644
index 0000000..054c2fc
--- /dev/null
+++ b/docs/en/1.9.0/cordova/file/flags/flags.md
@@ -0,0 +1,46 @@
+---
+license: 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.
+---
+
+Flags
+=====
+
+This object is used to supply arguments to the `DirectoryEntry` __getFile__ and __getDirectory__ methods, which look up or create files and directories, respectively.
+
+Properties
+----------
+
+- __create:__ Used to indicate that the file or directory should be created, if it does not exist. _(boolean)_
+- __exclusive:__ By itself, exclusive has no effect. Used with create, it causes the file or directory creation to fail if the target path already exists. _(boolean)_
+
+Supported Platforms
+-------------------
+
+- Android
+- BlackBerry WebWorks (OS 5.0 and higher)
+- iOS
+- Windows Phone 7 ( Mango )
+
+Quick Example
+-------------
+
+    // Get the data directory, creating it if it doesn't exist.
+    dataDir = fileSystem.root.getDirectory("data", {create: true});
+
+    // Create the lock file, if and only if it doesn't exist.
+    lockFile = dataDir.getFile("lockfile.txt", {create: true, exclusive: true});
diff --git a/docs/en/1.9.0/cordova/file/localfilesystem/localfilesystem.md b/docs/en/1.9.0/cordova/file/localfilesystem/localfilesystem.md
new file mode 100644
index 0000000..44ecfdb
--- /dev/null
+++ b/docs/en/1.9.0/cordova/file/localfilesystem/localfilesystem.md
@@ -0,0 +1,110 @@
+---
+license: 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.
+---
+
+LocalFileSystem
+===============
+
+This object provides a way to obtain root file systems.
+
+Methods
+----------
+
+- __requestFileSystem:__ Requests a filesystem. _(Function)_
+- __resolveLocalFileSystemURI:__ Retrieve a DirectoryEntry or FileEntry using local URI. _(Function)_
+
+Constants
+---------
+
+- `LocalFileSystem.PERSISTENT`: Used for storage that should not be removed by the user agent without application or user permission.
+- `LocalFileSystem.TEMPORARY`: Used for storage with no guarantee of persistence.
+
+Details
+-------
+
+The `LocalFileSystem` object methods are defined on the __window__ object.
+
+Supported Platforms
+-------------------
+
+- Android
+- BlackBerry WebWorks (OS 5.0 and higher)
+- iOS
+- Windows Phone 7 ( Mango )
+
+Request File System Quick Example
+---------------------------------
+
+	function onSuccess(fileSystem) {
+		console.log(fileSystem.name);
+	}
+	
+	// request the persistent file system
+	window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, onSuccess, onError);
+
+Resolve Local File System URI Quick Example
+-------------------------------------------
+
+	function onSuccess(fileEntry) {
+		console.log(fileEntry.name);
+	}
+
+	window.resolveLocalFileSystemURI("file:///example.txt", onSuccess, onError);
+	
+Full Example
+------------
+
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>Local File System Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for Cordova to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        // Cordova is ready
+        //
+        function onDeviceReady() {
+			window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, onFileSystemSuccess, fail);
+			window.resolveLocalFileSystemURI("file:///example.txt", onResolveSuccess, fail);
+        }
+
+		function onFileSystemSuccess(fileSystem) {
+			console.log(fileSystem.name);
+		}
+
+		function onResolveSuccess(fileEntry) {
+			console.log(fileEntry.name);
+		}
+		
+		function fail(evt) {
+			console.log(evt.target.error.code);
+		}
+		
+        </script>
+      </head>
+      <body>
+        <h1>Example</h1>
+        <p>Local File System</p>
+      </body>
+    </html>
diff --git a/docs/en/1.9.0/cordova/file/metadata/metadata.md b/docs/en/1.9.0/cordova/file/metadata/metadata.md
new file mode 100644
index 0000000..0bc75e5
--- /dev/null
+++ b/docs/en/1.9.0/cordova/file/metadata/metadata.md
@@ -0,0 +1,51 @@
+---
+license: 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.
+---
+
+Metadata
+==========
+
+This interface supplies information about the state of a file or directory.
+
+Properties
+----------
+
+- __modificationTime:__ This is the time at which the file or directory was last modified. _(Date)_
+
+Details
+-------
+
+The `Metadata` object represents information about the state of a file or directory.  You can get an instance of a Metadata object by calling the __getMetadata__ method of a `DirectoryEntry` or `FileEntry` object.
+
+Supported Platforms
+-------------------
+
+- Android
+- BlackBerry WebWorks (OS 5.0 and higher)
+- iOS
+- Windows Phone 7 ( Mango )
+
+Quick Example
+-------------
+
+	function win(metadata) {
+		console.log("Last Modified: " + metadata.modificationTime);
+	}
+	
+	// Request the metadata object for this entry
+	entry.getMetadata(win, null);
\ No newline at end of file
diff --git a/docs/en/1.9.0/cordova/geolocation/Coordinates/coordinates.md b/docs/en/1.9.0/cordova/geolocation/Coordinates/coordinates.md
new file mode 100644
index 0000000..ecf5e59
--- /dev/null
+++ b/docs/en/1.9.0/cordova/geolocation/Coordinates/coordinates.md
@@ -0,0 +1,125 @@
+---
+license: 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.
+---
+
+Coordinates
+===========
+
+A set of properties that describe the geographic coordinates of a position.
+
+Properties
+----------
+
+* __latitude__: Latitude in decimal degrees. _(Number)_
+* __longitude__: Longitude in decimal degrees. _(Number)_
+* __altitude__: Height of the position in meters above the ellipsoid. _(Number)_
+* __accuracy__: Accuracy level of the latitude and longitude coordinates in meters. _(Number)_
+* __altitudeAccuracy__: Accuracy level of the altitude coordinate in meters. _(Number)_
+* __heading__: Direction of travel, specified in degrees counting clockwise relative to the true north. _(Number)_
+* __speed__: Current ground speed of the device, specified in meters per second. _(Number)_
+
+Description
+-----------
+
+The `Coordinates` object is created and populated by Cordova, and attached to the `Position` object. The `Position` object is then returned to the user through a callback function.
+
+Supported Platforms
+-------------------
+
+- Android
+- BlackBerry WebWorks (OS 5.0 and higher)
+- iOS
+- Windows Phone 7 ( Mango )
+- Bada 1.2 & 2.x
+- webOS
+
+Quick Example
+-------------
+
+    // onSuccess Callback
+    //
+    var onSuccess = function(position) {
+        alert('Latitude: '          + position.coords.latitude          + '\n' +
+              'Longitude: '         + position.coords.longitude         + '\n' +
+              'Altitude: '          + position.coords.altitude          + '\n' +
+              'Accuracy: '          + position.coords.accuracy          + '\n' +
+              'Altitude Accuracy: ' + position.coords.altitudeAccuracy  + '\n' +
+              'Heading: '           + position.coords.heading           + '\n' +
+              'Speed: '             + position.coords.speed             + '\n' +
+              'Timestamp: '         + position.timestamp                + '\n');
+    };
+
+    // onError Callback
+    //
+    var onError = function() {
+        alert('onError!');
+    };
+
+    navigator.geolocation.getCurrentPosition(onSuccess, onError);
+
+Full Example
+------------
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>Geolocation Position Example</title>
+        <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Set an event to wait for Cordova to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        // Cordova is loaded and Ready
+        //
+        function onDeviceReady() {
+            navigator.geolocation.getCurrentPosition(onSuccess, onError);
+        }
+    
+        // Display `Position` properties from the geolocation
+        //
+        function onSuccess(position) {
+            var div = document.getElementById('myDiv');
+        
+            div.innerHTML = 'Latitude: '             + position.coords.latitude  + '<br/>' +
+                            'Longitude: '            + position.coords.longitude + '<br/>' +
+                            'Altitude: '             + position.coords.altitude  + '<br/>' +
+                            'Accuracy: '             + position.coords.accuracy  + '<br/>' +
+                            'Altitude Accuracy: '    + position.coords.altitudeAccuracy  + '<br/>' +
+                            'Heading: '              + position.coords.heading   + '<br/>' +
+                            'Speed: '                + position.coords.speed     + '<br/>';
+        }
+    
+        // Show an alert if there is a problem getting the geolocation
+        //
+        function onError() {
+            alert('onError!');
+        }
+
+        </script>
+      </head>
+      <body>
+        <div id="myDiv"></div>
+      </body>
+    </html>
+    
+Android Quirks
+-------------
+
+__altitudeAccuracy:__ This property is not support by Android devices, it will always return null.
diff --git a/docs/en/1.9.0/cordova/geolocation/Position/position.md b/docs/en/1.9.0/cordova/geolocation/Position/position.md
new file mode 100644
index 0000000..ef27bcb
--- /dev/null
+++ b/docs/en/1.9.0/cordova/geolocation/Position/position.md
@@ -0,0 +1,119 @@
+---
+license: 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.
+---
+
+Position
+========
+
+Contains `Position` coordinates and timestamp, created by the geolocation API.
+
+Properties
+----------
+
+- __coords:__ A set of geographic coordinates. _(Coordinates)_
+- __timestamp:__ Creation timestamp for `coords`. _(Date)_
+
+Description
+-----------
+
+The `Position` object is created and populated by Cordova, and returned to the user through a callback function.
+
+Supported Platforms
+-------------------
+
+- Android
+- BlackBerry WebWorks (OS 5.0 and higher)
+- iOS
+- Windows Phone 7 ( Mango )
+- Bada 1.2 & 2.x
+- webOS
+
+Quick Example
+-------------
+
+    // onSuccess Callback
+    //
+    var onSuccess = function(position) {
+        alert('Latitude: '          + position.coords.latitude          + '\n' +
+              'Longitude: '         + position.coords.longitude         + '\n' +
+              'Altitude: '          + position.coords.altitude          + '\n' +
+              'Accuracy: '          + position.coords.accuracy          + '\n' +
+              'Altitude Accuracy: ' + position.coords.altitudeAccuracy  + '\n' +
+              'Heading: '           + position.coords.heading           + '\n' +
+              'Speed: '             + position.coords.speed             + '\n' +
+              'Timestamp: '         + position.timestamp                + '\n');
+    };
+
+    // onError Callback receives a PositionError object
+    //
+    function onError(error) {
+        alert('code: '    + error.code    + '\n' +
+              'message: ' + error.message + '\n');
+    }
+
+    navigator.geolocation.getCurrentPosition(onSuccess, onError);
+
+Full Example
+------------
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>Device Properties Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for Cordova to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        // Cordova is ready
+        //
+        function onDeviceReady() {
+            navigator.geolocation.getCurrentPosition(onSuccess, onError);
+        }
+    
+        // onSuccess Geolocation
+        //
+        function onSuccess(position) {
+            var element = document.getElementById('geolocation');
+            element.innerHTML = 'Latitude: '           + position.coords.latitude              + '<br />' +
+                                'Longitude: '          + position.coords.longitude             + '<br />' +
+                                'Altitude: '           + position.coords.altitude              + '<br />' +
+                                'Accuracy: '           + position.coords.accuracy              + '<br />' +
+                                'Altitude Accuracy: '  + position.coords.altitudeAccuracy      + '<br />' +
+                                'Heading: '            + position.coords.heading               + '<br />' +
+                                'Speed: '              + position.coords.speed                 + '<br />' +
+                                'Timestamp: '          + 
+     position.timestamp                    + '<br />';
+        }
+    
+	    // onError Callback receives a PositionError object
+	    //
+	    function onError(error) {
+	        alert('code: '    + error.code    + '\n' +
+	              'message: ' + error.message + '\n');
+	    }
+
+        </script>
+      </head>
+      <body>
+        <p id="geolocation">Finding geolocation...</p>
+      </body>
+    </html>
diff --git a/docs/en/1.9.0/cordova/geolocation/PositionError/positionError.md b/docs/en/1.9.0/cordova/geolocation/PositionError/positionError.md
new file mode 100755
index 0000000..5fda2f5
--- /dev/null
+++ b/docs/en/1.9.0/cordova/geolocation/PositionError/positionError.md
@@ -0,0 +1,59 @@
+---
+license: 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.
+---
+
+PositionError
+========
+
+A `PositionError` object is returned to the `geolocationError` callback when an error occurs.
+
+Properties
+----------
+
+- __code:__ One of the predefined error codes listed below.
+- __message:__ Error message describing the details of the error encountered.
+
+Constants
+---------
+
+- `PositionError.PERMISSION_DENIED`
+- `PositionError.POSITION_UNAVAILABLE`
+- `PositionError.TIMEOUT`
+
+Description
+-----------
+
+The `PositionError` object is returned to the user through the `geolocationError` callback function when an error occurs with geolocation.
+
+### `PositionError.PERMISSION_DENIED`
+
+Returned when the user does not allow your application to retrieve
+position information. This is dependent on the platform.
+
+### `PositionError.POSITION_UNAVAILABLE`
+
+Returned when the device was unable to retrieve a position. In general
+this means the device has no network connectivity and/or cannot get a
+satellite fix.
+
+### `PositionError.TIMEOUT`
+
+Returned when the device was unable to retrieve a position within the
+time specified in the `geolocationOptions`' `timeout` property. When using
+in conjunction with `geolocation.watchPosition`, this error could be
+called into the `geolocationError` callback every `timeout` milliseconds.
diff --git a/docs/en/1.9.0/cordova/geolocation/geolocation.clearWatch.md b/docs/en/1.9.0/cordova/geolocation/geolocation.clearWatch.md
new file mode 100644
index 0000000..11f548e
--- /dev/null
+++ b/docs/en/1.9.0/cordova/geolocation/geolocation.clearWatch.md
@@ -0,0 +1,117 @@
+---
+license: 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.
+---
+
+geolocation.clearWatch
+======================
+
+Stop watching for changes to the device's location referenced by the `watchID` parameter.
+
+    navigator.geolocation.clearWatch(watchID);
+
+Parameters
+----------
+
+- __watchID:__ The id of the `watchPosition` interval to clear. (String)
+
+Description
+-----------
+
+`geolocation.clearWatch` stops watching changes to the device's location by clearing the `geolocation.watchPosition` referenced by `watchID`.
+
+Supported Platforms
+-------------------
+
+- Android
+- BlackBerry WebWorks (OS 5.0 and higher)
+- iOS
+- Windows Phone 7 ( Mango )
+- Bada 1.2 & 2.x
+- webOS
+
+Quick Example
+-------------
+
+    // Options: watch for changes in position, and use the most
+    // accurate position acquisition method available.
+    //
+    var watchID = navigator.geolocation.watchPosition(onSuccess, onError, { enableHighAccuracy: true });
+
+    // ...later on...
+
+    navigator.geolocation.clearWatch(watchID);
+
+
+Full Example
+------------
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>Device Properties Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for Cordova to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        var watchID = null;
+
+        // Cordova is ready
+        //
+        function onDeviceReady() {
+            // Get the most accurate position updates available on the
+            // device.
+            var options = { enableHighAccuracy: true };
+            watchID = navigator.geolocation.watchPosition(onSuccess, onError, options);
+        }
+    
+        // onSuccess Geolocation
+        //
+        function onSuccess(position) {
+            var element = document.getElementById('geolocation');
+            element.innerHTML = 'Latitude: '  + position.coords.latitude      + '<br />' +
+                                'Longitude: ' + position.coords.longitude     + '<br />' +
+                                '<hr />'      + element.innerHTML;
+        }
+
+        // clear the watch that was started earlier
+        // 
+        function clearWatch() {
+            if (watchID != null) {
+                navigator.geolocation.clearWatch(watchID);
+                watchID = null;
+            }
+        }
+    
+	    // onError Callback receives a PositionError object
+	    //
+	    function onError(error) {
+	      alert('code: '    + error.code    + '\n' +
+	            'message: ' + error.message + '\n');
+	    }
+
+        </script>
+      </head>
+      <body>
+        <p id="geolocation">Watching geolocation...</p>
+    	<button onclick="clearWatch();">Clear Watch</button>     
+      </body>
+    </html>
diff --git a/docs/en/1.9.0/cordova/geolocation/geolocation.getCurrentPosition.md b/docs/en/1.9.0/cordova/geolocation/geolocation.getCurrentPosition.md
new file mode 100644
index 0000000..9ab9631
--- /dev/null
+++ b/docs/en/1.9.0/cordova/geolocation/geolocation.getCurrentPosition.md
@@ -0,0 +1,126 @@
+---
+license: 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.
+---
+
+geolocation.getCurrentPosition
+==============================
+
+Returns the device's current position as a `Position` object.
+
+    navigator.geolocation.getCurrentPosition(geolocationSuccess, 
+                                             [geolocationError], 
+                                             [geolocationOptions]);
+
+Parameters
+----------
+
+- __geolocationSuccess__: The callback that is called with the current position.
+- __geolocationError__: (Optional) The callback that is called if there was an error.
+- __geolocationOptions__: (Optional) The geolocation options.
+
+Description
+-----------
+
+`geolocation.getCurrentPositon` is an asynchronous function. It returns the device's current position to the `geolocationSuccess` callback with a `Position` object as the parameter.  If there is an error, the `geolocationError` callback is invoked with a `PositionError` object.
+
+
+Supported Platforms
+-------------------
+
+- Android
+- BlackBerry WebWorks (OS 5.0 and higher)
+- iOS
+- Windows Phone 7 ( Mango )
+- Bada 1.2 & 2.x
+- webOS
+    
+Quick Example
+-------------
+
+    // onSuccess Callback
+    //   This method accepts a `Position` object, which contains
+    //   the current GPS coordinates
+    //
+    var onSuccess = function(position) {
+        alert('Latitude: '          + position.coords.latitude          + '\n' +
+              'Longitude: '         + position.coords.longitude         + '\n' +
+              'Altitude: '          + position.coords.altitude          + '\n' +
+              'Accuracy: '          + position.coords.accuracy          + '\n' +
+              'Altitude Accuracy: ' + position.coords.altitudeAccuracy  + '\n' +
+              'Heading: '           + position.coords.heading           + '\n' +
+              'Speed: '             + position.coords.speed             + '\n' +
+              'Timestamp: '         + position.timestamp                + '\n');
+    };
+
+    // onError Callback receives a PositionError object
+    //
+    function onError(error) {
+        alert('code: '    + error.code    + '\n' +
+              'message: ' + error.message + '\n');
+    }
+
+    navigator.geolocation.getCurrentPosition(onSuccess, onError);
+
+Full Example
+------------
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>Device Properties Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for Cordova to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        // Cordova is ready
+        //
+        function onDeviceReady() {
+            navigator.geolocation.getCurrentPosition(onSuccess, onError);
+        }
+    
+        // onSuccess Geolocation
+        //
+        function onSuccess(position) {
+            var element = document.getElementById('geolocation');
+            element.innerHTML = 'Latitude: '           + position.coords.latitude              + '<br />' +
+                                'Longitude: '          + position.coords.longitude             + '<br />' +
+                                'Altitude: '           + position.coords.altitude              + '<br />' +
+                                'Accuracy: '           + position.coords.accuracy              + '<br />' +
+                                'Altitude Accuracy: '  + position.coords.altitudeAccuracy      + '<br />' +
+                                'Heading: '            + position.coords.heading               + '<br />' +
+                                'Speed: '              + position.coords.speed                 + '<br />' +
+                                'Timestamp: '          +                                   position.timestamp          + '<br />';
+        }
+    
+	    // onError Callback receives a PositionError object
+	    //
+	    function onError(error) {
+	        alert('code: '    + error.code    + '\n' +
+	              'message: ' + error.message + '\n');
+	    }
+
+        </script>
+      </head>
+      <body>
+        <p id="geolocation">Finding geolocation...</p>
+      </body>
+    </html>
diff --git a/docs/en/1.9.0/cordova/geolocation/geolocation.md b/docs/en/1.9.0/cordova/geolocation/geolocation.md
new file mode 100644
index 0000000..b638662
--- /dev/null
+++ b/docs/en/1.9.0/cordova/geolocation/geolocation.md
@@ -0,0 +1,104 @@
+---
+license: 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.
+---
+
+Geolocation
+===========
+
+> The `geolocation` object provides access to the device's GPS sensor.
+
+Geolocation provides location information for the device, such as latitude and longitude. Common sources of location information include Global Positioning System (GPS) and location inferred from network signals such as IP address, RFID, WiFi and Bluetooth MAC addresses, and GSM/CDMA cell IDs. No guarantee is given that the API returns the device's actual location.
+
+This API is based on the [W3C Geolocation API Specification](http://dev.w3.org/geo/api/spec-source.html).  Some devices (Android, BlackBerry, Bada, Windows Phone 7 and webOS, to be specific) already provide an implementation of this spec.  For those devices, the built-in support is used instead of replacing it with Cordova's implementation.  For devices that don't have geolocation support, the Cordova implementation adheres to the W3C specification.
+
+Methods
+-------
+
+- geolocation.getCurrentPosition
+- geolocation.watchPosition
+- geolocation.clearWatch
+
+
+Arguments
+---------
+
+- geolocationSuccess
+- geolocationError
+- geolocationOptions
+
+Objects (Read-Only)
+-------------------
+
+- Position
+- PositionError
+- Coordinates
+
+Permissions
+-----------
+
+### Android
+
+#### app/res/xml/plugins.xml
+
+    <plugin name="Geolocation" value="org.apache.cordova.GeoBroker" />
+
+#### app/AndroidManifest.xml
+
+    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
+    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
+    <uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS" />
+
+### Bada
+
+    No permissions are required.
+
+### BlackBerry WebWorks
+
+#### www/plugins.xml
+
+    <plugin name="Geolocation" value="org.apache.cordova.geolocation.Geolocation" />
+
+#### www/config.xml
+
+    <rim:permissions>
+        <rim:permit>read_geolocation</rim:permit>
+    </rim:permissions>
+
+### iOS
+
+#### App/Supporting Files/Cordova.plist
+
+    <key>Plugins</key>
+    <dict>
+        <key>Geolocation</key>
+        <string>CDVLocation</string>
+    </dict>
+
+### webOS
+
+    No permissions are required.
+
+### Windows Phone
+
+#### Properties/WPAppManifest.xml
+
+    <Capabilities>
+        <Capability Name="ID_CAP_LOCATION" />
+    </Capabilities>
+
+Reference: [Application Manifest for Windows Phone](http://msdn.microsoft.com/en-us/library/ff769509%28v=vs.92%29.aspx)
diff --git a/docs/en/1.9.0/cordova/geolocation/geolocation.watchPosition.md b/docs/en/1.9.0/cordova/geolocation/geolocation.watchPosition.md
new file mode 100644
index 0000000..1ea4a78
--- /dev/null
+++ b/docs/en/1.9.0/cordova/geolocation/geolocation.watchPosition.md
@@ -0,0 +1,128 @@
+---
+license: 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.
+---
+
+geolocation.watchPosition
+=========================
+
+Watches for changes to the device's current position.
+
+    var watchId = navigator.geolocation.watchPosition(geolocationSuccess,
+                                                      [geolocationError],
+                                                      [geolocationOptions]);
+
+Parameters
+----------
+
+- __geolocationSuccess__: The callback that is called with the current position.
+- __geolocationError__: (Optional) The callback that is called if there was an error.
+- __geolocationOptions__: (Optional) The geolocation options.
+
+Returns
+-------
+
+- __String__: returns a watch id that references the watch position interval. The watch id should be used with `geolocation.clearWatch` to stop watching for changes in position.
+
+Description
+-----------
+
+`geolocation.watchPosition` is an asynchronous function. It returns the device's current position when a change in position has been detected.  When the device has retrieved a new location, the `geolocationSuccess` callback is invoked with a `Position` object as the parameter.  If there is an error, the `geolocationError` callback is invoked with a `PositionError` object.
+
+Supported Platforms
+-------------------
+
+- Android
+- BlackBerry WebWorks (OS 5.0 and higher)
+- iOS
+- Windows Phone 7 ( Mango )
+- Bada 1.2 & 2.x
+- webOS
+
+Quick Example
+-------------
+
+    // onSuccess Callback
+    //   This method accepts a `Position` object, which contains
+    //   the current GPS coordinates
+    //
+    function onSuccess(position) {
+        var element = document.getElementById('geolocation');
+        element.innerHTML = 'Latitude: '  + position.coords.latitude      + '<br />' +
+                            'Longitude: ' + position.coords.longitude     + '<br />' +
+                            '<hr />'      + element.innerHTML;
+    }
+
+    // onError Callback receives a PositionError object
+    //
+    function onError(error) {
+        alert('code: '    + error.code    + '\n' +
+              'message: ' + error.message + '\n');
+    }
+
+    // Options: throw an error if no update is received every 30 seconds.
+    //
+    var watchID = navigator.geolocation.watchPosition(onSuccess, onError, { timeout: 30000 });
+    
+
+Full Example
+------------
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>Device Properties Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for Cordova to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        var watchID = null;
+
+        // Cordova is ready
+        //
+        function onDeviceReady() {
+            // Throw an error if no update is received every 30 seconds
+            var options = { timeout: 30000 };
+            watchID = navigator.geolocation.watchPosition(onSuccess, onError, options);
+        }
+    
+        // onSuccess Geolocation
+        //
+        function onSuccess(position) {
+            var element = document.getElementById('geolocation');
+            element.innerHTML = 'Latitude: '  + position.coords.latitude      + '<br />' +
+                                'Longitude: ' + position.coords.longitude     + '<br />' +
+                                '<hr />'      + element.innerHTML;
+        }
+    
+	    // onError Callback receives a PositionError object
+	    //
+	    function onError(error) {
+	        alert('code: '    + error.code    + '\n' +
+	              'message: ' + error.message + '\n');
+	    }
+
+        </script>
+      </head>
+      <body>
+        <p id="geolocation">Watching geolocation...</p>
+      </body>
+    </html>
diff --git a/docs/en/1.9.0/cordova/geolocation/parameters/geolocation.options.md b/docs/en/1.9.0/cordova/geolocation/parameters/geolocation.options.md
new file mode 100644
index 0000000..d822d24
--- /dev/null
+++ b/docs/en/1.9.0/cordova/geolocation/parameters/geolocation.options.md
@@ -0,0 +1,41 @@
+---
+license: 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.
+---
+
+geolocationOptions
+==================
+
+Optional parameters to customize the retrieval of the geolocation
+`Position`.
+
+    { maximumAge: 3000, timeout: 5000, enableHighAccuracy: true };
+
+Options
+-------
+
+- __enableHighAccuracy:__ Provides a hint that the application would like to receive the best possible results. By default, the device will attempt to retrieve a `Position` using network-based methods. Setting this property to `true` tells the framework to use more accurate methods, such as satellite positioning. _(Boolean)_
+- __timeout:__ The maximum length of time (milliseconds) that is allowed to pass from the call to `geolocation.getCurrentPosition` or `geolocation.watchPosition` until the corresponding `geolocationSuccess` callback is invoked. If the `geolocationSuccess` callback is not invoked within this time, the `geolocationError` callback will be invoked with a `PositionError.TIMEOUT` error code. NOTE: when used in conjunction with `geolocation.watchPosition`, the `geolocationError` callback could be called on an interval every `timeout` milliseconds! _(Number)_
+- __maximumAge:__ Accept a cached position whose age is no greater than the specified time in milliseconds. _(Number)_
+
+Android Quirks
+--------------
+
+The Android 2.x simulators will not return a geolocation result unless the enableHighAccuracy option is set to true.
+
+    { enableHighAccuracy: true }
+
diff --git a/docs/en/1.9.0/cordova/geolocation/parameters/geolocationError.md b/docs/en/1.9.0/cordova/geolocation/parameters/geolocationError.md
new file mode 100644
index 0000000..c0091a0
--- /dev/null
+++ b/docs/en/1.9.0/cordova/geolocation/parameters/geolocationError.md
@@ -0,0 +1,32 @@
+---
+license: 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.
+---
+
+geolocationError
+================
+
+The user's callback function that is called when there is an error for geolocation functions.
+
+    function(error) {
+        // Handle the error
+    }
+
+Parameters
+----------
+
+- __error:__ The error returned by the device. (`PositionError`)
diff --git a/docs/en/1.9.0/cordova/geolocation/parameters/geolocationSuccess.md b/docs/en/1.9.0/cordova/geolocation/parameters/geolocationSuccess.md
new file mode 100644
index 0000000..b70a579
--- /dev/null
+++ b/docs/en/1.9.0/cordova/geolocation/parameters/geolocationSuccess.md
@@ -0,0 +1,46 @@
+---
+license: 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.
+---
+
+geolocationSuccess
+==================
+
+The user's callback function that is called when a geolocation position becomes available (when using with `geolocation.getCurrentPosition`), or when the position changes (when using with `geolocation.watchPosition`).
+
+    function(position) {
+        // Do something
+    }
+
+Parameters
+----------
+
+- __position:__ The geolocation position returned by the device. (`Position`)
+
+Example
+-------
+
+    function geolocationSuccess(position) {
+        alert('Latitude: '          + position.coords.latitude          + '\n' +
+              'Longitude: '         + position.coords.longitude         + '\n' +
+              'Altitude: '          + position.coords.altitude          + '\n' +
+              'Accuracy: '          + position.coords.accuracy          + '\n' +
+              'Altitude Accuracy: ' + position.coords.altitudeAccuracy  + '\n' +
+              'Heading: '           + position.coords.heading           + '\n' +
+              'Speed: '             + position.coords.speed             + '\n' +
+              'Timestamp: '         + position.timestamp                + '\n');
+    }
diff --git a/docs/en/1.9.0/cordova/media/MediaError/mediaError.md b/docs/en/1.9.0/cordova/media/MediaError/mediaError.md
new file mode 100644
index 0000000..ab79258
--- /dev/null
+++ b/docs/en/1.9.0/cordova/media/MediaError/mediaError.md
@@ -0,0 +1,44 @@
+---
+license: 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.
+---
+
+MediaError
+==========
+
+A `MediaError` object is returned to the `mediaError` callback function when an error occurs.
+
+Properties
+----------
+
+- __code:__ One of the predefined error codes listed below.
+- __message:__ Error message describing the details of the error.
+
+Constants
+---------
+
+- `MediaError.MEDIA_ERR_ABORTED`
+- `MediaError.MEDIA_ERR_NETWORK`
+- `MediaError.MEDIA_ERR_DECODE`
+- `MediaError.MEDIA_ERR_NONE_SUPPORTED`
+
+
+Description
+-----------
+
+The `MediaError` object is returned to the user through the `mediaError` callback function when an error occurs.
+
diff --git a/docs/en/1.9.0/cordova/media/Parameters/mediaError.md b/docs/en/1.9.0/cordova/media/Parameters/mediaError.md
new file mode 100644
index 0000000..e1803b4
--- /dev/null
+++ b/docs/en/1.9.0/cordova/media/Parameters/mediaError.md
@@ -0,0 +1,32 @@
+---
+license: 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.
+---
+
+mediaError
+==========
+
+A user specified callback function that is invoked when there is an error in media functions.
+
+    function(error) {
+        // Handle the error
+    }
+
+Parameters
+----------
+
+- __error:__ The error returned by the device. (`MediaError`)
diff --git a/docs/en/1.9.0/cordova/media/capture/CaptureCB.md b/docs/en/1.9.0/cordova/media/capture/CaptureCB.md
new file mode 100644
index 0000000..5f31fd0
--- /dev/null
+++ b/docs/en/1.9.0/cordova/media/capture/CaptureCB.md
@@ -0,0 +1,44 @@
+---
+license: 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.
+---
+
+CaptureCB
+=========
+
+> Invoked upon a successful media capture operation.
+
+    function captureSuccess( MediaFile[] mediaFiles ) { ... };
+
+Description
+-----------
+
+This function is invoked after a successful capture operation has completed.  This means a media file has been captured, and either the user has exited the media capture application, or the capture limit has been reached.
+
+Each MediaFile object describes a captured media file.  
+
+Quick Example
+-------------
+
+    // capture callback
+    function captureSuccess(mediaFiles) {
+        var i, path, len;
+        for (i = 0, len = mediaFiles.length; i < len; i += 1) {
+            path = mediaFiles[i].fullPath;
+            // do something interesting with the file
+        }
+    };
diff --git a/docs/en/1.9.0/cordova/media/capture/CaptureError.md b/docs/en/1.9.0/cordova/media/capture/CaptureError.md
new file mode 100644
index 0000000..5f98d51
--- /dev/null
+++ b/docs/en/1.9.0/cordova/media/capture/CaptureError.md
@@ -0,0 +1,37 @@
+---
+license: 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.
+---
+
+CaptureError
+============
+
+> Encapsulates the error code resulting from a failed media capture operation.
+
+Properties
+----------
+
+- __code:__ One of the pre-defined error codes listed below.
+
+Constants
+---------
+
+- CaptureError.`CAPTURE_INTERNAL_ERR`: Camera or microphone failed to capture image or sound. 
+- CaptureError.`CAPTURE_APPLICATION_BUSY`: Camera application or audio capture application is currently serving other capture request.
+- CaptureError.`CAPTURE_INVALID_ARGUMENT`: Invalid use of the API (e.g. limit parameter has value less than one).
+- CaptureError.`CAPTURE_NO_MEDIA_FILES`: User exited camera application or audio capture application before capturing anything.
+- CaptureError.`CAPTURE_NOT_SUPPORTED`: The requested capture operation is not supported.
diff --git a/docs/en/1.9.0/cordova/media/capture/CaptureErrorCB.md b/docs/en/1.9.0/cordova/media/capture/CaptureErrorCB.md
new file mode 100644
index 0000000..948140a
--- /dev/null
+++ b/docs/en/1.9.0/cordova/media/capture/CaptureErrorCB.md
@@ -0,0 +1,40 @@
+---
+license: 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.
+---
+
+CaptureErrorCB
+==============
+
+> Invoked if an error occurs during a media capture operation.
+
+    function captureError( CaptureError error ) { ... };
+
+Description
+-----------
+
+This function is invoked if an error occurs when trying to launch a media capture operation and the capture application is busy, if an error occurs while the capture operation is taking place, or if the capture operation has been canceled by the user before any media files have been captured.
+
+This function is invoked with a CaptureError object containing an appropriate error code.
+
+Quick Example
+-------------
+
+    // capture error callback
+    var captureError = function(error) {
+        navigator.notification.alert('Error code: ' + error.code, null, 'Capture Error');
+    };
diff --git a/docs/en/1.9.0/cordova/media/capture/ConfigurationData.md b/docs/en/1.9.0/cordova/media/capture/ConfigurationData.md
new file mode 100644
index 0000000..c166b3e
--- /dev/null
+++ b/docs/en/1.9.0/cordova/media/capture/ConfigurationData.md
@@ -0,0 +1,62 @@
+---
+license: 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.
+---
+
+ConfigurationData
+=================
+
+> Encapsulates a set of media capture parameters that a device supports.
+
+Description
+-----------
+
+This object is used to describe media capture modes supported by the device.  The configuration data includes the MIME type, and capture dimensions (for video or image capture).  
+
+The MIME types should adhere to [RFC2046](http://www.ietf.org/rfc/rfc2046.txt).  Examples:
+
+- video/3gpp
+- video/quicktime
+- image/jpeg
+- audio/amr
+- audio/wav 
+
+Properties
+----------
+
+- __type:__ The ASCII-encoded string in lower case representing the media type. (DOMString)
+- __height:__ The height of the image or video in pixels.  In the case of a sound clip, this attribute has value 0. (Number)
+- __width:__ The width of the image or video in pixels.  In the case of a sound clip, this attribute has value 0. (Number)
+
+Quick Example
+-------------
+
+    // retrieve supported image modes
+    var imageModes = navigator.device.capture.supportedImageModes;
+
+    // Select mode that has the highest horizontal resolution
+    var width = 0;
+    var selectedmode;
+    for each (var mode in imageModes) {
+        if (mode.width > width) {
+            width = mode.width;
+            selectedmode = mode;
+        }
+    }
+
+
+Not supported by any platform.  All configuration data arrays are empty.
\ No newline at end of file
diff --git a/docs/en/1.9.0/cordova/media/capture/MediaFile.getFormatData.md b/docs/en/1.9.0/cordova/media/capture/MediaFile.getFormatData.md
new file mode 100644
index 0000000..40736cd
--- /dev/null
+++ b/docs/en/1.9.0/cordova/media/capture/MediaFile.getFormatData.md
@@ -0,0 +1,53 @@
+---
+license: 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.
+---
+
+MediaFile.getFormatData
+=======================
+
+> Retrieves format information about the media capture file.
+
+    mediaFile.getFormatData( 
+        MediaFileDataSuccessCB successCallback, 
+        [MediaFileDataErrorCB errorCallback]
+    );
+
+Description
+-----------
+
+This function asynchronously attempts to retrieve the format information for the media file.  If successful, it invokes the MediaFileDataSuccessCB callback with a MediaFileData object.  If the attempt fails, this function will invoke the MediaFileDataErrorCB callback.
+
+Supported Platforms
+-------------------
+
+- Android
+- BlackBerry WebWorks (OS 5.0 and higher)
+- iOS
+- Windows Phone 7 ( Mango )
+
+BlackBerry WebWorks Quirks
+--------------------------
+There is no API that provides format information of media files.  Therefore, all MediaFileData objects will be returned with default values.  See MediaFileData documentation.
+
+Android Quirks
+--------------
+The API for retrieving media file format information is limited.  Therefore, not all MediaFileData properties are supported.  See MediaFileData documentation.
+
+iOS Quirks
+----------
+The API for retrieving media file format information is limited.  Therefore, not all MediaFileData properties are supported.  See MediaFileData documentation.
\ No newline at end of file
diff --git a/docs/en/1.9.0/cordova/media/capture/MediaFile.md b/docs/en/1.9.0/cordova/media/capture/MediaFile.md
new file mode 100644
index 0000000..fe3d9a1
--- /dev/null
+++ b/docs/en/1.9.0/cordova/media/capture/MediaFile.md
@@ -0,0 +1,37 @@
+---
+license: 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.
+---
+
+MediaFile
+=========
+
+> Encapsulates properties of a media capture file.
+
+Properties
+----------
+
+- __name:__ The name of the file, without path information. (DOMString)
+- __fullPath:__ The full path of the file, including the name. (DOMString)
+- __type:__ The mime type (DOMString)
+- __lastModifiedDate:__ The date and time that the file was last modified. (Date)
+- __size:__ The size of the file, in bytes. (Number)
+
+Methods
+-------
+
+- __MediaFile.getFormatData:__ Retrieves the format information of the media file.
\ No newline at end of file
diff --git a/docs/en/1.9.0/cordova/media/capture/MediaFileData.md b/docs/en/1.9.0/cordova/media/capture/MediaFileData.md
new file mode 100644
index 0000000..93ed349
--- /dev/null
+++ b/docs/en/1.9.0/cordova/media/capture/MediaFileData.md
@@ -0,0 +1,62 @@
+---
+license: 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.
+---
+
+MediaFileData
+=============
+
+> Encapsulates format information about a media file.
+
+Properties
+----------
+
+- __codecs:__ The actual format of the audio and video content. (DOMString)
+- __bitrate:__ The average bitrate of the content.  In case of an image, this attribute has value 0. (Number)
+- __height:__ The height of the image or video in pixels. In the case of a sound clip, this attribute has value 0. (Number)
+- __width:__ The width of the image or video in pixels. In the case of a sound clip, this attribute has value 0. (Number)
+- __duration:__ The length of the video or sound clip in seconds. In the case of an image, this attribute has value 0. (Number)
+
+BlackBerry WebWorks Quirks
+--------------------------
+There is no API that provides format information of media files.  So the MediaFileData object returned by the MediaFile.getFormatData function will have the following default values:
+
+- __codecs:__ Not supported. The attribute will always be null.
+- __bitrate:__ Not supported.  The attribute will always be 0.
+- __height:__ Not supported.  The attribute will always be 0.
+- __width:__ Not supported.  The attribute will always be 0.
+- __duration:__ Not supported.  The attribute will always be 0.
+
+Android Quirks
+--------------
+Support for the MediaFileData properties is as follows:
+
+- __codecs:__ Not supported.  The attribute will always be null.
+- __bitrate:__ Not supported.  The attribute will always be 0.
+- __height:__ Supported.  (Image and video files only).  
+- __width:__ Supported.  (Image and video files only). 
+- __duration:__ Supported.  (Audio and video files only).
+
+iOS Quirks
+----------
+Support for the MediaFileData properties is as follows:
+
+- __codecs:__ Not supported.  The attribute will always be null.
+- __bitrate:__ Supported on iOS4 devices for audio only. The attribute will always be 0 for image and video.
+- __height:__ Supported.  (Image and video files only).  
+- __width:__ Supported.  (Image and video files only). 
+- __duration:__ Supported.  (Audio and video files only).
\ No newline at end of file
diff --git a/docs/en/1.9.0/cordova/media/capture/capture.md b/docs/en/1.9.0/cordova/media/capture/capture.md
new file mode 100644
index 0000000..5fbf0a4
--- /dev/null
+++ b/docs/en/1.9.0/cordova/media/capture/capture.md
@@ -0,0 +1,134 @@
+---
+license: 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.
+---
+
+Capture
+=======
+
+> Provides access to the audio, image, and video capture capabilities of the device.
+
+Objects
+-------
+
+- Capture
+- CaptureAudioOptions
+- CaptureImageOptions
+- CaptureVideoOptions
+- CaptureCB
+- CaptureErrorCB
+- ConfigurationData
+- MediaFile
+- MediaFileData
+
+Methods
+-------
+
+- capture.captureAudio
+- capture.captureImage
+- capture.captureVideo
+- MediaFile.getFormatData
+
+Scope
+-----
+
+The __capture__ object is assigned to the __navigator.device__ object, and therefore has global scope.
+
+    // The global capture object
+    var capture = navigator.device.capture;
+
+Properties
+----------
+
+- __supportedAudioModes:__ The audio recording formats supported by the device. (ConfigurationData[])
+- __supportedImageModes:__ The recording image sizes and formats supported by the device. (ConfigurationData[])
+- __supportedVideoModes:__ The recording video resolutions and formats supported by the device. (ConfigurationData[])
+
+Methods
+-------
+
+- capture.captureAudio: Launch the device audio recording application for recording audio clip(s).
+- capture.captureImage: Launch the device camera application for taking image(s).
+- capture.captureVideo: Launch the device video recorder application for recording video(s).
+
+
+Supported Platforms
+-------------------
+
+- Android
+- BlackBerry WebWorks (OS 5.0 and higher)
+- iOS
+- Windows Phone 7 ( Mango )
+
+Permissions
+-----------
+
+### Android
+
+#### app/res/xml/plugins.xml
+
+    <plugin name="Capture" value="org.apache.cordova.Capture"/>
+
+#### app/AndroidManifest.xml
+
+    <uses-permission android:name="android.permission.RECORD_AUDIO" />
+    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />   
+
+### Bada
+
+#### manifest.xml
+
+    <Privilege>
+        <Name>RECORDING</Name>
+    </Privilege>
+
+### BlackBerry WebWorks
+
+#### www/plugins.xml
+
+    <plugin name="Capture" value="org.apache.cordova.capture.MediaCapture" />
+
+#### www/config.xml
+
+    <feature id="blackberry.system"  required="true" version="1.0.0.0" />
+    <feature id="blackberry.io.file" required="true" version="1.0.0.0" />
+
+### iOS
+
+#### App/Supporting Files/Cordova.plist
+
+    <key>Plugins</key>
+    <dict>
+        <key>Capture</key>
+        <string>CDVCapture</string>
+    </dict>
+
+### webOS
+
+    No permissions are required.
+
+### Windows Phone
+
+#### Properties/WPAppManifest.xml
+
+    <Capabilities>
+        <Capability Name="ID_CAP_MEDIALIB" />
+        <Capability Name="ID_CAP_MICROPHONE" />
+        <Capability Name="ID_HW_FRONTCAMERA" />
+        <Capability Name="ID_CAP_ISV_CAMERA" />
+        <Capability Name="ID_CAP_CAMERA" />
+    </Capabilities>
diff --git a/docs/en/1.9.0/cordova/media/capture/captureAudio.md b/docs/en/1.9.0/cordova/media/capture/captureAudio.md
new file mode 100644
index 0000000..af26e54
--- /dev/null
+++ b/docs/en/1.9.0/cordova/media/capture/captureAudio.md
@@ -0,0 +1,140 @@
+---
+license: 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.
+---
+
+capture.captureAudio
+====================
+
+> Start the audio recorder application and return information about captured audio clip file(s).
+
+    navigator.device.capture.captureAudio( 
+	    CaptureCB captureSuccess, CaptureErrorCB captureError,  [CaptureAudioOptions options]
+	);
+
+Description
+-----------
+
+This method starts an asynchronous operation to capture audio recordings using the device's default audio recording application.  The operation allows the device user to capture multiple recordings in a single session.
+
+The capture operation ends when either the user exits the audio recording application, or the maximum number of recordings, specified by the __limit__ parameter in CaptureAudioOptions, has been reached.  If no value is provided for the __limit__ parameter, a default value of one (1) is used, and the capture operation will terminate after the user records a single audio clip.
+
+When the capture operation is finished, it will invoke the CaptureCB callback with an array of MediaFile objects describing each captured audio clip file.  If the operation is terminated by the user before an audio clip is captured, the CaptureErrorCB callback will be invoked with a CaptureError object with the CaptureError.`CAPTURE_NO_MEDIA_FILES` error code.
+
+Supported Platforms
+-------------------
+
+- Android
+- BlackBerry WebWorks (OS 5.0 and higher)
+- iOS
+- Windows Phone 7 ( Mango )
+
+Quick Example
+-------------
+
+    // capture callback
+    var captureSuccess = function(mediaFiles) {
+        var i, path, len;
+        for (i = 0, len = mediaFiles.length; i < len; i += 1) {
+            path = mediaFiles[i].fullPath;
+            // do something interesting with the file
+        }
+    };
+
+    // capture error callback
+    var captureError = function(error) {
+        navigator.notification.alert('Error code: ' + error.code, null, 'Capture Error');
+    };
+
+    // start audio capture
+    navigator.device.capture.captureAudio(captureSuccess, captureError, {limit:2});
+
+Full Example
+------------
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>Capture Audio</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
+        <script type="text/javascript" charset="utf-8" src="json2.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Called when capture operation is finished
+        //
+        function captureSuccess(mediaFiles) {
+            var i, len;
+            for (i = 0, len = mediaFiles.length; i < len; i += 1) {
+                uploadFile(mediaFiles[i]);
+            }	    
+        }
+
+        // Called if something bad happens.
+        // 
+        function captureError(error) {
+	        var msg = 'An error occurred during capture: ' + error.code;
+            navigator.notification.alert(msg, null, 'Uh oh!');
+        }
+
+        // A button will call this function
+        //
+        function captureAudio() {
+            // Launch device audio recording application, 
+            // allowing user to capture up to 2 audio clips
+            navigator.device.capture.captureAudio(captureSuccess, captureError, {limit: 2});
+        }
+
+        // Upload files to server
+        function uploadFile(mediaFile) {
+            var ft = new FileTransfer(),
+                path = mediaFile.fullPath,
+                name = mediaFile.name;
+
+            ft.upload(path,
+                "http://my.domain.com/upload.php",
+                function(result) {
+                    console.log('Upload success: ' + result.responseCode);
+                    console.log(result.bytesSent + ' bytes sent');
+                },
+                function(error) {
+                    console.log('Error uploading file ' + path + ': ' + error.code);
+                },
+                { fileName: name });   
+        }
+
+        </script>
+        </head>
+        <body>
+            <button onclick="captureAudio();">Capture Audio</button> <br>
+        </body>
+    </html>
+
+BlackBerry WebWorks Quirks
+--------------------------
+
+- Cordova for BlackBerry WebWorks attempts to launch the __Voice Notes Recorder__ application, provided by RIM, to capture the audio recordings.  The developer will receive a CaptureError.`CAPTURE_NOT_SUPPORTED` error code if the application is not installed on the device.
+
+iOS Quirks
+----------
+
+- iOS does not have a default audio recording application so a simple user interface is provided.
+
+Windows Phone 7 Quirks
+----------
+
+- Windows Phone 7 does not have a default audio recording application so a simple user interface is provided.
diff --git a/docs/en/1.9.0/cordova/media/capture/captureAudioOptions.md b/docs/en/1.9.0/cordova/media/capture/captureAudioOptions.md
new file mode 100644
index 0000000..19ec58b
--- /dev/null
+++ b/docs/en/1.9.0/cordova/media/capture/captureAudioOptions.md
@@ -0,0 +1,56 @@
+---
+license: 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.
+---
+
+CaptureAudioOptions
+===================
+
+> Encapsulates audio capture configuration options.
+
+Properties
+----------
+
+- __limit:__ The maximum number of audio clips the device user can record in a single capture operation.  The value must be greater than or equal to 1 (defaults to 1).
+- __duration:__ The maximum duration of an audio sound clip, in seconds.
+- __mode:__ The selected audio mode.  The value must match one of the elements in `capture.supportedAudioModes`.
+
+Quick Example
+-------------
+
+    // limit capture operation to 3 media files, no longer than 10 seconds each
+    var options = { limit: 3, duration: 10 };
+
+    navigator.device.capture.captureAudio(captureSuccess, captureError, options);
+
+Android Quirks
+--------------
+
+- The __duration__ parameter is not supported.  Recording lengths cannot be limited programmatically.
+- The __mode__ parameter is not supported.  The audio recording format cannot be altered programmatically.  Recordings are encoded using Adaptive Multi-Rate (AMR) format (audio/amr).
+
+BlackBerry WebWorks Quirks
+--------------------------
+
+- The __duration__ parameter is not supported.  Recording lengths cannot be limited programmatically.
+- The __mode__ parameter is not supported.  The audio recording format cannot be altered programmatically.  Recordings are encoded using Adaptive Multi-Rate (AMR) format (audio/amr).
+
+iOS Quirks
+----------
+
+- The __limit__ parameter is not supported. One recording can be created for each invocation.
+- The __mode__ parameter is not supported.  The audio recording format cannot be altered programmatically.  Recordings are encoded using Waveform Audio (WAV) format (audio/wav).
diff --git a/docs/en/1.9.0/cordova/media/capture/captureImage.md b/docs/en/1.9.0/cordova/media/capture/captureImage.md
new file mode 100644
index 0000000..57d59ab
--- /dev/null
+++ b/docs/en/1.9.0/cordova/media/capture/captureImage.md
@@ -0,0 +1,133 @@
+---
+license: 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.
+---
+
+capture.captureImage
+====================
+
+> Start the camera application and return information about captured image file(s).
+
+    navigator.device.capture.captureImage( 
+	    CaptureCB captureSuccess, CaptureErrorCB captureError, [CaptureImageOptions options]
+	);
+
+Description
+-----------
+
+This method starts an asynchronous operation to capture images using the device camera application.  The operation allows the device user to capture multiple images in a single session.
+
+The capture operation ends when either the user exits the camera application, or the maximum number of images, specified by the __limit__ parameter in CaptureImageOptions, has been reached.  If no value is provided for the __limit__ parameter, a default value of one (1) is used, and the capture operation will terminate after the user captures a single image.
+
+When the capture operation is finished, it will invoke the CaptureCB callback with an array of MediaFile objects describing each captured image file.  If the operation is terminated by the user before an image is captured, the CaptureErrorCB callback will be invoked with a CaptureError object with the CaptureError.`CAPTURE_NO_MEDIA_FILES` error code.
+
+Supported Platforms
+-------------------
+
+- Android
+- BlackBerry WebWorks (OS 5.0 and higher)
+- iOS
+- Windows Phone 7 ( Mango )
+
+Windows Phone 7 Quirks
+----------------------
+
+Invoking the native camera application while your device is connected
+via Zune will not work, and the error callback will be triggered.
+
+Quick Example
+-------------
+
+    // capture callback
+    var captureSuccess = function(mediaFiles) {
+        var i, path, len;
+        for (i = 0, len = mediaFiles.length; i < len; i += 1) {
+            path = mediaFiles[i].fullPath;
+            // do something interesting with the file
+        }
+    };
+
+    // capture error callback
+    var captureError = function(error) {
+        navigator.notification.alert('Error code: ' + error.code, null, 'Capture Error');
+    };
+
+    // start image capture
+    navigator.device.capture.captureImage(captureSuccess, captureError, {limit:2});
+
+Full Example
+------------
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>Capture Image</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
+        <script type="text/javascript" charset="utf-8" src="json2.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Called when capture operation is finished
+        //
+        function captureSuccess(mediaFiles) {
+            var i, len;
+            for (i = 0, len = mediaFiles.length; i < len; i += 1) {
+                uploadFile(mediaFiles[i]);
+            }	    
+        }
+
+        // Called if something bad happens.
+        // 
+        function captureError(error) {
+	        var msg = 'An error occurred during capture: ' + error.code;
+            navigator.notification.alert(msg, null, 'Uh oh!');
+        }
+
+        // A button will call this function
+        //
+        function captureImage() {
+            // Launch device camera application, 
+            // allowing user to capture up to 2 images
+            navigator.device.capture.captureImage(captureSuccess, captureError, {limit: 2});
+        }
+
+        // Upload files to server
+        function uploadFile(mediaFile) {
+            var ft = new FileTransfer(),
+                path = mediaFile.fullPath,
+                name = mediaFile.name;
+
+            ft.upload(path,
+                "http://my.domain.com/upload.php",
+                function(result) {
+                    console.log('Upload success: ' + result.responseCode);
+                    console.log(result.bytesSent + ' bytes sent');
+                },
+                function(error) {
+                    console.log('Error uploading file ' + path + ': ' + error.code);
+                },
+                { fileName: name });   
+        }
+
+        </script>
+        </head>
+        <body>
+            <button onclick="captureImage();">Capture Image</button> <br>
+        </body>
+    </html>
+
+
diff --git a/docs/en/1.9.0/cordova/media/capture/captureImageOptions.md b/docs/en/1.9.0/cordova/media/capture/captureImageOptions.md
new file mode 100644
index 0000000..763a389
--- /dev/null
+++ b/docs/en/1.9.0/cordova/media/capture/captureImageOptions.md
@@ -0,0 +1,53 @@
+---
+license: 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.
+---
+
+CaptureImageOptions
+===================
+
+> Encapsulates image capture configuration options.
+
+Properties
+----------
+
+- __limit:__ The maximum number of images the device user can capture in a single capture operation.  The value must be greater than or equal to 1 (defaults to 1).
+- __mode:__ The selected image mode.  The value must match one of the elements in `capture.supportedImageModes`.
+
+Quick Example
+-------------
+
+    // limit capture operation to 3 images
+    var options = { limit: 3 };
+
+    navigator.device.capture.captureImage(captureSuccess, captureError, options);
+
+Android Quirks
+--------------
+
+- The __mode__ parameter is not supported.  The image size and format cannot be altered programmatically; however, the image size can be altered by the device user.  Images are saved in JPEG format (image/jpeg).
+
+BlackBerry WebWorks Quirks
+--------------------------
+
+- The __mode__ parameter is not supported.  The image size and format cannot be altered programmatically; however, the image size can be altered by the device user.  Images are saved in JPEG format (image/jpeg).
+
+iOS Quirks
+----------
+
+- The __limit__ parameter is not supported. One image is taken per invocation.
+- The __mode__ parameter is not supported.  The image size and format cannot be altered programmatically.  Images are saved in JPEG format (image/jpeg).
diff --git a/docs/en/1.9.0/cordova/media/capture/captureVideo.md b/docs/en/1.9.0/cordova/media/capture/captureVideo.md
new file mode 100644
index 0000000..e087a95
--- /dev/null
+++ b/docs/en/1.9.0/cordova/media/capture/captureVideo.md
@@ -0,0 +1,130 @@
+---
+license: 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.
+---
+
+capture.captureVideo
+====================
+
+> Start the video recorder application and return information about captured video clip file(s).
+
+    navigator.device.capture.captureVideo( 
+	    CaptureCB captureSuccess, CaptureErrorCB captureError, [CaptureVideoOptions options]
+	);
+
+Description
+-----------
+
+This method starts an asynchronous operation to capture video recordings using the device video recording application.  The operation allows the device user to capture multiple recordings in a single session.
+
+The capture operation ends when either the user exits the video recording application, or the maximum number of recordings, specified by the __limit__ parameter in CaptureVideoOptions, has been reached.  If no value is provided for the __limit__ parameter, a default value of one (1) is used, and the capture operation will terminate after the user records a single video clip.
+
+When the capture operation is finished, it will invoke the CaptureCB callback with an array of MediaFile objects describing each captured video clip file.  If the operation is terminated by the user before an video clip is captured, the CaptureErrorCB callback will be invoked with a CaptureError object with the CaptureError.`CAPTURE_NO_MEDIA_FILES` error code.
+
+Supported Platforms
+-------------------
+
+- Android
+- BlackBerry WebWorks (OS 5.0 and higher)
+- iOS
+- Windows Phone 7 ( Mango )
+
+Quick Example
+-------------
+
+    // capture callback
+    var captureSuccess = function(mediaFiles) {
+        var i, path, len;
+        for (i = 0, len = mediaFiles.length; i < len; i += 1) {
+            path = mediaFiles[i].fullPath;
+            // do something interesting with the file
+        }
+    };
+
+    // capture error callback
+    var captureError = function(error) {
+        navigator.notification.alert('Error code: ' + error.code, null, 'Capture Error');
+    };
+
+    // start video capture
+    navigator.device.capture.captureVideo(captureSuccess, captureError, {limit:2});
+
+Full Example
+------------
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>Capture Video</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
+        <script type="text/javascript" charset="utf-8" src="json2.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Called when capture operation is finished
+        //
+        function captureSuccess(mediaFiles) {
+            var i, len;
+            for (i = 0, len = mediaFiles.length; i < len; i += 1) {
+                uploadFile(mediaFiles[i]);
+            }	    
+        }
+
+        // Called if something bad happens.
+        // 
+        function captureError(error) {
+	        var msg = 'An error occurred during capture: ' + error.code;
+            navigator.notification.alert(msg, null, 'Uh oh!');
+        }
+
+        // A button will call this function
+        //
+        function captureVideo() {
+            // Launch device video recording application, 
+            // allowing user to capture up to 2 video clips
+            navigator.device.capture.captureVideo(captureSuccess, captureError, {limit: 2});
+        }
+
+        // Upload files to server
+        function uploadFile(mediaFile) {
+            var ft = new FileTransfer(),
+                path = mediaFile.fullPath,
+                name = mediaFile.name;
+
+            ft.upload(path,
+                "http://my.domain.com/upload.php",
+                function(result) {
+                    console.log('Upload success: ' + result.responseCode);
+                    console.log(result.bytesSent + ' bytes sent');
+                },
+                function(error) {
+                    console.log('Error uploading file ' + path + ': ' + error.code);
+                },
+                { fileName: name });   
+        }
+
+        </script>
+        </head>
+        <body>
+            <button onclick="captureVideo();">Capture Video</button> <br>
+        </body>
+    </html>
+
+BlackBerry WebWorks Quirks
+--------------------------
+
+- Cordova for BlackBerry WebWorks attempts to launch the __Video Recorder__ application, provided by RIM, to capture the video recordings.  The developer will receive a CaptureError.`CAPTURE_NOT_SUPPORTED` error code if the application is not installed on the device.
diff --git a/docs/en/1.9.0/cordova/media/capture/captureVideoOptions.md b/docs/en/1.9.0/cordova/media/capture/captureVideoOptions.md
new file mode 100644
index 0000000..95711f1
--- /dev/null
+++ b/docs/en/1.9.0/cordova/media/capture/captureVideoOptions.md
@@ -0,0 +1,59 @@
+---
+license: 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.
+---
+
+CaptureVideoOptions
+===================
+
+> Encapsulates video capture configuration options.
+
+Properties
+----------
+
+- __limit:__ The maximum number of video clips the device user can capture in a single capture operation.  The value must be greater than or equal to 1 (defaults to 1).
+- __duration:__ The maximum duration of a video clip, in seconds.
+- __mode:__ The selected video capture mode.  The value must match one of the elements in `capture.supportedVideoModes`.
+
+Quick Example
+-------------
+
+    // limit capture operation to 3 video clips
+    var options = { limit: 3 };
+
+    navigator.device.capture.captureVideo(captureSuccess, captureError, options);
+
+Android Quirks
+--------------
+
+- The __duration__ parameter is not supported.  Recording lengths cannot be limited programmatically.
+- The __mode__ parameter is not supported.  The video size and format cannot be altered programmatically; however, these parameters can be changed by the device user. By default, videos are recorded in 3GPP (video/3gpp) format.
+
+
+BlackBerry WebWorks Quirks
+--------------------------
+
+- The __duration__ parameter is not supported.  Recording lengths cannot be limited programmatically.
+- The __mode__ parameter is not supported.  The video size and format cannot be altered programmatically; however, these parameters can be changed by the device user. By default, videos are recorded in 3GPP (video/3gpp) format.
+
+iOS Quirks
+----------
+
+- The __limit__ parameter is not supported.  One video is recorded per invocation.
+- The __duration__ parameter is not supported.  Recording lengths cannot be limited programmatically.
+- The __mode__ parameter is not supported.  The video size and format cannot be altered programmatically. By default, videos are recorded in MOV (video/quicktime) format.
+
diff --git a/docs/en/1.9.0/cordova/media/media.getCurrentPosition.md b/docs/en/1.9.0/cordova/media/media.getCurrentPosition.md
new file mode 100644
index 0000000..bfb7b18
--- /dev/null
+++ b/docs/en/1.9.0/cordova/media/media.getCurrentPosition.md
@@ -0,0 +1,173 @@
+---
+license: 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.
+---
+
+media.getCurrentPosition
+========================
+
+Returns the current position within an audio file.
+
+    media.getCurrentPosition(mediaSuccess, [mediaError]);
+
+Parameters
+----------
+
+- __mediaSuccess__: The callback that is called with the current position in seconds.
+- __mediaError__: (Optional) The callback that is called if there was an error.
+
+Description
+-----------
+
+Function `media.getCurrentPosition` is an asynchronous function that returns the current position of the underlying audio file of a Media object. Also updates the ___position__ parameter within the Media object. 
+
+Supported Platforms
+-------------------
+
+- Android
+- BlackBerry WebWorks (OS 5.0 and higher)
+- iOS
+- Windows Phone 7 ( Mango )
+    
+Quick Example
+-------------
+
+        // Audio player
+        //
+        var my_media = new Media(src, onSuccess, onError);
+
+        // Update media position every second
+        var mediaTimer = setInterval(function() {
+            // get media position
+            my_media.getCurrentPosition(
+                // success callback
+                function(position) {
+                    if (position > -1) {
+                        console.log((position) + " sec");
+                    }
+                },
+                // error callback
+                function(e) {
+                    console.log("Error getting pos=" + e);
+                }
+            );
+        }, 1000);
+
+
+Full Example
+------------
+
+        <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
+                      "http://www.w3.org/TR/html4/strict.dtd">
+        <html>
+          <head>
+            <title>Media Example</title>
+        
+            <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
+            <script type="text/javascript" charset="utf-8">
+        
+            // Wait for Cordova to load
+            //
+            document.addEventListener("deviceready", onDeviceReady, false);
+        
+            // Cordova is ready
+            //
+            function onDeviceReady() {
+                playAudio("http://audio.ibeat.org/content/p1rj1s/p1rj1s_-_rockGuitar.mp3");
+            }
+        
+            // Audio player
+            //
+            var my_media = null;
+            var mediaTimer = null;
+        
+            // Play audio
+            //
+            function playAudio(src) {
+                // Create Media object from src
+                my_media = new Media(src, onSuccess, onError);
+        
+                // Play audio
+                my_media.play();
+        
+                // Update my_media position every second
+                if (mediaTimer == null) {
+                    mediaTimer = setInterval(function() {
+                        // get my_media position
+                        my_media.getCurrentPosition(
+                            // success callback
+                            function(position) {
+                                if (position > -1) {
+                                    setAudioPosition((position) + " sec");
+                                }
+                            },
+                            // error callback
+                            function(e) {
+                                console.log("Error getting pos=" + e);
+                                setAudioPosition("Error: " + e);
+                            }
+                        );
+                    }, 1000);
+                }
+            }
+        
+            // Pause audio
+            // 
+            function pauseAudio() {
+                if (my_media) {
+                    my_media.pause();
+                }
+            }
+        
+            // Stop audio
+            // 
+            function stopAudio() {
+                if (my_media) {
+                    my_media.stop();
+                }
+                clearInterval(mediaTimer);
+                mediaTimer = null;
+            }
+        
+            // onSuccess Callback
+            //
+            function onSuccess() {
+                console.log("playAudio():Audio Success");
+            }
+        
+            // onError Callback 
+            //
+            function onError(error) {
+                alert('code: '    + error.code    + '\n' + 
+                      'message: ' + error.message + '\n');
+            }
+        
+            // Set audio position
+            // 
+            function setAudioPosition(position) {
+                document.getElementById('audio_position').innerHTML = position;
+            }
+        
+            </script>
+          </head>
+          <body>
+            <a href="#" class="btn large" onclick="playAudio('http://audio.ibeat.org/content/p1rj1s/p1rj1s_-_rockGuitar.mp3');">Play Audio</a>
+            <a href="#" class="btn large" onclick="pauseAudio();">Pause Playing Audio</a>
+            <a href="#" class="btn large" onclick="stopAudio();">Stop Playing Audio</a>
+            <p id="audio_position"></p>
+          </body>
+        </html>
diff --git a/docs/en/1.9.0/cordova/media/media.getDuration.md b/docs/en/1.9.0/cordova/media/media.getDuration.md
new file mode 100644
index 0000000..2dd122c
--- /dev/null
+++ b/docs/en/1.9.0/cordova/media/media.getDuration.md
@@ -0,0 +1,165 @@
+---
+license: 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.
+---
+
+media.getDuration
+=================
+
+Returns the duration of an audio file.
+
+    media.getDuration();
+
+
+Description
+-----------
+
+Function `media.getDuration` is a synchronous function that returns the duration of the audio file in seconds, if known.  If the duration is unknown, a value of -1 is returned.
+
+Supported Platforms
+-------------------
+
+- Android
+- BlackBerry WebWorks (OS 5.0 and higher)
+- iOS
+- Windows Phone 7 ( Mango )
+    
+Quick Example
+-------------
+
+        // Audio player
+        //
+        var my_media = new Media(src, onSuccess, onError);
+
+        // Get duration
+        var counter = 0;
+        var timerDur = setInterval(function() {
+            counter = counter + 100;
+            if (counter > 2000) {
+                clearInterval(timerDur);
+            }
+            var dur = my_media.getDuration();
+            if (dur > 0) {
+                clearInterval(timerDur);
+                document.getElementById('audio_duration').innerHTML = (dur) + " sec";
+            }
+       }, 100);
+
+
+Full Example
+------------
+
+        <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
+                              "http://www.w3.org/TR/html4/strict.dtd">
+        <html>
+          <head>
+            <title>Media Example</title>
+        
+            <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
+            <script type="text/javascript" charset="utf-8">
+        
+            // Wait for Cordova to load
+            //
+            document.addEventListener("deviceready", onDeviceReady, false);
+        
+            // Cordova is ready
+            //
+            function onDeviceReady() {
+                playAudio("http://audio.ibeat.org/content/p1rj1s/p1rj1s_-_rockGuitar.mp3");
+            }
+        
+            // Audio player
+            //
+            var my_media = null;
+            var mediaTimer = null;
+        
+            // Play audio
+            //
+            function playAudio(src) {
+                // Create Media object from src
+                my_media = new Media(src, onSuccess, onError);
+        
+                // Play audio
+                my_media.play();
+        
+                // Update my_media position every second
+                if (mediaTimer == null) {
+                    mediaTimer = setInterval(function() {
+                        // get my_media position
+                        my_media.getCurrentPosition(
+                            // success callback
+                            function(position) {
+                                if (position > -1) {
+                                    setAudioPosition((position) + " sec");
+                                }
+                            },
+                            // error callback
+                            function(e) {
+                                console.log("Error getting pos=" + e);
+                                setAudioPosition("Error: " + e);
+                            }
+                        );
+                    }, 1000);
+                }
+            }
+        
+            // Pause audio
+            // 
+            function pauseAudio() {
+                if (my_media) {
+                    my_media.pause();
+                }
+            }
+        
+            // Stop audio
+            // 
+            function stopAudio() {
+                if (my_media) {
+                    my_media.stop();
+                }
+                clearInterval(mediaTimer);
+                mediaTimer = null;
+            }
+        
+            // onSuccess Callback
+            //
+            function onSuccess() {
+                console.log("playAudio():Audio Success");
+            }
+        
+            // onError Callback 
+            //
+            function onError(error) {
+                alert('code: '    + error.code    + '\n' + 
+                      'message: ' + error.message + '\n');
+            }
+        
+            // Set audio position
+            // 
+            function setAudioPosition(position) {
+                document.getElementById('audio_position').innerHTML = position;
+            }
+        
+            </script>
+          </head>
+          <body>
+            <a href="#" class="btn large" onclick="playAudio('http://audio.ibeat.org/content/p1rj1s/p1rj1s_-_rockGuitar.mp3');">Play Audio</a>
+            <a href="#" class="btn large" onclick="pauseAudio();">Pause Playing Audio</a>
+            <a href="#" class="btn large" onclick="stopAudio();">Stop Playing Audio</a>
+            <p id="audio_position"></p>
+          </body>
+        </html>
diff --git a/docs/en/1.9.0/cordova/media/media.md b/docs/en/1.9.0/cordova/media/media.md
new file mode 100644
index 0000000..20e1770
--- /dev/null
+++ b/docs/en/1.9.0/cordova/media/media.md
@@ -0,0 +1,121 @@
+---
+license: 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.
+---
+
+Media
+=====
+
+> The `Media` object provides the ability to record and play back audio files on a device.
+
+    var media = new Media(src, mediaSuccess, [mediaError], [mediaStatus]);
+
+
+Note: The current implementation does not adhere to a W3C specification for media capture, and is provided for convenience only.  A future implementation will adhere to the latest W3C specification and may deprecate the current APIs.
+
+Parameters
+----------
+
+- __src__: A URI containing the audio content. _(DOMString)_
+- __mediaSuccess__: (Optional) The callback that is invoked after a Media object has completed the current play/record or stop action. _(Function)_
+- __mediaError__: (Optional) The callback that is invoked if there was an error. _(Function)_
+- __mediaStatus__: (Optional) The callback that is invoked to indicate status changes. _(Function)_
+
+Methods
+-------
+
+- media.getCurrentPosition: Returns the current position within an audio file.
+- media.getDuration: Returns the duration of an audio file.
+- media.play: Start or resume playing audio file.
+- media.pause: Pause playing audio file.
+- media.release: Releases the underlying OS'es audio resources.
+- media.seekTo: Moves the position within the audio file.
+- media.startRecord: Start recording audio file.
+- media.stopRecord: Stop recording audio file.
+- media.stop: Stop playing audio file.
+
+Additional ReadOnly Parameters
+---------------------
+
+- __position__: The position within the audio playback in seconds.
+    - Not automatically updated during play, call `getCurrentPosition` to update.
+- __duration__: The duration of the media in seconds.
+
+Supported Platforms
+-------------------
+
+- Android
+- BlackBerry WebWorks (OS 5.0 and higher)
+- iOS
+- Windows Phone 7 (Mango)
+
+Permissions
+-----------
+
+### Android
+
+#### app/res/xml/plugins.xml
+
+    <plugin name="Media" value="org.apache.cordova.AudioHandler" />
+
+#### app/AndroidManifest.xml
+
+    <uses-permission android:name="android.permission.RECORD_AUDIO" />
+    <uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
+    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
+
+### Bada
+
+#### manifest.xml
+
+    <Privilege>
+        <Name>RECORDING</Name>
+    </Privilege>
+
+### BlackBerry WebWorks
+
+#### www/plugins.xml
+
+    <plugin name="Capture" value="org.apache.cordova.media.MediaCapture" />
+
+### iOS
+
+#### App/Supporting Files/Cordova.plist
+
+    <key>Plugins</key>
+    <dict>
+        <key>Media</key>
+        <string>CDVSound</string>
+    </dict>
+
+### webOS
+
+    No permissions are required.
+
+### Windows Phone
+
+#### Properties/WPAppManifest.xml
+
+    <Capabilities>
+        <Capability Name="ID_CAP_MEDIALIB" />
+        <Capability Name="ID_CAP_MICROPHONE" />
+        <Capability Name="ID_HW_FRONTCAMERA" />
+        <Capability Name="ID_CAP_ISV_CAMERA" />
+        <Capability Name="ID_CAP_CAMERA" />
+    </Capabilities>
+
+Reference: [Application Manifest for Windows Phone](http://msdn.microsoft.com/en-us/library/ff769509%28v=vs.92%29.aspx)
diff --git a/docs/en/1.9.0/cordova/media/media.pause.md b/docs/en/1.9.0/cordova/media/media.pause.md
new file mode 100644
index 0000000..2ca4f5c
--- /dev/null
+++ b/docs/en/1.9.0/cordova/media/media.pause.md
@@ -0,0 +1,170 @@
+---
+license: 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.
+---
+
+media.pause
+===========
+
+Pauses playing an audio file.
+
+    media.pause();
+
+
+Description
+-----------
+
+Function `media.pause` is a synchronous function that pauses playing an audio file.
+
+Supported Platforms
+-------------------
+
+- Android
+- BlackBerry WebWorks (OS 5.0 and higher)
+- iOS
+- Windows Phone 7 ( Mango )
+    
+Quick Example
+-------------
+
+    // Play audio
+    //
+    function playAudio(url) {
+        // Play the audio file at url
+        var my_media = new Media(url,
+            // success callback
+            function() {
+                console.log("playAudio():Audio Success");
+            },
+            // error callback
+            function(err) {
+                console.log("playAudio():Audio Error: "+err);
+        });
+
+        // Play audio
+        my_media.play();
+
+        // Pause after 10 seconds
+        setTimeout(function() {
+            media.pause();
+        }, 10000);        
+    }
+
+
+Full Example
+------------
+
+        <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
+                              "http://www.w3.org/TR/html4/strict.dtd">
+        <html>
+          <head>
+            <title>Media Example</title>
+        
+            <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
+            <script type="text/javascript" charset="utf-8">
+        
+            // Wait for Cordova to load
+            //
+            document.addEventListener("deviceready", onDeviceReady, false);
+        
+            // Cordova is ready
+            //
+            function onDeviceReady() {
+                playAudio("http://audio.ibeat.org/content/p1rj1s/p1rj1s_-_rockGuitar.mp3");
+            }
+        
+            // Audio player
+            //
+            var my_media = null;
+            var mediaTimer = null;
+        
+            // Play audio
+            //
+            function playAudio(src) {
+                // Create Media object from src
+                my_media = new Media(src, onSuccess, onError);
+        
+                // Play audio
+                my_media.play();
+        
+                // Update my_media position every second
+                if (mediaTimer == null) {
+                    mediaTimer = setInterval(function() {
+                        // get my_media position
+                        my_media.getCurrentPosition(
+                            // success callback
+                            function(position) {
+                                if (position > -1) {
+                                    setAudioPosition((position) + " sec");
+                                }
+                            },
+                            // error callback
+                            function(e) {
+                                console.log("Error getting pos=" + e);
+                                setAudioPosition("Error: " + e);
+                            }
+                        );
+                    }, 1000);
+                }
+            }
+        
+            // Pause audio
+            // 
+            function pauseAudio() {
+                if (my_media) {
+                    my_media.pause();
+                }
+            }
+        
+            // Stop audio
+            // 
+            function stopAudio() {
+                if (my_media) {
+                    my_media.stop();
+                }
+                clearInterval(mediaTimer);
+                mediaTimer = null;
+            }
+        
+            // onSuccess Callback
+            //
+            function onSuccess() {
+                console.log("playAudio():Audio Success");
+            }
+        
+            // onError Callback 
+            //
+            function onError(error) {
+                alert('code: '    + error.code    + '\n' + 
+                      'message: ' + error.message + '\n');
+            }
+        
+            // Set audio position
+            // 
+            function setAudioPosition(position) {
+                document.getElementById('audio_position').innerHTML = position;
+            }
+        
+            </script>
+          </head>
+          <body>
+            <a href="#" class="btn large" onclick="playAudio('http://audio.ibeat.org/content/p1rj1s/p1rj1s_-_rockGuitar.mp3');">Play Audio</a>
+            <a href="#" class="btn large" onclick="pauseAudio();">Pause Playing Audio</a>
+            <a href="#" class="btn large" onclick="stopAudio();">Stop Playing Audio</a>
+            <p id="audio_position"></p>
+          </body>
+        </html>
diff --git a/docs/en/1.9.0/cordova/media/media.play.md b/docs/en/1.9.0/cordova/media/media.play.md
new file mode 100644
index 0000000..04dad55
--- /dev/null
+++ b/docs/en/1.9.0/cordova/media/media.play.md
@@ -0,0 +1,188 @@
+---
+license: 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.
+---
+
+media.play
+==========
+
+Starts or resumes playing an audio file.
+
+    media.play();
+
+
+Description
+-----------
+
+Function `media.play` is a synchronous function that starts or resumes playing an audio file.
+
+Supported Platforms
+-------------------
+
+- Android
+- BlackBerry WebWorks (OS 5.0 and higher)
+- iOS
+- Windows Phone 7 ( Mango )
+    
+Quick Example
+-------------
+
+    // Play audio
+    //
+    function playAudio(url) {
+        // Play the audio file at url
+        var my_media = new Media(url,
+            // success callback
+            function() {
+                console.log("playAudio():Audio Success");
+            },
+            // error callback
+            function(err) {
+                console.log("playAudio():Audio Error: "+err);
+        });
+
+        // Play audio
+        my_media.play();
+    }
+
+
+Full Example
+------------
+
+        <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
+                              "http://www.w3.org/TR/html4/strict.dtd">
+        <html>
+          <head>
+            <title>Media Example</title>
+        
+            <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
+            <script type="text/javascript" charset="utf-8">
+        
+            // Wait for Cordova to load
+            //
+            document.addEventListener("deviceready", onDeviceReady, false);
+        
+            // Cordova is ready
+            //
+            function onDeviceReady() {
+                playAudio("http://audio.ibeat.org/content/p1rj1s/p1rj1s_-_rockGuitar.mp3");
+            }
+        
+            // Audio player
+            //
+            var my_media = null;
+            var mediaTimer = null;
+        
+            // Play audio
+            //
+            function playAudio(src) {
+            	if (my_media == null) {
+                	// Create Media object from src
+                	my_media = new Media(src, onSuccess, onError);
+            	} // else play current audio
+                // Play audio
+                my_media.play();
+        
+                // Update my_media position every second
+                if (mediaTimer == null) {
+                    mediaTimer = setInterval(function() {
+                        // get my_media position
+                        my_media.getCurrentPosition(
+                            // success callback
+                            function(position) {
+                                if (position > -1) {
+                                    setAudioPosition((position) + " sec");
+                                }
+                            },
+                            // error callback
+                            function(e) {
+                                console.log("Error getting pos=" + e);
+                                setAudioPosition("Error: " + e);
+                            }
+                        );
+                    }, 1000);
+                }
+            }
+        
+            // Pause audio
+            // 
+            function pauseAudio() {
+                if (my_media) {
+                    my_media.pause();
+                }
+            }
+        
+            // Stop audio
+            // 
+            function stopAudio() {
+                if (my_media) {
+                    my_media.stop();
+                }
+                clearInterval(mediaTimer);
+                mediaTimer = null;
+            }
+        
+            // onSuccess Callback
+            //
+            function onSuccess() {
+                console.log("playAudio():Audio Success");
+            }
+        
+            // onError Callback 
+            //
+            function onError(error) {
+                alert('code: '    + error.code    + '\n' + 
+                      'message: ' + error.message + '\n');
+            }
+        
+            // Set audio position
+            // 
+            function setAudioPosition(position) {
+                document.getElementById('audio_position').innerHTML = position;
+            }
+        
+            </script>
+          </head>
+          <body>
+            <a href="#" class="btn large" onclick="playAudio('http://audio.ibeat.org/content/p1rj1s/p1rj1s_-_rockGuitar.mp3');">Play Audio</a>
+            <a href="#" class="btn large" onclick="pauseAudio();">Pause Playing Audio</a>
+            <a href="#" class="btn large" onclick="stopAudio();">Stop Playing Audio</a>
+            <p id="audio_position"></p>
+          </body>
+        </html>
+
+BlackBerry WebWorks Quirks
+----------
+
+- BlackBerry devices support a limited number of simultaneous audio channels. CDMA devices only support a single audio channel. Other devices support up to two simultaneous channels. Attempting to play more audio files then the supported amount will result in previous playback being stopped.
+
+iOS Quirk
+---------
+
+- __numberOfLoops__
+ 
+    Pass in this option to the **play** method to specify the number of times you want the media file to play. e.g:
+    
+        var myMedia = new Media("http://audio.ibeat.org/content/p1rj1s/p1rj1s_-_rockGuitar.mp3")
+        myMedia.play({ numberOfLoops: 2 })
+
+- __playAudioWhenScreenIsLocked__
+ 
+    Pass in this option to the **play** method to specify whether you want to play the audio of the media file when the screen is locked (this defaults to true if not set). If this is set to true, it will ignore the state of the hardware mute button. e.g:
+    
+        var myMedia = new Media("http://audio.ibeat.org/content/p1rj1s/p1rj1s_-_rockGuitar.mp3")
+        myMedia.play({ playAudioWhenScreenIsLocked : false })
diff --git a/docs/en/1.9.0/cordova/media/media.release.md b/docs/en/1.9.0/cordova/media/media.release.md
new file mode 100644
index 0000000..34f23ff
--- /dev/null
+++ b/docs/en/1.9.0/cordova/media/media.release.md
@@ -0,0 +1,154 @@
+---
+license: 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.
+---
+
+media.release
+=================
+
+Releases the underlying operating systems audio resources.
+
+    media.release();
+
+
+Description
+-----------
+
+Function `media.release` is a synchronous function that releases the underlying operating systems audio resources.  This function is particularly important for Android as there are a finite amount of OpenCore instances for media playback.  Developers should call the 'release' function when they no longer need the Media resource.
+
+Supported Platforms
+-------------------
+
+- Android
+- BlackBerry WebWorks (OS 5.0 and higher)
+- iOS
+- Windows Phone 7 ( Mango )
+    
+Quick Example
+-------------
+
+        // Audio player
+        //
+        var my_media = new Media(src, onSuccess, onError);
+        
+        my_media.play();
+        my_media.stop();
+        my_media.release();
+
+Full Example
+------------
+
+        <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
+                              "http://www.w3.org/TR/html4/strict.dtd">
+        <html>
+          <head>
+            <title>Media Example</title>
+        
+            <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
+            <script type="text/javascript" charset="utf-8">
+        
+            // Wait for Cordova to load
+            //
+            document.addEventListener("deviceready", onDeviceReady, false);
+        
+            // Cordova is ready
+            //
+            function onDeviceReady() {
+                playAudio("http://audio.ibeat.org/content/p1rj1s/p1rj1s_-_rockGuitar.mp3");
+            }
+        
+            // Audio player
+            //
+            var my_media = null;
+            var mediaTimer = null;
+        
+            // Play audio
+            //
+            function playAudio(src) {
+                // Create Media object from src
+                my_media = new Media(src, onSuccess, onError);
+        
+                // Play audio
+                my_media.play();
+        
+                // Update my_media position every second
+                if (mediaTimer == null) {
+                    mediaTimer = setInterval(function() {
+                        // get my_media position
+                        my_media.getCurrentPosition(
+                            // success callback
+                            function(position) {
+                                if (position > -1) {
+                                    setAudioPosition((position) + " sec");
+                                }
+                            },
+                            // error callback
+                            function(e) {
+                                console.log("Error getting pos=" + e);
+                                setAudioPosition("Error: " + e);
+                            }
+                        );
+                    }, 1000);
+                }
+            }
+        
+            // Pause audio
+            // 
+            function pauseAudio() {
+                if (my_media) {
+                    my_media.pause();
+                }
+            }
+        
+            // Stop audio
+            // 
+            function stopAudio() {
+                if (my_media) {
+                    my_media.stop();
+                }
+                clearInterval(mediaTimer);
+                mediaTimer = null;
+            }
+        
+            // onSuccess Callback
+            //
+            function onSuccess() {
+                console.log("playAudio():Audio Success");
+            }
+        
+            // onError Callback 
+            //
+            function onError(error) {
+                alert('code: '    + error.code    + '\n' + 
+                      'message: ' + error.message + '\n');
+            }
+        
+            // Set audio position
+            // 
+            function setAudioPosition(position) {
+                document.getElementById('audio_position').innerHTML = position;
+            }
+        
+            </script>
+          </head>
+          <body>
+            <a href="#" class="btn large" onclick="playAudio('http://audio.ibeat.org/content/p1rj1s/p1rj1s_-_rockGuitar.mp3');">Play Audio</a>
+            <a href="#" class="btn large" onclick="pauseAudio();">Pause Playing Audio</a>
+            <a href="#" class="btn large" onclick="stopAudio();">Stop Playing Audio</a>
+            <p id="audio_position"></p>
+          </body>
+        </html>
diff --git a/docs/en/1.9.0/cordova/media/media.seekTo.md b/docs/en/1.9.0/cordova/media/media.seekTo.md
new file mode 100644
index 0000000..abd7d97
--- /dev/null
+++ b/docs/en/1.9.0/cordova/media/media.seekTo.md
@@ -0,0 +1,157 @@
+---
+license: 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.
+---
+
+media.seekTo
+========================
+
+Sets the current position within an audio file.
+
+    media.seekTo(milliseconds);
+
+Parameters
+----------
+
+- __milliseconds__: The position to set the playback position within the audio in milliseconds. .
+
+
+Description
+-----------
+
+Function `media.seekTo` is an asynchronous function that updates the current position of the underlying audio file of a Media object. Also updates the ___position__ parameter within the Media object. 
+
+Supported Platforms
+-------------------
+
+- Android
+- BlackBerry WebWorks (OS 6.0 and higher)
+- iOS
+- Windows Phone 7 ( Mango )
+    
+Quick Example
+-------------
+
+        // Audio player
+        //
+        var my_media = new Media(src, onSuccess, onError);
+		my_media.play();
+        // SeekTo to 10 seconds after 5 seconds
+        setTimeout(function() {
+            my_media.seekTo(10000);
+        }, 5000);
+
+
+Full Example
+------------
+
+        <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
+                      "http://www.w3.org/TR/html4/strict.dtd">
+        <html>
+          <head>
+            <title>Media Example</title>
+        
+            <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
+            <script type="text/javascript" charset="utf-8">
+        
+            // Wait for Cordova to load
+            //
+            document.addEventListener("deviceready", onDeviceReady, false);
+        
+            // Cordova is ready
+            //
+            function onDeviceReady() {
+                playAudio("http://audio.ibeat.org/content/p1rj1s/p1rj1s_-_rockGuitar.mp3");
+            }
+        
+            // Audio player
+            //
+            var my_media = null;
+            var mediaTimer = null;
+        
+            // Play audio
+            //
+            function playAudio(src) {
+                // Create Media object from src
+                my_media = new Media(src, onSuccess, onError);
+        
+                // Play audio
+                my_media.play();
+                // Update media position every second
+        		mediaTimer = setInterval(function() {
+            		// get media position
+           			my_media.getCurrentPosition(
+                		// success callback
+                		function(position) {
+                    		if (position > -1) {
+                        		setAudioPosition(position + " sec");
+                    		}
+                		},
+                		// error callback
+                		function(e) {
+                    		console.log("Error getting pos=" + e);
+                		}
+            		);
+        		}, 1000);
+        		// SeekTo to 10 seconds after 5 seconds
+        		setTimeout(function() {
+            		my_media.seekTo(10000);
+           		}, 5000);
+     		}
+        
+            // Stop audio
+            // 
+            function stopAudio() {
+                if (my_media) {
+                    my_media.stop();
+                }
+                clearInterval(mediaTimer);
+                mediaTimer = null;
+            }
+        
+            // onSuccess Callback
+            //
+            function onSuccess() {
+                console.log("playAudio():Audio Success");
+            }
+        
+            // onError Callback 
+            //
+            function onError(error) {
+                alert('code: '    + error.code    + '\n' + 
+                      'message: ' + error.message + '\n');
+            }
+        
+            // Set audio position
+            // 
+            function setAudioPosition(position) {
+                document.getElementById('audio_position').innerHTML = position;
+            }
+        
+            </script>
+          </head>
+          <body>
+            <a href="#" class="btn large" onclick="playAudio('http://audio.ibeat.org/content/p1rj1s/p1rj1s_-_rockGuitar.mp3');">Play Audio</a>
+            <a href="#" class="btn large" onclick="stopAudio();">Stop Playing Audio</a>
+            <p id="audio_position"></p>
+          </body>
+        </html>
+
+BlackBerry WebWorks Quirks
+----------
+
+- This API is not supported on BlackBerry OS 5 devices.
diff --git a/docs/en/1.9.0/cordova/media/media.startRecord.md b/docs/en/1.9.0/cordova/media/media.startRecord.md
new file mode 100644
index 0000000..231167a
--- /dev/null
+++ b/docs/en/1.9.0/cordova/media/media.startRecord.md
@@ -0,0 +1,141 @@
+---
+license: 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.
+---
+
+media.startRecord
+=================
+
+Starts recording an audio file.
+
+    media.startRecord();
+
+
+Description
+-----------
+
+Function `media.startRecord` is a synchronous function that starts recording an audio file.
+
+Supported Platforms
+-------------------
+
+- Android
+- BlackBerry WebWorks (OS 5.0 and higher)
+- iOS
+- Windows Phone 7 ( Mango )
+    
+Quick Example
+-------------
+
+    // Record audio
+    // 
+    function recordAudio() {
+        var src = "myrecording.mp3";
+        var mediaRec = new Media(src,
+            // success callback
+            function() {
+                console.log("recordAudio():Audio Success");
+            },
+            
+            // error callback
+            function(err) {
+                console.log("recordAudio():Audio Error: "+ err.code);
+            });
+
+        // Record audio
+        mediaRec.startRecord();
+    }
+
+
+Full Example
+------------
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>Device Properties Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for Cordova to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        // Record audio
+        // 
+        function recordAudio() {
+            var src = "myrecording.mp3";
+            var mediaRec = new Media(src, onSuccess, onError);
+
+            // Record audio
+            mediaRec.startRecord();
+
+            // Stop recording after 10 sec
+            var recTime = 0;
+            var recInterval = setInterval(function() {
+                recTime = recTime + 1;
+                setAudioPosition(recTime + " sec");
+                if (recTime >= 10) {
+                    clearInterval(recInterval);
+                    mediaRec.stopRecord();
+                }
+            }, 1000);
+        }
+
+        // Cordova is ready
+        //
+        function onDeviceReady() {
+            recordAudio();
+        }
+    
+        // onSuccess Callback
+        //
+        function onSuccess() {
+            console.log("recordAudio():Audio Success");
+        }
+    
+        // onError Callback 
+        //
+        function onError(error) {
+            alert('code: '    + error.code    + '\n' + 
+                  'message: ' + error.message + '\n');
+        }
+
+        // Set audio position
+        // 
+        function setAudioPosition(position) {
+            document.getElementById('audio_position').innerHTML = position;
+        }
+
+        </script>
+      </head>
+      <body>
+        <p id="media">Recording audio...</p>
+        <p id="audio_position"></p>
+      </body>
+    </html>
+
+BlackBerry WebWorks Quirks
+----------
+
+- BlackBerry devices record audio in Adaptive Multi-Rate format. The specified file must end with a .amr extension.
+
+iOS Quirks
+----------
+
+- The file to record to must already exist and should be of type .wav. The File API's can be used to create the file.
diff --git a/docs/en/1.9.0/cordova/media/media.stop.md b/docs/en/1.9.0/cordova/media/media.stop.md
new file mode 100644
index 0000000..1181d7b
--- /dev/null
+++ b/docs/en/1.9.0/cordova/media/media.stop.md
@@ -0,0 +1,169 @@
+---
+license: 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.
+---
+
+media.stop
+==========
+
+Stops playing an audio file.
+
+    media.stop();
+
+
+Description
+-----------
+
+Function `media.stop` is a synchronous function that stops playing an audio file.
+
+Supported Platforms
+-------------------
+
+- Android
+- BlackBerry WebWorks (OS 5.0 and higher)
+- iOS
+- Windows Phone 7 ( Mango )
+    
+Quick Example
+-------------
+
+    // Play audio
+    //
+    function playAudio(url) {
+        // Play the audio file at url
+        var my_media = new Media(url,
+            // success callback
+            function() {
+                console.log("playAudio():Audio Success");
+            },
+            // error callback
+            function(err) {
+                console.log("playAudio():Audio Error: "+err);
+        });
+
+        // Play audio
+        my_media.play();
+
+        // Pause after 10 seconds
+        setTimeout(function() {
+            my_media.stop();
+        }, 10000);        
+    }
+
+Full Example
+------------
+
+        <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
+                              "http://www.w3.org/TR/html4/strict.dtd">
+        <html>
+          <head>
+            <title>Media Example</title>
+        
+            <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
+            <script type="text/javascript" charset="utf-8">
+        
+            // Wait for Cordova to load
+            //
+            document.addEventListener("deviceready", onDeviceReady, false);
+        
+            // Cordova is ready
+            //
+            function onDeviceReady() {
+                playAudio("http://audio.ibeat.org/content/p1rj1s/p1rj1s_-_rockGuitar.mp3");
+            }
+        
+            // Audio player
+            //
+            var my_media = null;
+            var mediaTimer = null;
+        
+            // Play audio
+            //
+            function playAudio(src) {
+                // Create Media object from src
+                my_media = new Media(src, onSuccess, onError);
+        
+                // Play audio
+                my_media.play();
+        
+                // Update my_media position every second
+                if (mediaTimer == null) {
+                    mediaTimer = setInterval(function() {
+                        // get my_media position
+                        my_media.getCurrentPosition(
+                            // success callback
+                            function(position) {
+                                if (position > -1) {
+                                    setAudioPosition((position) + " sec");
+                                }
+                            },
+                            // error callback
+                            function(e) {
+                                console.log("Error getting pos=" + e);
+                                setAudioPosition("Error: " + e);
+                            }
+                        );
+                    }, 1000);
+                }
+            }
+        
+            // Pause audio
+            // 
+            function pauseAudio() {
+                if (my_media) {
+                    my_media.pause();
+                }
+            }
+        
+            // Stop audio
+            // 
+            function stopAudio() {
+                if (my_media) {
+                    my_media.stop();
+                }
+                clearInterval(mediaTimer);
+                mediaTimer = null;
+            }
+        
+            // onSuccess Callback
+            //
+            function onSuccess() {
+                console.log("playAudio():Audio Success");
+            }
+        
+            // onError Callback 
+            //
+            function onError(error) {
+                alert('code: '    + error.code    + '\n' + 
+                      'message: ' + error.message + '\n');
+            }
+        
+            // Set audio position
+            // 
+            function setAudioPosition(position) {
+                document.getElementById('audio_position').innerHTML = position;
+            }
+        
+            </script>
+          </head>
+          <body>
+            <a href="#" class="btn large" onclick="playAudio('http://audio.ibeat.org/content/p1rj1s/p1rj1s_-_rockGuitar.mp3');">Play Audio</a>
+            <a href="#" class="btn large" onclick="pauseAudio();">Pause Playing Audio</a>
+            <a href="#" class="btn large" onclick="stopAudio();">Stop Playing Audio</a>
+            <p id="audio_position"></p>
+          </body>
+        </html>
diff --git a/docs/en/1.9.0/cordova/media/media.stopRecord.md b/docs/en/1.9.0/cordova/media/media.stopRecord.md
new file mode 100644
index 0000000..c796a3d
--- /dev/null
+++ b/docs/en/1.9.0/cordova/media/media.stopRecord.md
@@ -0,0 +1,139 @@
+---
+license: 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.
+---
+
+media.stopRecord
+================
+
+Stops recording an audio file.
+
+    media.stopRecord();
+
+
+Description
+-----------
+
+Function `media.stopRecord` is a synchronous function that stops recording an audio file.
+
+Supported Platforms
+-------------------
+
+- Android
+- BlackBerry WebWorks (OS 5.0 and higher)
+- iOS
+- Windows Phone 7 ( Mango )
+    
+Quick Example
+-------------
+
+    // Record audio
+    // 
+    function recordAudio() {
+        var src = "myrecording.mp3";
+        var mediaRec = new Media(src,
+            // success callback
+            function() {
+                console.log("recordAudio():Audio Success");
+            },
+            
+            // error callback
+            function(err) {
+                console.log("recordAudio():Audio Error: "+ err.code);
+            });
+
+        // Record audio
+        mediaRec.startRecord();
+
+        // Stop recording after 10 seconds
+        setTimeout(function() {
+            mediaRec.stopRecord();
+        }, 10000);
+    }
+
+
+Full Example
+------------
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>Device Properties Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for Cordova to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        // Record audio
+        // 
+        function recordAudio() {
+            var src = "myrecording.mp3";
+            var mediaRec = new Media(src, onSuccess, onError);
+
+            // Record audio
+            mediaRec.startRecord();
+
+            // Stop recording after 10 sec
+            var recTime = 0;
+            var recInterval = setInterval(function() {
+                recTime = recTime + 1;
+                setAudioPosition(recTime + " sec");
+                if (recTime >= 10) {
+                    clearInterval(recInterval);
+                    mediaRec.stopRecord();
+                }
+            }, 1000);
+        }
+
+        // Cordova is ready
+        //
+        function onDeviceReady() {
+            recordAudio();
+        }
+    
+        // onSuccess Callback
+        //
+        function onSuccess() {
+            console.log("recordAudio():Audio Success");
+        }
+    
+        // onError Callback 
+        //
+        function onError(error) {
+            alert('code: '    + error.code    + '\n' + 
+                  'message: ' + error.message + '\n');
+        }
+
+        // Set audio position
+        // 
+        function setAudioPosition(position) {
+            document.getElementById('audio_position').innerHTML = position;
+        }
+
+        </script>
+      </head>
+      <body>
+        <p id="media">Recording audio...</p>
+        <p id="audio_position"></p>
+      </body>
+    </html>
+
+
+
diff --git a/docs/en/1.9.0/cordova/notification/notification.alert.md b/docs/en/1.9.0/cordova/notification/notification.alert.md
new file mode 100644
index 0000000..9278c81
--- /dev/null
+++ b/docs/en/1.9.0/cordova/notification/notification.alert.md
@@ -0,0 +1,116 @@
+---
+license: 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.
+---
+
+notification.alert
+==================
+
+Shows a custom alert or dialog box.
+
+    navigator.notification.alert(message, alertCallback, [title], [buttonName])
+
+- __message:__ Dialog message (`String`)
+- __alertCallback:__ Callback to invoke when alert dialog is dismissed. (`Function`)
+- __title:__ Dialog title (`String`) (Optional, Default: "Alert")
+- __buttonName:__ Button name (`String`) (Optional, Default: "OK")
+    
+Description
+-----------
+
+Most Cordova implementations use a native dialog box for this feature.  However, some platforms simply use the browser's `alert` function, which is typically less customizable.
+
+Supported Platforms
+-------------------
+
+- Android
+- BlackBerry WebWorks (OS 5.0 and higher)
+- iPhone
+- Windows Phone 7 ( Mango )
+- Bada 1.2 & 2.x
+- webOS
+
+Quick Example
+-------------
+
+    // Android / BlackBerry WebWorks (OS 5.0 and higher) / iPhone
+    //
+    function alertDismissed() {
+        // do something
+    }
+
+    navigator.notification.alert(
+        'You are the winner!',  // message
+        alertDismissed,         // callback
+        'Game Over',            // title
+        'Done'                  // buttonName
+    );
+        
+Full Example
+------------
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>Notification Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for Cordova to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        // Cordova is ready
+        //
+        function onDeviceReady() {
+            // Empty
+        }
+    
+        // alert dialog dismissed
+	    function alertDismissed() {
+	        // do something
+	    }
+
+        // Show a custom alert
+        //
+        function showAlert() {
+		    navigator.notification.alert(
+		        'You are the winner!',  // message
+		        alertDismissed,         // callback
+		        'Game Over',            // title
+		        'Done'                  // buttonName
+		    );
+        }
+    
+        </script>
+      </head>
+      <body>
+        <p><a href="#" onclick="showAlert(); return false;">Show Alert</a></p>
+      </body>
+    </html>
+
+Windows Phone 7 Quirks
+-------------
+
+- Ignores button names, always uses 'OK'
+- There is no built in browser alert, so if you want to just write alert('foo'); you can assign window.alert = navigator.notification.alert;
+- alert + confirm calls are non-blocking, and result is only available asyncronously.
+
+Bada 2.x Quirks
+---------------
+- alert uses javascript alert
diff --git a/docs/en/1.9.0/cordova/notification/notification.beep.md b/docs/en/1.9.0/cordova/notification/notification.beep.md
new file mode 100644
index 0000000..46d6d8c
--- /dev/null
+++ b/docs/en/1.9.0/cordova/notification/notification.beep.md
@@ -0,0 +1,113 @@
+---
+license: 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.
+---
+
+notification.beep
+=================
+
+The device will play a beep sound.
+
+    navigator.notification.beep(times);
+
+- __times:__ The number of times to repeat the beep (`Number`)
+
+Supported Platforms
+-------------------
+
+- Android
+- BlackBerry WebWorks (OS 5.0 and higher)
+- iPhone
+- Windows Phone 7 ( Mango )
+- Bada 1.2 & 2.x
+
+Quick Example
+-------------
+
+    // Beep twice!
+    navigator.notification.beep(2);
+
+Full Example
+------------
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>Notification Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for Cordova to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        // Cordova is ready
+        //
+        function onDeviceReady() {
+            // Empty
+        }
+
+        // Show a custom alert
+        //
+        function showAlert() {
+		    navigator.notification.alert(
+		        'You are the winner!',  // message
+		        'Game Over',            // title
+		        'Done'                  // buttonName
+		    );
+        }
+
+        // Beep three times
+        //
+        function playBeep() {
+            navigator.notification.beep(3);
+        }
+
+        // Vibrate for 2 seconds
+        //
+        function vibrate() {
+            navigator.notification.vibrate(2000);
+        }
+
+        </script>
+      </head>
+      <body>
+        <p><a href="#" onclick="showAlert(); return false;">Show Alert</a></p>
+        <p><a href="#" onclick="playBeep(); return false;">Play Beep</a></p>
+        <p><a href="#" onclick="vibrate(); return false;">Vibrate</a></p>
+      </body>
+    </html>
+
+Android Quirks
+--------------
+
+- Android plays the default "Notification ringtone" specified under the "Settings/Sound & Display" panel.
+
+iPhone Quirks
+-------------
+
+- Ignores the beep count argument.
+- There is no native beep API for iPhone.
+  - Cordova implements beep by playing an audio file via the media API.
+  - The user must provide a file with the desired beep tone.
+  - This file must be less than 30 seconds long, located in the www/ root, and must be named `beep.wav`.
+
+Windows Phone 7 Quirks
+-------------
+
+- WP7 Cordova lib includes a generic beep file that is used. 
diff --git a/docs/en/1.9.0/cordova/notification/notification.confirm.md b/docs/en/1.9.0/cordova/notification/notification.confirm.md
new file mode 100755
index 0000000..331acfe
--- /dev/null
+++ b/docs/en/1.9.0/cordova/notification/notification.confirm.md
@@ -0,0 +1,132 @@
+---
+license: 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.
+---
+
+notification.confirm
+====================
+
+Shows a customizable confirmation dialog box.
+
+    navigator.notification.confirm(message, confirmCallback, [title], [buttonLabels])
+
+- __message:__ Dialog message (`String`)
+- __confirmCallback:__ - Callback to invoke with index of button pressed (1, 2 or 3). (`Function`)
+- __title:__ Dialog title (`String`) (Optional, Default: "Confirm")
+- __buttonLabels:__ Comma separated string with button labels (`String`) (Optional, Default: "OK,Cancel")
+    
+Description
+-----------
+
+Function `notification.confirm` displays a native dialog box that is more customizable than the browser's `confirm` function.
+
+confirmCallback
+---------------
+
+The `confirmCallback` is called when the user has pressed one of the buttons on the confirmation dialog box.
+
+The callback takes the argument `buttonIndex` (`Number`), which is the index of the pressed button. It's important to note that the index uses one-based indexing, so the value will be `1`, `2`, `3`, etc.
+
+Supported Platforms
+-------------------
+
+- Android
+- BlackBerry WebWorks (OS 5.0 and higher)
+- iPhone
+- Windows Phone 7 ( Mango )
+- Bada 1.2 & 2.x
+
+Quick Example
+-------------
+
+	// process the confirmation dialog result
+	function onConfirm(buttonIndex) {
+		alert('You selected button ' + buttonIndex);
+	}
+
+    // Show a custom confirmation dialog
+    //
+    function showConfirm() {
+        navigator.notification.confirm(
+	        'You are the winner!',  // message
+			onConfirm,				// callback to invoke with index of button pressed
+	        'Game Over',            // title
+	        'Restart,Exit'          // buttonLabels
+        );
+    }
+        
+Full Example
+------------
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>Notification Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for Cordova to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        // Cordova is ready
+        //
+        function onDeviceReady() {
+            // Empty
+        }
+    
+		// process the confirmation dialog result
+		function onConfirm(buttonIndex) {
+			alert('You selected button ' + buttonIndex);
+		}
+
+        // Show a custom confirmation dialog
+        //
+        function showConfirm() {
+            navigator.notification.confirm(
+		        'You are the winner!',  // message
+				onConfirm,				// callback to invoke with index of button pressed
+		        'Game Over',            // title
+		        'Restart,Exit'          // buttonLabels
+            );
+        }
+    
+        </script>
+      </head>
+      <body>
+        <p><a href="#" onclick="showConfirm(); return false;">Show Confirm</a></p>
+      </body>
+    </html>
+
+Windows Phone 7 Quirks
+----------------------
+
+- Ignores button names, always `'OK|Cancel'`.
+- There is no built-in browser function for `window.confirm`
+    - You can bind `window.confirm` by assigning `window.confirm = navigator.notification.confirm;`.
+- Calls to `alert` and `confirm` are non-blocking and result is only available asyncronously.
+
+Bada 2.x Quirks
+---------------
+
+- `confirm` uses the browser's built-in `alert` function.
+
+Bada 1.2 Quirks
+---------------
+
+- Ignore button names, always `'OK|Cancel'`.
diff --git a/docs/en/1.9.0/cordova/notification/notification.md b/docs/en/1.9.0/cordova/notification/notification.md
new file mode 100644
index 0000000..d2dd991
--- /dev/null
+++ b/docs/en/1.9.0/cordova/notification/notification.md
@@ -0,0 +1,80 @@
+---
+license: 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.
+---
+
+Notification
+============
+
+> Visual, audible, and tactile device notifications.
+
+Methods
+-------
+
+- notification.alert
+- notification.confirm
+- notification.beep
+- notification.vibrate
+
+Permissions
+-----------
+
+### Android
+
+#### app/res/xml/plugins.xml
+
+    <plugin name="Notification" value="org.apache.cordova.Notification"/>
+
+#### app/AndroidManifest.xml
+
+    <uses-permission android:name="android.permission.VIBRATE" />
+
+### Bada
+
+#### manifest.xml
+
+    <Privilege>
+        <Name>SYSTEM_SERVICE</Name>
+    </Privilege>
+
+### BlackBerry WebWorks
+
+#### www/plugins.xml
+
+    <plugin name="Notification" value="org.apache.cordova.notification.Notification" />
+
+#### www/config.xml
+
+    <feature id="blackberry.ui.dialog" />
+
+### iOS
+
+#### App/Supporting Files/Cordova.plist
+
+    <key>Plugins</key>
+    <dict>
+        <key>Notification</key>
+        <string>CDVNotification</string>
+    </dict>
+
+### webOS
+
+    No permissions are required.
+
+### Windows Phone
+
+    No permissions are required.
diff --git a/docs/en/1.9.0/cordova/notification/notification.vibrate.md b/docs/en/1.9.0/cordova/notification/notification.vibrate.md
new file mode 100644
index 0000000..525e823
--- /dev/null
+++ b/docs/en/1.9.0/cordova/notification/notification.vibrate.md
@@ -0,0 +1,103 @@
+---
+license: 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.
+---
+
+notification.vibrate
+====================
+
+Vibrates the device for the specified amount of time.
+
+    navigator.notification.vibrate(milliseconds)
+
+- __time:__ Milliseconds to vibrate the device. 1000 milliseconds equals 1 second (`Number`)
+
+Supported Platforms
+-------------------
+
+- Android
+- BlackBerry WebWorks (OS 5.0 and higher)
+- iPhone
+- Windows Phone 7
+- Bada 1.2 & 2.x
+
+Quick Example
+-------------
+
+    // Vibrate for 2.5 seconds
+    //
+    navigator.notification.vibrate(2500);
+
+Full Example
+------------
+    
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>Notification Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for Cordova to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        // Cordova is ready
+        //
+        function onDeviceReady() {
+            // Empty
+        }
+    
+        // Show a custom alert
+        //
+        function showAlert() {
+		    navigator.notification.alert(
+		        'You are the winner!',  // message
+		        'Game Over',            // title
+		        'Done'                  // buttonName
+		    );
+        }
+    
+        // Beep three times
+        //
+        function playBeep() {
+            navigator.notification.beep(3);
+        }
+    
+        // Vibrate for 2 seconds
+        //
+        function vibrate() {
+            navigator.notification.vibrate(2000);
+        }
+
+        </script>
+      </head>
+      <body>
+        <p><a href="#" onclick="showAlert(); return false;">Show Alert</a></p>
+        <p><a href="#" onclick="playBeep(); return false;">Play Beep</a></p>
+        <p><a href="#" onclick="vibrate(); return false;">Vibrate</a></p>
+      </body>
+    </html>
+
+iPhone Quirks
+-------------
+
+- __time:__ Ignores the time and vibrates for a pre-set amount of time.
+
+        navigator.notification.vibrate();
+        navigator.notification.vibrate(2500);   // 2500 is ignored
diff --git a/docs/en/1.9.0/cordova/storage/database/database.md b/docs/en/1.9.0/cordova/storage/database/database.md
new file mode 100644
index 0000000..917ad11
--- /dev/null
+++ b/docs/en/1.9.0/cordova/storage/database/database.md
@@ -0,0 +1,124 @@
+---
+license: 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.
+---
+
+Database
+=======
+
+Contains methods that allow the user to manipulate the Database
+
+Methods
+-------
+
+- __transaction__: Runs a database transaction. 
+- __changeVersion__: method allows scripts to atomically verify the version number and change it at the same time as doing a schema update. 
+
+Details
+-------
+
+A Database object is returned from a call to `window.openDatabase()`.
+
+Supported Platforms
+-------------------
+
+- Android
+- BlackBerry WebWorks (OS 6.0 and higher)
+- iPhone
+- webOS
+
+Transaction Quick Example
+------------------
+	function populateDB(tx) {
+		 tx.executeSql('DROP TABLE IF EXISTS DEMO');
+		 tx.executeSql('CREATE TABLE IF NOT EXISTS DEMO (id unique, data)');
+		 tx.executeSql('INSERT INTO DEMO (id, data) VALUES (1, "First row")');
+		 tx.executeSql('INSERT INTO DEMO (id, data) VALUES (2, "Second row")');
+	}
+	
+	function errorCB(err) {
+		alert("Error processing SQL: "+err.code);
+	}
+	
+	function successCB() {
+		alert("success!");
+	}
+	
+	var db = window.openDatabase("Database", "1.0", "Cordova Demo", 200000);
+	db.transaction(populateDB, errorCB, successCB);
+
+Change Version Quick Example
+-------------------
+
+	var db = window.openDatabase("Database", "1.0", "Cordova Demo", 200000);
+	db.changeVersion("1.0", "1.1");
+
+Full Example
+------------
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>Storage Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for Cordova to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        // Cordova is ready
+        //
+        function onDeviceReady() {
+			var db = window.openDatabase("Database", "1.0", "Cordova Demo", 200000);
+			db.transaction(populateDB, errorCB, successCB);
+        }
+		
+		// Populate the database 
+		//
+		function populateDB(tx) {
+			 tx.executeSql('DROP TABLE IF EXISTS DEMO');
+			 tx.executeSql('CREATE TABLE IF NOT EXISTS DEMO (id unique, data)');
+			 tx.executeSql('INSERT INTO DEMO (id, data) VALUES (1, "First row")');
+			 tx.executeSql('INSERT INTO DEMO (id, data) VALUES (2, "Second row")');
+		}
+		
+		// Transaction error callback
+		//
+		function errorCB(tx, err) {
+			alert("Error processing SQL: "+err);
+		}
+		
+		// Transaction success callback
+		//
+		function successCB() {
+			alert("success!");
+		}
+	
+        </script>
+      </head>
+      <body>
+        <h1>Example</h1>
+        <p>Database</p>
+      </body>
+    </html>
+
+Android 1.X Quirks
+------------------
+
+- __changeVersion:__ This method is not support by Android 1.X devices.
diff --git a/docs/en/1.9.0/cordova/storage/localstorage/localstorage.md b/docs/en/1.9.0/cordova/storage/localstorage/localstorage.md
new file mode 100644
index 0000000..b3d530c
--- /dev/null
+++ b/docs/en/1.9.0/cordova/storage/localstorage/localstorage.md
@@ -0,0 +1,120 @@
+---
+license: 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.
+---
+
+localStorage
+===============
+
+Provides access to a W3C Storage interface (http://dev.w3.org/html5/webstorage/#the-localstorage-attribute)
+
+    var storage = window.localStorage;
+
+Methods
+-------
+
+- __key__: Returns the name of the key at the position specified. 
+- __getItem__: Returns the item identified by it's key.
+- __setItem__: Saves and item at the key provided.
+- __removeItem__: Removes the item identified by it's key.
+- __clear__: Removes all of the key value pairs.
+
+Details
+-----------
+
+localStorage provides an interface to a W3C Storage interface.  It allows one to save data as key-value pairs.
+
+Note: window.sessionStorage provides the same interface, but is cleared between app launches.
+
+Supported Platforms
+-------------------
+
+- Android
+- BlackBerry WebWorks (OS 6.0 and higher)
+- iPhone
+- Windows Phone 7
+- webOS
+
+Key Quick Example
+-------------
+
+    var keyName = window.localStorage.key(0);
+
+Set Item Quick Example
+-------------
+
+    window.localStorage.setItem("key", "value");
+
+Get Item Quick Example
+-------------
+
+	var value = window.localStorage.getItem("key");
+	// value is now equal to "value"
+
+Remove Item Quick Example
+-------------
+
+	window.localStorage.removeItem("key");
+
+Clear Quick Example
+-------------
+
+	window.localStorage.clear();
+
+Full Example
+------------
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>Storage Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for Cordova to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        // Cordova is ready
+        //
+        function onDeviceReady() {
+			window.localStorage.setItem("key", "value");
+			var keyname = window.localStorage.key(i);
+			// keyname is now equal to "key"
+			var value = window.localStorage.getItem("key");
+			// value is now equal to "value"
+			window.localStorage.removeItem("key");
+			window.localStorage.setItem("key2", "value2");
+			window.localStorage.clear();
+			// localStorage is now empty
+        }
+    
+
+        </script>
+      </head>
+      <body>
+        <h1>Example</h1>
+        <p>localStorage</p>
+      </body>
+    </html>
+
+
+Windows Phone 7 Quirks
+-------------
+
+- dot notation is NOT available on Windows Phone. Be sure to use : window.localStorage.setItem/getItem, and not the w3 spec defined calls to window.localStorage.someKey = 'someValue';
diff --git a/docs/en/1.9.0/cordova/storage/parameters/display_name.md b/docs/en/1.9.0/cordova/storage/parameters/display_name.md
new file mode 100644
index 0000000..69af089
--- /dev/null
+++ b/docs/en/1.9.0/cordova/storage/parameters/display_name.md
@@ -0,0 +1,23 @@
+---
+license: 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.
+---
+
+database_displayname
+==================
+
+The display name of the database.
\ No newline at end of file
diff --git a/docs/en/1.9.0/cordova/storage/parameters/name.md b/docs/en/1.9.0/cordova/storage/parameters/name.md
new file mode 100644
index 0000000..c39dcbf
--- /dev/null
+++ b/docs/en/1.9.0/cordova/storage/parameters/name.md
@@ -0,0 +1,23 @@
+---
+license: 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.
+---
+
+database_name
+============
+
+The name of the database.
\ No newline at end of file
diff --git a/docs/en/1.9.0/cordova/storage/parameters/size.md b/docs/en/1.9.0/cordova/storage/parameters/size.md
new file mode 100644
index 0000000..9b46993
--- /dev/null
+++ b/docs/en/1.9.0/cordova/storage/parameters/size.md
@@ -0,0 +1,23 @@
+---
+license: 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.
+---
+
+database_size
+==============
+
+The size of the database in bytes.
\ No newline at end of file
diff --git a/docs/en/1.9.0/cordova/storage/parameters/version.md b/docs/en/1.9.0/cordova/storage/parameters/version.md
new file mode 100644
index 0000000..2e72923
--- /dev/null
+++ b/docs/en/1.9.0/cordova/storage/parameters/version.md
@@ -0,0 +1,23 @@
+---
+license: 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.
+---
+
+database_version
+=============
+
+The version of the database.
diff --git a/docs/en/1.9.0/cordova/storage/sqlerror/sqlerror.md b/docs/en/1.9.0/cordova/storage/sqlerror/sqlerror.md
new file mode 100644
index 0000000..b700222
--- /dev/null
+++ b/docs/en/1.9.0/cordova/storage/sqlerror/sqlerror.md
@@ -0,0 +1,47 @@
+---
+license: 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.
+---
+
+SQLError
+========
+
+A `SQLError` object is thrown when an error occurs.
+
+Properties
+----------
+
+- __code:__ One of the predefined error codes listed below.
+- __message:__ A description of the error.
+
+Constants
+---------
+
+- `SQLError.UNKNOWN_ERR`
+- `SQLError.DATABASE_ERR`
+- `SQLError.VERSION_ERR`
+- `SQLError.TOO_LARGE_ERR`
+- `SQLError.QUOTA_ERR`
+- `SQLError.SYNTAX_ERR`
+- `SQLError.CONSTRAINT_ERR`
+- `SQLError.TIMEOUT_ERR`
+
+Description
+-----------
+
+The `SQLError` object is thrown when an error occurs when manipulating a database.
+
diff --git a/docs/en/1.9.0/cordova/storage/sqlresultset/sqlresultset.md b/docs/en/1.9.0/cordova/storage/sqlresultset/sqlresultset.md
new file mode 100644
index 0000000..a8007c4
--- /dev/null
+++ b/docs/en/1.9.0/cordova/storage/sqlresultset/sqlresultset.md
@@ -0,0 +1,139 @@
+---
+license: 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.
+---
+
+SQLResultSet
+=======
+
+When the executeSql method of a SQLTransaction is called it will invoke it's callback with a SQLResultSet.
+
+Properties
+-------
+
+- __insertId__: the row ID of the row that the SQLResultSet object's SQL statement inserted into the database
+- __rowsAffected__: the number of rows that were changed by the SQL statement.  If the statement did not affect any rows then it is set to 0. 
+- __rows__: a SQLResultSetRowList representing the rows returned.  If no rows are returned the object will be empty.
+
+Details
+-------
+
+When you call the SQLTransaction executeSql method its callback methods will be called with a SQLResultSet object.  The result object has three properties.  The first is the `insertId` which will return the row number of a success SQL insert statement.  If the SQL statement is not an insert then the `insertId` is not set.  The `rowsAffected` is always 0 for a SQL select statement.  For insert or update statements it returns the number of rows that have been modified.  The final property is of type SQLResultSetList and it contains the data returned from a SQL select statement.
+
+Supported Platforms
+-------------------
+
+- Android
+- BlackBerry WebWorks (OS 6.0 and higher)
+- iPhone
+- webOS
+
+Execute SQL Quick Example
+------------------
+
+	function queryDB(tx) {
+		tx.executeSql('SELECT * FROM DEMO', [], querySuccess, errorCB);
+	}
+
+	function querySuccess(tx, results) {
+    console.log("Returned rows = " + results.rows.length);
+    // this will be true since it was a select statement and so rowsAffected was 0
+    if (!resultSet.rowsAffected) {
+      console.log('No rows affected!');
+      return false;
+    }
+    // for an insert statement, this property will return the ID of the last inserted row
+    console.log("Last inserted row ID = " + results.insertId);
+	}
+	
+	function errorCB(err) {
+		alert("Error processing SQL: "+err.code);
+	}
+	
+	var db = window.openDatabase("Database", "1.0", "Cordova Demo", 200000);
+	db.transaction(queryDB, errorCB);
+
+Full Example
+------------
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>Storage Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for Cordova to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+		// Populate the database 
+		//
+		function populateDB(tx) {
+			tx.executeSql('DROP TABLE IF EXISTS DEMO');
+			tx.executeSql('CREATE TABLE IF NOT EXISTS DEMO (id unique, data)');
+			tx.executeSql('INSERT INTO DEMO (id, data) VALUES (1, "First row")');
+			tx.executeSql('INSERT INTO DEMO (id, data) VALUES (2, "Second row")');
+		}
+
+		// Query the database
+		//
+		function queryDB(tx) {
+			tx.executeSql('SELECT * FROM DEMO', [], querySuccess, errorCB);
+		}
+
+		// Query the success callback
+		//
+		function querySuccess(tx, results) {
+      console.log("Returned rows = " + results.rows.length);
+      // this will be true since it was a select statement and so rowsAffected was 0
+      if (!results.rowsAffected) {
+        console.log('No rows affected!');
+        return false;
+      }
+      // for an insert statement, this property will return the ID of the last inserted row
+      console.log("Last inserted row ID = " + results.insertId);
+		}
+
+		// Transaction error callback
+		//
+		function errorCB(err) {
+			console.log("Error processing SQL: "+err.code);
+		}
+
+		// Transaction success callback
+		//
+		function successCB() {
+			var db = window.openDatabase("Database", "1.0", "Cordova Demo", 200000);
+			db.transaction(queryDB, errorCB);
+		}
+
+		// Cordova is ready
+		//
+		function onDeviceReady() {
+			var db = window.openDatabase("Database", "1.0", "Cordova Demo", 200000);
+			db.transaction(populateDB, errorCB, successCB);
+		}
+	
+        </script>
+      </head>
+      <body>
+        <h1>Example</h1>
+        <p>Database</p>
+      </body>
+    </html>
diff --git a/docs/en/1.9.0/cordova/storage/sqlresultsetlist/sqlresultsetlist.md b/docs/en/1.9.0/cordova/storage/sqlresultsetlist/sqlresultsetlist.md
new file mode 100644
index 0000000..77c6afa
--- /dev/null
+++ b/docs/en/1.9.0/cordova/storage/sqlresultsetlist/sqlresultsetlist.md
@@ -0,0 +1,136 @@
+---
+license: 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.
+---
+
+SQLResultSetList
+=======
+
+One of the properties of the SQLResultSet containing the rows returned from a SQL query.
+
+Properties
+-------
+
+- __length__: the number of rows returned by the SQL query
+
+Methods
+-------
+
+- __item__: returns the row at the specified index represented by a JavaScript object.
+
+Details
+-------
+
+The SQLResultSetList contains the data returned from a SQL select statement.  The object contains a length property letting you know how many rows the select statement has been returned.  To get a row of data you would call the `item` method specifing an index.  The item method returns a JavaScript Object who's properties are the columns of the database the select statement was executed against.
+
+Supported Platforms
+-------------------
+
+- Android
+- BlackBerry WebWorks (OS 6.0 and higher)
+- iPhone
+- webOS
+
+Execute SQL Quick Example
+------------------
+
+	function queryDB(tx) {
+		tx.executeSql('SELECT * FROM DEMO', [], querySuccess, errorCB);
+	}
+
+	function querySuccess(tx, results) {
+		var len = results.rows.length;
+	   	console.log("DEMO table: " + len + " rows found.");
+	   	for (var i=0; i<len; i++){
+	        console.log("Row = " + i + " ID = " + results.rows.item(i).id + " Data =  " + results.rows.item(i).data);
+		}
+	}
+	
+	function errorCB(err) {
+		alert("Error processing SQL: "+err.code);
+	}
+	
+	var db = window.openDatabase("Database", "1.0", "Cordova Demo", 200000);
+	db.transaction(queryDB, errorCB);
+
+Full Example
+------------
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>Storage Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for Cordova to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+		// Populate the database 
+		//
+		function populateDB(tx) {
+			tx.executeSql('DROP TABLE IF EXISTS DEMO');
+			tx.executeSql('CREATE TABLE IF NOT EXISTS DEMO (id unique, data)');
+			tx.executeSql('INSERT INTO DEMO (id, data) VALUES (1, "First row")');
+			tx.executeSql('INSERT INTO DEMO (id, data) VALUES (2, "Second row")');
+		}
+
+		// Query the database
+		//
+		function queryDB(tx) {
+			tx.executeSql('SELECT * FROM DEMO', [], querySuccess, errorCB);
+		}
+
+		// Query the success callback
+		//
+		function querySuccess(tx, results) {
+			var len = results.rows.length;
+			console.log("DEMO table: " + len + " rows found.");
+			for (var i=0; i<len; i++){
+				console.log("Row = " + i + " ID = " + results.rows.item(i).id + " Data =  " + results.rows.item(i).data);
+			}
+		}
+
+		// Transaction error callback
+		//
+		function errorCB(err) {
+			console.log("Error processing SQL: "+err.code);
+		}
+
+		// Transaction success callback
+		//
+		function successCB() {
+			var db = window.openDatabase("Database", "1.0", "Cordova Demo", 200000);
+			db.transaction(queryDB, errorCB);
+		}
+
+		// Cordova is ready
+		//
+		function onDeviceReady() {
+			var db = window.openDatabase("Database", "1.0", "Cordova Demo", 200000);
+			db.transaction(populateDB, errorCB, successCB);
+		}
+	
+        </script>
+      </head>
+      <body>
+        <h1>Example</h1>
+        <p>Database</p>
+      </body>
+    </html>
diff --git a/docs/en/1.9.0/cordova/storage/sqltransaction/sqltransaction.md b/docs/en/1.9.0/cordova/storage/sqltransaction/sqltransaction.md
new file mode 100644
index 0000000..cd5f1b4
--- /dev/null
+++ b/docs/en/1.9.0/cordova/storage/sqltransaction/sqltransaction.md
@@ -0,0 +1,113 @@
+---
+license: 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.
+---
+
+SQLTransaction
+=======
+
+Contains methods that allow the user to execute SQL statements against the Database.
+
+Methods
+-------
+
+- __executeSql__: executes a SQL statement
+
+Details
+-------
+
+When you call a Database objects transaction method it's callback methods will be called with a SQLTransaction object.  The user can build up a database transaction by calling the executeSql method multiple times.  
+
+Supported Platforms
+-------------------
+
+- Android
+- BlackBerry WebWorks (OS 6.0 and higher)
+- iPhone
+- webOS
+
+Execute SQL Quick Example
+------------------
+
+	function populateDB(tx) {
+		 tx.executeSql('DROP TABLE IF EXISTS DEMO');
+		 tx.executeSql('CREATE TABLE IF NOT EXISTS DEMO (id unique, data)');
+		 tx.executeSql('INSERT INTO DEMO (id, data) VALUES (1, "First row")');
+		 tx.executeSql('INSERT INTO DEMO (id, data) VALUES (2, "Second row")');
+	}
+	
+	function errorCB(err) {
+		alert("Error processing SQL: "+err);
+	}
+	
+	function successCB() {
+		alert("success!");
+	}
+	
+	var db = window.openDatabase("Database", "1.0", "Cordova Demo", 200000);
+	db.transaction(populateDB, errorCB, successCB);
+
+Full Example
+------------
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>Storage Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for Cordova to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        // Cordova is ready
+        //
+        function onDeviceReady() {
+			var db = window.openDatabase("Database", "1.0", "Cordova Demo", 200000);
+			db.transaction(populateDB, errorCB, successCB);
+        }
+		
+		// Populate the database 
+		//
+		function populateDB(tx) {
+			 tx.executeSql('DROP TABLE IF EXISTS DEMO');
+			 tx.executeSql('CREATE TABLE IF NOT EXISTS DEMO (id unique, data)');
+			 tx.executeSql('INSERT INTO DEMO (id, data) VALUES (1, "First row")');
+			 tx.executeSql('INSERT INTO DEMO (id, data) VALUES (2, "Second row")');
+		}
+		
+		// Transaction error callback
+		//
+		function errorCB(err) {
+			alert("Error processing SQL: "+err);
+		}
+		
+		// Transaction success callback
+		//
+		function successCB() {
+			alert("success!");
+		}
+	
+        </script>
+      </head>
+      <body>
+        <h1>Example</h1>
+        <p>SQLTransaction</p>
+      </body>
+    </html>
diff --git a/docs/en/1.9.0/cordova/storage/storage.md b/docs/en/1.9.0/cordova/storage/storage.md
new file mode 100644
index 0000000..d8ee694
--- /dev/null
+++ b/docs/en/1.9.0/cordova/storage/storage.md
@@ -0,0 +1,79 @@
+---
+license: 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.
+---
+
+Storage
+==========
+
+> Provides access to the devices storage options.
+
+This API is based on the [W3C Web SQL Database Specification](http://dev.w3.org/html5/webdatabase/) and [W3C Web Storage API Specification](http://dev.w3.org/html5/webstorage/). Some devices already provide an implementation of this spec. For those devices, the built-in support is used instead of replacing it with Cordova's implementation. For devices that don't have storage support, Cordova's implementation should be compatible with the W3C specification.
+
+Methods
+-------
+
+- openDatabase
+
+Arguments
+---------
+
+- database_name
+- database_version
+- database_displayname
+- database_size
+
+Objects
+-------
+
+- Database
+- SQLTransaction
+- SQLResultSet
+- SQLResultSetList
+- SQLError
+- localStorage
+
+Permissions
+-----------
+
+### Android
+
+#### app/res/xml/plugins.xml
+
+    <plugin name="Storage" value="org.apache.cordova.Storage" />
+
+### Bada
+
+    No permissions are required.
+
+### BlackBerry WebWorks
+
+#### www/config.xml
+
+    <feature id="blackberry.widgetcache" required="true" version="1.0.0.0" />
+
+### iOS
+
+    No permissions are required.
+
+### webOS
+
+    No permissions are required.
+
+### Windows Phone
+
+    No permissions are required.
diff --git a/docs/en/1.9.0/cordova/storage/storage.opendatabase.md b/docs/en/1.9.0/cordova/storage/storage.opendatabase.md
new file mode 100644
index 0000000..731a7ba
--- /dev/null
+++ b/docs/en/1.9.0/cordova/storage/storage.opendatabase.md
@@ -0,0 +1,74 @@
+---
+license: 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.
+---
+
+openDatabase
+===============
+
+Returns a new Database object.
+
+    var dbShell = window.openDatabase(database_name, database_version, database_displayname, database_size);
+
+Description
+-----------
+
+window.openDatabase returns a new Database object.
+
+This method will create a new SQL Lite Database and return a Database object.  Use the Database Object to manipulate the data.
+
+Supported Platforms
+-------------------
+
+- Android
+- BlackBerry WebWorks (OS 6.0 and higher)
+- iPhone
+- webOS
+
+Quick Example
+-------------
+
+    var db = window.openDatabase("test", "1.0", "Test DB", 1000000);
+
+Full Example
+------------
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>Storage Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for Cordova to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        // Cordova is ready
+        //
+        function onDeviceReady() {
+			var db = window.openDatabase("test", "1.0", "Test DB", 1000000);
+        }
+		
+        </script>
+      </head>
+      <body>
+        <h1>Example</h1>
+        <p>Open Database</p>
+      </body>
+    </html>
diff --git a/docs/en/1.9.0/guide/command-line/index.md b/docs/en/1.9.0/guide/command-line/index.md
new file mode 100644
index 0000000..49d4ebc
--- /dev/null
+++ b/docs/en/1.9.0/guide/command-line/index.md
@@ -0,0 +1,190 @@
+---
+license: 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.
+---
+
+# Command-Line Usage
+
+Cordova now ships with a set of command-line tools that make it easier
+for you to develop cross-platform applications. You can build, clean,
+and launch an emulator with a single command. You can consider these
+instructions as an alternative to the Getting Started guides. Whereas
+the Getting Started guides help you get setup with the default IDEs and
+tooling surrounding the platforms you are working with, the command-line
+tools aim to provide a shell-based approach to creating and working with
+Cordova projects.
+
+## Supported Platforms
+
+* [iOS](#Command-Line%20Usage_ios)
+* [Android](#Command-Line%20Usage_android)
+* [BlackBerry](#Command-Line%20Usage_blackberry)
+
+## iOS
+
+The iOS command-line tools are built upon shell scripts and rely on
+XCode command-line tools such as `xcode-select` and `xcodebuild`.
+
+### Create a project
+
+Run the `create` command with the following parameters:
+
+* Path to your new Cordova iOS project
+* Package name, following reverse-domain style convention
+* Project name
+
+<!-- -->
+
+    $ ./path/to/cordova-ios/bin/create /path/to/my_new_cordova_project com.example.cordova_project_name CordovaProjectName
+
+### Build a project
+
+    $ /path/to/my_new_cordova_project/cordova/debug
+
+### Launch emulator
+
+    $ /path/to/my_new_cordova_project/cordova/emulate
+
+### Logging
+
+    $ /path/to/my_new_cordova_project/cordova/log
+
+
+## Android
+
+The Android command-line tools are built upon shell scripts. You _must_
+have the Android SDK's `tools` and `platform-tools` folders in your
+PATH!
+
+### Create a project
+
+Run the `create` command with the following parameters:
+
+* Path to your new Cordova Android project
+* Package name, following reverse-domain style convention
+* Main Activity name
+
+<!-- -->
+
+    $ /path/to/cordova-android/bin/create /path/to/my_new_cordova_project com.example.cordova_project_name CordovaProjectName
+
+or, on **Windows**
+
+    $ /path/to/cordova-android/bin/create.bat /path/to/my_new_cordova_project com.example.cordova_project_name CordovaProjectName
+
+### Build a project
+
+    $ /path/to/my_new_cordova_project/cordova/debug
+
+or, on **Windows**
+
+    $ /path/to/my_new_cordova_project/cordova/debug.bat
+
+### Launch emulator
+
+    $ /path/to/my_new_cordova_project/cordova/emulate
+
+or, on **Windows**
+
+    $ /path/to/my_new_cordova_project/cordova/emulate.bat
+
+Make sure you have created at least one Android Virtual Device. If you did not it will ask you to create one with the `android` command.
+If you have multiple AVDs, it will prompt you to select an AVD.
+
+### Logging
+
+    $ /path/to/my_new_cordova_project/cordova/log
+
+or, on **Windows**
+
+    $ /path/to/my_new_cordova_project/cordova/log.bat
+
+### Cleaning
+
+    $ /path/to/my_new_cordova_project/cordova/clean
+
+or, on **Windows**
+
+    $ /path/to/my_new_cordova_project/cordova/clean.bat
+
+### Clean, build, deploy and launch
+
+    $ /path/to/my_new_cordova_project/cordova/BOOM
+
+or, on **Windows**
+
+    $ /path/to/my_new_cordova_project/cordova/BOOM.bat
+
+Make sure you have an emulator or a device connected.
+
+
+## BlackBerry
+
+The BlackBerry command-line tools are built upon shell scripts.
+
+### Create a project
+
+Run the `create` command with the following parameters:
+
+* Path to your new Cordova BlackBerry project
+* Application name
+
+<!-- -->
+
+    $ /path/to/cordova-blackberry-webworks/bin/create /path/to/my_new_cordova_project CordovaProjectName
+
+or, on **Windows**
+
+    $ /path/to/cordova-blackberry-webworks/bin/create.bat /path/to/my_new_cordova_project CordovaProjectName
+
+### Build a project
+
+For BlackBerry projects, please make sure you customize the
+`project.properties` file in the root of your Cordova project folder.
+This is necessary for things like supplying your BlackBerry signing key
+password, location of the BlackBerry WebWorks SDK, and location of
+BlackBerry simulator executables.
+
+    $ /path/to/my_new_cordova_project/cordova/debug
+
+or, on **Windows**
+
+    $ /path/to/my_new_cordova_project/cordova/debug.bat
+
+### Launch emulator
+
+For BlackBerry projects, please make sure you customize the
+`project.properties` file in the root of your Cordova project folder.
+This is necessary for things like supplying your BlackBerry signing key
+password, location of the BlackBerry WebWorks SDK, and location of
+BlackBerry simulator executables.
+
+    $ /path/to/my_new_cordova_project/cordova/emulate
+
+or, on **Windows**
+
+    $ /path/to/my_new_cordova_project/cordova/emulate.bat
+
+### Logging
+
+Unfortunately streaming logs directly from the device is not
+supported at this time. However, BlackBerry offers built-in Web
+Inspector support for Playbook and BlackBerry smartphone devices running
+BlackBerry OS 7.0 and above. Additionally, you can access your
+application's logs (including any calls to `console.log`) on your device
+by holding down the ALT key from the home screen and hitting "lglg"
+keys.
diff --git a/docs/en/1.9.0/guide/cordova-webview/android.md b/docs/en/1.9.0/guide/cordova-webview/android.md
new file mode 100644
index 0000000..6618ccd
--- /dev/null
+++ b/docs/en/1.9.0/guide/cordova-webview/android.md
@@ -0,0 +1,66 @@
+---
+license: 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.
+---
+
+Embedding Cordova WebView on Android
+====================================
+
+Beginning in Cordova 1.9, with the assistance of the `CordovaActivity`, you can use Cordova as a component in a larger native Android application. This component is known in Android
+as the `CordovaWebView`. New Cordova-based applications from 1.9 onwards will be using the `CordovaWebView` as its main view, whether the legacy `DroidGap` approach is 
+used or not.
+
+The prerequisites are the same as the prerequisites for Android application development. It is assumed that you are familiar with Android development. If not, please
+look at the Getting Started guide to developing a Cordova Application and start there before continuing with this approach. This is not the main approach used
+to author Android Cordova applications. Thus the instructions are currently manual.  In the future, we may try to further automate project generation via this method.
+
+Prerequisites
+-------------
+
+1. **Cordova 1.9** or greater
+2. Android SDK updated with 15
+
+Guide to using CordovaWebView in an Android Project
+---------------------------------------------------
+
+1. Use `bin/create` to fetch the commons-codec-1.6.jar
+2. `cd` into `/framework` and run `ant jar` to build the cordova jar (it
+   will create the .jar file in the form `cordova-x.x.x.jar` in the
+   `/framework` folder)
+3. Copy the cordova jar into your Android project's `/libs` directory
+4. Edit your application's `main.xml` file (under `/res/xml`) to look similar the following. The `layout_height`, `layout_width` and `id` can be modified to suit your application
+
+        <org.apache.cordova.CordovaWebView
+            android:id="@+id/tutorialView"
+            android:layout_width="match_parent"
+            android:layout_height="match_parent" />
+
+5. Modify your activity so that it implements the `CordovaInterface`.  It is recommended that you implement the methods that are included.  You may wish to copy the methods from `/framework/src/org/apache/cordova/DroidGap.java`, or you may wish to implement your own methods.  Below is a fragment of code from a basic application that uses the interface (note how the view id referenced matches the `id` attribute specified in the above XML fragment from step 4):
+
+        public class CordovaViewTestActivity extends Activity implements CordovaInterface {
+            CordovaWebView cwv;
+            /* Called when the activity is first created. */
+            @Override
+            public void onCreate(Bundle savedInstanceState) {
+                super.onCreate(savedInstanceState);
+                setContentView(R.layout.main);
+                cwv = (CordovaWebView) findViewById(R.id.tutorialView);
+                cwv.loadUrl("file:///android_asset/www/index.html");
+            }
+
+6. Copy your application's HTML and JavaScript used to the `/assets/www` directory of your Android project
+7. Copy `cordova.xml` and `plugins.xml` from `/framework/res/xml` to the `/res/xml` folder in your project
diff --git a/docs/en/1.9.0/guide/cordova-webview/index.md b/docs/en/1.9.0/guide/cordova-webview/index.md
new file mode 100644
index 0000000..d3e2e72
--- /dev/null
+++ b/docs/en/1.9.0/guide/cordova-webview/index.md
@@ -0,0 +1,27 @@
+---
+license: 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.
+---
+
+Embedding WebView
+=================
+
+> Implement the Cordova WebView in your own project.
+
+- Embedding Cordova WebView on Android
+- Embedding Cordova WebView on iOS
+
diff --git a/docs/en/1.9.0/guide/cordova-webview/ios.md b/docs/en/1.9.0/guide/cordova-webview/ios.md
new file mode 100644
index 0000000..c31ba08
--- /dev/null
+++ b/docs/en/1.9.0/guide/cordova-webview/ios.md
@@ -0,0 +1,174 @@
+---
+license: 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.
+---
+
+Embedding Cordova WebView on iOS
+================================
+
+Beginning with Cordova 1.4, you can use Cordova as a component in your iOS applications. This component is code-named "Cleaver".
+
+New Cordova-based applications created using the Xcode template provided in Cordova 1.4 or greater use Cleaver, and this template is considered the reference implementation for Cleaver.
+
+It is recommended that you follow the `Cordova.framework` instructions below. The `CordovaLib` sub-project instructions are for Cordova core developers or users that have custom `CordovaLib` project code (for ease of debugging the core).
+
+Prerequisites
+-------------
+
+1. **Cordova 1.4.1** or greater
+2. **Xcode 4.2** or greater
+3. `Cordova.plist` file
+
+Adding Cleaver to your Xcode project (Cordova.framework)
+--------------------------------------------------------
+
+1. **Copy** the `Cordova.plist` file into your project folder on disk
+2. **Drag and drop** the `Cordova.plist` file into the Project Navigator of Xcode
+3. **Choose** the radio-button **"Create groups for any added folders"**
+4. Press the key combination **Option-Command-A**, which should drop down a sheet to add files to your project (the **"Add Files..." sheet**). Make sure the **"Created groups for any added folders"** radio-button is selected
+5. Press the key combination **Shift-Command-G**, which should drop down another sheet for you to go to a folder (the **"Go to the folder:" sheet**)
+6. Enter `/Users/Shared/Cordova/Frameworks/Cordova.framework` in the **"Go to the folder:" sheet** and then press the **"Go"** button
+7. Press the **"Add"** button in the **"Add Files..." sheet**
+8. Select `Cordova.framework` in the Project Navigator
+9. Press the key combination **Option-Command-1** to show the **File Inspector**
+10. Choose **"Absolute Path"** in the **File Inspector** for the drop-down menu for **Location** 
+11. Click on the **project icon** in the Project Navigator, select your **Target**, then select the **"Build Phase"** tab
+12. Expand **"Link Binaries with Libraries"**
+13. Click on the **"+" button**, and add these **frameworks** (and optionally in the Project Navigator, **move** them under the Frameworks group):
+
+        AddressBook.framework
+        AddressBookUI.framework
+        AudioToolbox.framework
+        AVFoundation.framework
+        CoreLocation.framework
+        MediaPlayer.framework
+        QuartzCore.framework
+        SystemConfiguration.framework
+        MobileCoreServices.framework
+        CoreMedia.framework
+
+Adding Cleaver to your Xcode project (CordovaLib sub-project)
+-------------------------------------------------------------
+
+1. **Copy** the `Cordova.plist` file into your project folder on disk
+2. **Drag and drop** the `Cordova.plist` file into the Project Navigator of Xcode
+3. **Choose** the radio-button **"Create groups for any added folders"**
+4. Press the key combination **Option-Command-A**, which should drop down a sheet to add files to your project (the **"Add Files..." sheet**). Make sure the **"Created groups for any added folders"** radio-button is selected
+5. Press the key combination **Shift-Command-G**, which should drop down another sheet for you to go to a folder (the **"Go to the folder:" sheet**)
+6. Enter `~/Documents/CordovaLib/` in the **"Go to the folder:" sheet** and then press the **"Go"** button
+7. Select the `VERSION` file in the the **"Add Files..." sheet**
+8. Press the **"Add"** button in the **"Add Files..." sheet**
+9. Press the key combination **Option-Command-A**, which should drop down a sheet to add files to your project (the **"Add Files..." sheet**). Make sure the **"Created groups for any added folders"** radio-button is selected
+10. Press the key combination **Shift-Command-G**, which should drop down another sheet for you to go to a folder (the **"Go to the folder:" sheet**)
+11. Enter `~/Documents/CordovaLib/CordovaLib.xcodeproj` in the **"Go to the folder:" sheet** and then press the **"Go"** button
+12. Press the **"Add"** button in the **"Add Files..." sheet**
+13. Select `CordovaLib.xcodeproj` in the Project Navigator
+14. Press the key combination **Option-Command-1** to show the **File Inspector**
+15. Choose **"Relative to CORDOVALIB"** in the **File Inspector** for the drop-down menu for **Location** 
+16. Click on the **project icon** in the Project Navigator, select your **Project**, then select the **"Build Settings"** tab
+17. Enter **"Header Search Paths"** in the search field
+18. Add `$(CORDOVALIB)/Classes` and check the **Recursive** checkbox (the checkbox may be unlabeled) - for the **"Header Search Paths"** value
+19. Add `-all_load` and `-Obj-C` - for the **"Other Linker Flags"** value
+20. Click on the **project icon** in the Project Navigator, select your **Target**, then select the **"Build Phases"** tab
+21. Expand **"Link Binaries with Libraries"** 
+22. Click on the **"+" button**, and add these **frameworks** (and optionally in the Project Navigator, **move** them under the Frameworks group):
+
+        AddressBook.framework
+        AddressBookUI.framework
+        AudioToolbox.framework
+        AVFoundation.framework
+        CoreLocation.framework
+        MediaPlayer.framework
+        QuartzCore.framework
+        SystemConfiguration.framework
+        MobileCoreServices.framework
+        CoreMedia.framework
+
+23. Expand **"Target Dependencies"** - the top box labeled like this if
+    you have multiple boxes!
+24. Click on the **"+" button**, and add the `CordovaLib` build product
+25. Expand **"Link Binaries with Libraries"** - the top box labeled like
+    this if you have multiple boxes!
+26. Click on the **"+" button**, and add `libCordova.a`
+
+Adding new classes to CordovaLib sub-project
+--------------------------------------------
+
+In general if you are only modifying or debugging existing CordovaLib
+classes you should be OK with just the above steps. However if you are
+adding new classes you need to follow a few additional steps:
+
+1. In your project's Frameworks directory in Xcode, remove
+   `Cordova.framework`.
+2. Just to reiterate step 18 and 20 above: make sure your dependencies
+   and libraries are in the top-most boxes under Build Phases for your
+   project's Target.
+3. In your project's Target's Build Settings, search for "Other Linker
+   Flags". Add `-Obj-C` and `-all_load` to this.
+
+Using CDVViewController in your code
+------------------------------------
+
+1. Add this **header** if you used the `Cordova.framework`:
+
+        #import <Cordova/CDVViewController.h>
+
+2. Add this **header** if you used the `CordovaLib` sub-project:
+
+        #import "CDVViewController.h"
+
+3. Instantiate a **new** `CDVViewController`, and retain it somewhere: 
+
+        CDVViewController* viewController = [CDVViewController new];
+
+4. (_OPTIONAL_) Set the `wwwFolderName` property (defaults to `"www"`):
+
+        viewController.wwwFolderName = @"myfolder";
+
+5. (_OPTIONAL_) Set the `startPage` property (defaults to `"index.html"`):
+
+        viewController.startPage = @"mystartpage.html";
+
+6. (_OPTIONAL_) Set the `useSplashScreen` property (defaults to `NO`):
+
+        viewController.useSplashScreen = YES;
+
+5. Set the **view frame** (always set this as the last property):
+
+        viewController.view.frame = CGRectMake(0, 0, 320, 480);
+
+6. **Add** Cleaver to your view:
+
+        [myView addSubview:viewController.view];
+
+Adding your HTML, CSS and JavaScript assets
+-------------------------------------------
+
+1. Create a **new folder** in your project **on disk**, for example, name it `www`
+2. Put your **HTML, CSS and JavaScript assets** into this folder
+3. **Drag and drop** the folder into the Project Navigator of Xcode
+4. **Choose** the radio-button **"Create folder references for any added folders"**
+5. **Set the appropriate `wwwFolderName` and `startPage` properties** for the folder you created in **(1)** or use the defaults (see previous section) when you instantiate the `CDVViewController`.
+
+        /*
+         if you created a folder called 'myfolder' and
+         you want the file 'mypage.html' in it to be 
+         the startPage
+        */
+        viewController.wwwFolderName = @"myfolder";
+        viewController.startPage = @"mypage.html"
+
diff --git a/docs/en/1.9.0/guide/getting-started/android/index.md b/docs/en/1.9.0/guide/getting-started/android/index.md
new file mode 100644
index 0000000..f986ae6
--- /dev/null
+++ b/docs/en/1.9.0/guide/getting-started/android/index.md
@@ -0,0 +1,129 @@
+---
+license: 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.
+---
+
+Getting Started with Android
+============================
+
+This guide describes how to set up your development environment for Cordova and run a sample application.  Note that Cordova used to be called PhoneGap, so some of the sites still use the old PhoneGap name.
+
+
+1. Requirements
+---------------
+
+- Eclipse 3.4+
+
+
+2. Install SDK + Cordova
+------------------------
+
+- Download and install [Eclipse Classic](http://www.eclipse.org/downloads/)
+- Download and install [Android SDK](http://developer.android.com/sdk/index.html)
+- Download and install [ADT Plugin](http://developer.android.com/sdk/eclipse-adt.html#installing)
+- Download the latest copy of [Cordova](http://phonegap.com/download) and extract its contents. We will be working with the Android directory.
+
+ 3. Setup New Project
+---------------------
+
+- Launch Eclipse, and select menu item **New &gt; Android Project**.  Fill out the three panels of the **New Android Project** wizard shown below.
+
+    ![](img/guide/getting-started/android/AndroidFlow.png)
+    
+- In the root directory of your project, create two new directories:
+ 	- **/libs**
+ 	- **assets/www**
+- Copy **cordova-1.9.0.js** from your Cordova download earlier to **assets/www**
+- Copy **cordova-1.9.0.jar** from your Cordova download earlier to **/libs**
+- Copy **xml** folder from your Cordova download earlier to **/res**
+
+- Verify that **cordova-1.9.0.jar** is listed in the Build Path for your project. Right click on the /libs folder and go to **Build Paths/ &gt; Configure Build Path...**. Then, in the Libraries tab, add **cordova-1.9.0.jar** to the project. If Eclipse is being temperamental, you might need to refresh (F5) the project once again.
+
+    ![](img/guide/getting-started/android/buildPath.jpg)
+
+- Edit your project's main Java file found in the **src** folder in Eclipse:
+	- Add **import org.apache.cordova.*;**
+	- Change the class's extend from **Activity** to **DroidGap**
+	- Replace the **setContentView()** line with **super.loadUrl("file:///android_asset/www/index.html");**	
+
+	![](img/guide/getting-started/android/javaSrc.jpg)
+	
+- Right click on AndroidManifest.xml and select **Open With &gt; XML Editor**
+- Paste the following permissions between the **&lt;uses-sdk.../&gt;** and **&lt;application.../&gt;** tags.
+
+        <supports-screens 
+            android:largeScreens="true" 
+            android:normalScreens="true" 
+            android:smallScreens="true" 
+            android:resizeable="true" 
+            android:anyDensity="true" />
+        <uses-permission android:name="android.permission.VIBRATE" />
+        <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
+        <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
+        <uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS" />
+        <uses-permission android:name="android.permission.READ_PHONE_STATE" />
+        <uses-permission android:name="android.permission.INTERNET" />
+        <uses-permission android:name="android.permission.RECEIVE_SMS" />
+        <uses-permission android:name="android.permission.RECORD_AUDIO" />
+        <uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
+        <uses-permission android:name="android.permission.READ_CONTACTS" />
+        <uses-permission android:name="android.permission.WRITE_CONTACTS" />
+        <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
+        <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 
+        <uses-permission android:name="android.permission.GET_ACCOUNTS" />
+        <uses-permission android:name="android.permission.BROADCAST_STICKY" />
+
+- Support orientation changes by pasting the folowing inside the **&lt;activity&gt;** tag.
+
+        android:configChanges="orientation|keyboardHidden|screenSize"
+
+- Your AndroidManifest.xml file should look like
+
+    ![](img/guide/getting-started/android/manifest.jpg)
+
+4. Hello World
+--------------    
+
+- Create and open a new file named **index.html** in the **assets/www** directory. Paste the following code:
+
+        <!DOCTYPE HTML>
+        <html>
+        <head>
+        <title>Cordova</title>
+        <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
+        </head>
+        <body>
+        <h1>Hello World</h1>
+        </body>
+        </html>
+
+5A. Deploy to Simulator
+-----------------------
+
+- Right click the project and go to **Run As &gt; Android Application**
+- Eclipse will ask you to select an appropriate AVD. If there isn't one, then you'll need to create it.
+
+
+5B. Deploy to Device
+--------------------
+
+- Make sure USB debugging is enabled on your device and plug it into your system. (**Settings &gt; Applications &gt; Development**)
+- Right click the project and go to **Run As &gt; Android Application**
+
+
+Done!
+-----
diff --git a/docs/en/1.9.0/guide/getting-started/bada/index.md b/docs/en/1.9.0/guide/getting-started/bada/index.md
new file mode 100644
index 0000000..aa68e52
--- /dev/null
+++ b/docs/en/1.9.0/guide/getting-started/bada/index.md
@@ -0,0 +1,93 @@
+---
+license: 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.
+---
+
+Getting Started with Bada
+=========================
+
+This guide describes how to set up your development environment for Cordova and run a sample application.  Note that Cordova used to be called PhoneGap, so some of the sites still use the old PhoneGap name.
+
+1. Requirements
+---------------
+
+- Windows
+- You need the bada 1.2 SDK to use cordova-bada (which is no longer available on Samsung&apos;s website)
+
+2. Install SDK + Cordova
+-------------------------
+
+- Download and install the [Bada SDK](http://developer.bada.com) (Windows only). 
+- Donwload the latest copy of [Cordova](http://phonegap.com/download) and extract its contents. We will be working with the bada directory.
+
+
+3. Setup New Project
+--------------------
+- In Bada IDE, select _File_ -> Import project -> Bada C++ / Flash Project. 
+    - Note: Bada 1.2 select "Bada Application Project"
+    
+    ![](img/guide/getting-started/bada/import_bada_project.png)
+
+- Make sure "Select root directory is checked" and then click Browse
+- Browse to Cordova bada project folder (bada for 1.2 and bada-wac for 2.x) and select it. Make sure "Copy projects into workspace is checked"
+    
+    ![](img/guide/getting-started/bada/import_bada_project.png)
+
+- Click "Finish"
+
+    ![](img/guide/getting-started/bada/bada_project.png)
+ 
+4. Hello World
+--------------
+
+**Bada 2.x**: Your HTML/CSS/Javascript code lives under the Res/ folder. Make sure your index.html contains the following two lines in the <head> section.
+
+
+        <link href="osp://webapp/css/style.css" rel="stylesheet" type="text/css" />
+        <script type="text/javascript" src="osp://webapp/js/webapp_core.js"></script>
+
+**Bada 1.2**: Your HTML/CSS/Javascript code lives under the Res/ folder. Make sure your index.html contains the following line.
+
+        <script type="text/javascript" src="cordova/cordova.js"> </script>
+
+5A. Deploy to Simulator
+-----------------------
+
+- **Bada 2.x**: Right click on your project s folder and select Run As -&gt; bada Emulator Web Application 
+    
+    ![](img/guide/getting-started/bada/bada_1_run.png)
+
+- **Bada 1.2**: Right click on your project&apos; folder and select Build configurations -&gt; Set Active -&gt; Simulator-Debug
+
+    ![](img/guide/getting-started/bada/bada_set_target.png)
+
+- Right click on your project&apos;s folder and select Run As -&gt; bada Simulator Application. You need to close the emulator every time you update your app!
+
+5B. Deploy to Device
+--------------------
+
+- Make sure your device is properly configured 
+
+**Bada 2.x**: Right click on your project&apos;s folder and select Run As -&gt; bada Target Web Application
+
+**Bada 1.2**:
+- Right click on your project&apos;s folder and select Build configurations -> Set Active -> Target-Debug
+- Right click on your project&apos;s folder and select Run As -> bada Target Application. You need to close the emulator every time you update your app!
+
+
+Done!
+-----
diff --git a/docs/en/1.9.0/guide/getting-started/blackberry/index.md b/docs/en/1.9.0/guide/getting-started/blackberry/index.md
new file mode 100644
index 0000000..178cba1
--- /dev/null
+++ b/docs/en/1.9.0/guide/getting-started/blackberry/index.md
@@ -0,0 +1,101 @@
+---
+license: 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.
+---
+
+Getting Started with Blackberry
+============================
+
+Cordova for BlackBerry makes use of the [BlackBerry WebWorks framework](https://bdsc.webapps.blackberry.com/html5). BlackBerry WebWorks tooling is available for Windows or Mac environments. WebWorks applications can ONLY be deployed to BlackBerry devices running OS 5.0 and higher or the BlackBerry PlayBook operating system.
+
+1.  Requirements
+---------------
+
+- Windows XP (32-bit) or Windows 7 (32-bit and 64-bit) or Mac OSX 10.6.4+
+- Java Development Kit (JDK)
+    - Windows: [Oracle JDK](http://www.oracle.com/technetwork/java/javase/downloads/index.html#jdk) (32-Bit Version)
+    - Mac OS X: Versions prior to Mac OS X 10.7 provided Java by default.  OS X 10.7+ requires installation of [Java](http://support.apple.com/kb/DL1421).
+-   Apache Ant
+    - Windows: [Apache Ant](http://ant.apache.org/bindownload.cgi).
+    - Mac OS X: Apache Ant is bundled with Java install.
+
+2.  Install SDK + Cordova
+-------------------------
+
+- PlayBook development requires the [Adobe Air SDK](http://www.adobe.com/devnet/air/air-sdk-download.html)
+- Download and install one or more of the WebWorks SDKs. Keep note of the install directory.
+    - Smartphone Development: [BlackBerry WebWorks Smartphone SDK](https://bdsc.webapps.blackberry.com/html5/download/sdk)
+    - PlayBook Development: [BlackBerry WebWorks Tablet OS SDK](https://bdsc.webapps.blackberry.com/html5/download/sdk)
+- Download the latest copy of [Cordova](http://phonegap.com/download) and extract its contents.
+
+3.  Setup New Project
+--------------------
+
+- Open up a command prompt/terminal and navigate to where you extracted Cordova.
+- There is a directory for each platform that Cordova supports.  CD into the blackberry directory.
+- The blackberry directory contains two directories, `sample` and `www`.  The `sample` folder contains a complete Cordova project.  Copy the `sample` folder to another location on your computer.
+- Change to the newly created directory.
+- Open up the project.properties file with your favorite editor and edit the entries for `blackberry.bbwp.dir=` and/or `playbook.bbwp.dir=`. Set the  value(s) to the directory containing the `bbwp` binary in the WebWorks SDK(s) installed earlier.
+
+4.  Hello World
+--------------
+
+Build the Cordova sample project by typing `ant target build` in your command prompt/terminal while you are in your project's directory. Replace `target` with either `blackberry` or `playbook`. Note this is a sample Cordova project and not a basic hello world application. The provided index.html in the www contains example usages of many of the Cordova API.
+
+5A.  Deploy to Simulator
+--------------------------------------
+
+BlackBerry smartphone simulators are only available on Windows. PlayBook simulators require VMWare Player (Windows) or VMWare Fusion (Mac OS X). The WebWorks SDK provides a default simulator. Additional simulators are [available](http://us.blackberry.com/developers/resources/simulators.jsp).
+
+- Open the project.properties file with your favorite editor and customize the following properties.
+    - Smartphone (Optional)
+        - `blackberry.sim.dir` : Path to directory containing simulator. On windows file separator '\' must be escaped '\\\'.
+        - `blackberry.sim.bin` : Name of the simulator executable in the specified directory.
+    - Playbook
+        - `playbook.sim.ip` : IP address of simulator obtained when placing the simulator in developer mode through simulator security settings.
+        - `playbook.sim.password` : Simulator password which can be set through simulator security settings.
+- While in your project directory, in command prompt/terminal type `ant target load-simulator`. Replace `target` with either `blackberry` or `playbook`.  Note, for PlayBook the simulator virtual image must already be started.
+- The application will be installed in the All Applications section in the simulator.  Note, on BlackBerry OS 5 the application is installed in the Downloads folder.
+
+5B.  Deploy to Device (Windows and Mac)
+--------------------------------------
+
+- Deploying to a device requires signing keys which can be obtained from RIM.
+    - Fill out this [form](https://bdsc.webapps.blackberry.com/html5/signingkey). to request signing keys.
+    - Install the signing keys once they have been received:
+        - [Setup Smartphone Signing keys](https://bdsc.webapps.blackberry.com/html5/documentation/ww_publishing/signing_setup_smartphone_apps_1920010_11.html)
+        - [Setup Tablet Signing keys](https://bdsc.webapps.blackberry.com/html5/documentation/ww_publishing/signing_setup_tablet_apps_1920009_11.html)
+- Install [BlackBerry Desktop Sofware](http://us.blackberry.com/apps-software/desktop/) to be able to install a signed application to a smartphone device attached via USB.
+- Open the project.properties file with your favorite editor and customize the following properties:
+    - Smartphone (Optional)
+        - `blackberry.sigtool.password` : Password used when code signing keys were registered.  If not specified, a prompt will occur.
+    - Playbook (Required)
+        - `playbook.sigtool.csk.password` : Signing key password.
+        - `playbook.sigtool.p12.password` : Signing key password.
+        - `playbook.device.ip` : IP address of device obtained when placing the device in developer mode through device security settings.
+        - `playbook.device.password` : Device password which is set through device security settings.
+- While in your project directory, in command prompt/terminal type `ant target load-device`. Replace `target` with either `blackberry` or `playbook`.
+- The application will be installed in the All Applications section in the device.  Note, on BlackBerry OS 5 the application is installed in the Downloads folder.
+
+Additional Information
+----------------------
+
+The following articles provide help to issues you may encounter when developing a Cordova application which is based on the BlackBerry WebWorks framework.
+
+- [BlackBerry WebWorks Development Pitfalls](http://supportforums.blackberry.com/t5/Web-and-WebWorks-Development/Common-BlackBerry-WebWorks-development-pitfalls-that-can-be/ta-p/624712)
+- [Best practices for packaging WebWorks applications](https://bdsc.webapps.blackberry.com/html5/documentation/ww_developing/bestpractice_compiling_ww_apps_1873324_11.html)
+
diff --git a/docs/en/1.9.0/guide/getting-started/index.md b/docs/en/1.9.0/guide/getting-started/index.md
new file mode 100644
index 0000000..ac9b754
--- /dev/null
+++ b/docs/en/1.9.0/guide/getting-started/index.md
@@ -0,0 +1,29 @@
+---
+license: 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.
+---
+
+Getting Started Guides
+======================
+
+- Getting Started with Android
+- Getting Started with Blackberry
+- Getting Started with iOS
+- Getting Started with Symbian
+- Getting Started with WebOS
+- Getting Started with Windows Phone
+- Getting Started with Bada
diff --git a/docs/en/1.9.0/guide/getting-started/ios/index.md b/docs/en/1.9.0/guide/getting-started/ios/index.md
new file mode 100644
index 0000000..290068b
--- /dev/null
+++ b/docs/en/1.9.0/guide/getting-started/ios/index.md
@@ -0,0 +1,129 @@
+---
+license: 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.
+---
+
+Getting Started with iOS
+========================
+
+This guide describes how to set up your development environment for Apache Cordova and run a sample Apache Cordova application.
+
+Video Tutorial
+--------------
+
+- [Cordova Installer - Xcode 4 Template](http://www.youtube.com/v/R9zktJUN7AI?autoplay=1)
+
+Requirements
+------------
+- Xcode 4.x
+- Intel-based computer with Mac OS X Lion (10.7)
+- Necessary for installing on device:
+    - Apple iOS device (iPhone, iPad, iPod Touch)
+    - iOS developer certificate
+
+Install iOS SDK and Apache Cordova
+----------------------------------
+
+- Install Xcode from the [Mac App Store](http://itunes.apple.com/us/app/xcode/id497799835?mt=12)
+- Download the latest release of [Apache Cordova](http://phonegap.com/download)
+    - extract its contents
+    - Apache Cordova iOS is found under `lib/ios`
+
+Setup New Project
+-----------------
+
+- Launch Xcode
+- Select the _File Menu_
+- Select _New_ -> _New Project..._
+- Select _Cordova-based Application_ from the list of templates
+
+    ![](img/guide/getting-started/ios/XCode4-templates.png)
+
+- Select the _Next_ button
+- Fill in the _Product Name_ and _Company Identifier_ for your app
+
+    ![](img/guide/getting-started/ios/xcode4-name_your_app.png)
+
+- **Note:** Do **not** check _Use Automatic Reference Counting_
+- Select the _Next_ button
+- Choose a folder to save your new app
+- Select the _Create_ button
+
+We've now created an Apache Cordova project. Next, we need to associate the
+project with a web directory. We need to do this step because of a limitation
+in Xcode project templates.
+
+- Select the _Run_ button in the top left corner. 
+    - your build should succeed and launch in the iOS Simulator
+    - you should see an error in the iOS Simulator informing you that _www/index.html was not found_
+    - we can fix this by adding a folder to the project that references `www`
+
+    ![](img/guide/getting-started/ios/index-not-found.png)
+
+- Right-click on the project icon in the _Project Navigator_ (left sidebar) and select _Show in Finder_
+- Using Finder, you should see a `www` directory inside your project
+
+    ![](img/guide/getting-started/ios/www-folder.png)
+
+- Drag the `www` directory into Xcode
+    - A common mistake is to drag the `www` directory into your app's directory inside of Finder
+    - Please follow the red highlighted section of the image below:
+
+    ![](img/guide/getting-started/ios/project.jpg)
+
+- After dragging `www` into Xcode, you will be prompted with a few options.
+    - Select _Create folder references for any added folders_
+    - Select the _Finish_ button
+
+    ![](img/guide/getting-started/ios/create-folder-reference.png)
+
+Hello World
+-----------
+
+- Select the folder named `www` in the Xcode _Project Navigator_
+- Select the file `index.html`
+- Add the following after `<body>`:
+
+        <h1>Hello World</h1>
+
+You can also add any associated JavaScript and CSS files there as well.
+    
+Deploy to Simulator
+-------------------
+
+- Change the _Active SDK_ in the Scheme drop-down menu on the toolbar to _iOS version Simulator_
+- Select the _Run_ button in your project window's toolbar
+
+Deploy to Device
+----------------
+
+- Open `YourAppName-Info.plist`, under the _Supporting Files_ group
+- Change _BundleIdentifier_ to the identifier provided by Apple or your own bundle identifier
+    - If you have a developer license, you can run the [Assistant](http://developer.apple.com/iphone/manage/overview/index.action) to register your app
+- Change the _Active SDK_ in the Scheme drop-down menu on the toolbar to _YourDeviceName_
+    - You will need to have your device connected via USB
+- Select the _Run_ button in your project window's toolbar
+
+    ![](img/guide/getting-started/ios/HelloWorldiPhone4.png)
+
+Build Your App
+--------------
+
+You now have an Xcode project setup and you can build and run on the simulator and device.
+It is important to understand that you do not need to use Xcode to write your web application.
+You can use your favourite text editor and simply rebuild your project using Xcode.
+Xcode will automatically detect the files that are changed in `www`.
diff --git a/docs/en/1.9.0/guide/getting-started/symbian/index.md b/docs/en/1.9.0/guide/getting-started/symbian/index.md
new file mode 100644
index 0000000..26ff6e4
--- /dev/null
+++ b/docs/en/1.9.0/guide/getting-started/symbian/index.md
@@ -0,0 +1,78 @@
+---
+license: 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.
+---
+
+Getting Started with Symbian
+============================
+
+This guide describes how to set up your development environment for Cordova and run a sample application.  Note that Cordova used to be called PhoneGap, so some of the sites still use the old PhoneGap name.
+
+Video Tutorials:
+----------------
+
+- [Cordova Installer - Xcode 4 Template](http://www.youtube.com/v/R9zktJUN7AI?autoplay=1)
+
+
+1. Requirements
+---------------
+
+- Windows, OS X, or Linux
+
+There are also [QT for Symbian](http://wiki.phonegap.com/w/page/16494811/PhoneGap-Symbian-%28Qt%29) and [Symbian with Sony Ericsson](http://wiki.phonegap.com/w/page/16494782/Getting-Started-with-PhoneGap-Symbian-(WRT-on-Sony-Ericsson)) guides.
+
+
+2. Install SDK + Cordova
+-------------------------
+
+- Download and install [cygwin](http://www.cygwin.com/setup.exe) (Windows only). Make sure you select "make" as it is not included by default
+- Donwload the latest copy of [Cordova](http://phonegap.com/download) and extract its contents. We will be working with the Android directory.
+
+
+3. Setup New Project
+--------------------
+
+- In cygwin, navigate to where you extracted Cordova and go into the Symbian directory</li>
+
+ 
+4. Hello World
+--------------
+
+- Open up index.html located in phonegap/symbian/framework/www with your favourite editor. 
+- In the `body` tag, remove the line `"Build your phonegap app here! Dude!"` and add the line `<h1>Hello World</h1>`
+- In cygwin/terminal, type make. This will produce phonegap-symbian.wrt/app.wgz. 
+
+
+5A. Deploy to Simulator
+-----------------------
+
+- For Mac or Linux you should install [Aptana Studio](http://www.aptana.org/products/studio2/download) and [Nokia WRT Plug-in for Aptana Studio](http://www.forum.nokia.com/info/sw.nokia.com/id/00d62bd8-4214-4c86-b608-5f11b94dad54/Nokia_WRT_Plug_in_for_Aptana_Studio.html). This has a browser-based javascript emulator
+- For Windows you can download the [S60 SDK](http://www.forum.nokia.com/info/sw.nokia.com/id/ec866fab-4b76-49f6-b5a5-af0631419e9c/S60_All_in_One_SDKs.html) which includes the S60 Emulator
+- Load the phonegap-symbian.wrt/app.wgz file into the emulator.
+
+
+5B. Deploy to Device
+--------------------
+
+- Load the phonegap-symbian.wrt/app.wgz file into the device using bluetooth or email.
+
+
+Done!
+-----
+
+You can also checkout more detailed version of this guide [here](http://wiki.phonegap.com/w/page/16494780/Getting-Started-with-Phonegap-Nokia-WRT).
+
diff --git a/docs/en/1.9.0/guide/getting-started/webos/index.md b/docs/en/1.9.0/guide/getting-started/webos/index.md
new file mode 100644
index 0000000..37ab244
--- /dev/null
+++ b/docs/en/1.9.0/guide/getting-started/webos/index.md
@@ -0,0 +1,79 @@
+---
+license: 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.
+---
+
+Getting Started with WebOS
+==========================
+
+This guide describes how to set up your development environment for Cordova and run a sample application.  Note that Cordova used to be called PhoneGap, so some of the sites still use the old PhoneGap name.
+
+Video Tutorials:
+----------------
+
+- [Cordova and HP Palm webOS quick start video](http://www.youtube.com/v/XEnAUbDRZfw?autoplay=1)
+- [How to convert iPhone app to a Palm](http://www.youtube.com/v/wWoJfQw79XI?autoplay=1)
+
+
+1. Requirements
+---------------
+
+- Windows, OS X, or Linux
+
+
+2. Install SDK + Cordova
+----------------------------
+
+- Download and install [Virtual Box](http://www.virtualbox.org/)
+- Download and install [WebOS SDK](http://developer.palm.com/index.php?option=com_content&view=article&layout=page&id=1788&Itemid=321/)
+- Download and install [cygwin SDK](http://developer.palm.com/index.php?option=com_content&amp;view=article&amp;layout=page&amp;id=1788&amp;Itemid=321)  (Windows only). Make sure you select "make" as it is not included by default
+- Download the latest copy of [Cordova](http://phonegap.com/download) and extract its contents. We will be working with the webOS directory.
+- Download and install XCode from the [Mac App Store](http://itunes.apple.com/ca/app/xcode/id497799835?mt=12) (OSX only)
+- Download and install Command Line Tools for XCode (OSX only); this can be done by going to XCode's Preferences -> Downloads -> Components and then click install on Command Line Tools
+
+ 
+3. Setup New Project
+--------------------
+
+- Open up terminal/cygwin and navigate to where you extracted your Cordova Download. Go into the webOS directory.
+
+
+4. Hello World
+--------------
+
+In phonegap/webOS/framework/www, open up index.html with your favourite editor. After the body tag add `<h1>Hello World</h1>`
+
+
+5A. Deploy to Simulator
+-----------------------
+
+- Open up your Palm Emulator from your applications folder/start menu.
+- Type `make` in your terminal/cygwin while in the webOS directory.
+
+
+5B. Deploy to Device
+--------------------
+
+- Make sure your device is in [Developer Mode and plug it in.](http://developer.palm.com/index.php?option=com_content&amp;view=article&amp;id=1552&amp;Itemid=59#dev_mode)
+- Type `make` in your terminal/cygwin while in the webOS directory.
+       
+
+Done!
+-----
+
+You can also checkout more detailed version of this guide [here](http://wiki.phonegap.com/w/page/16494781/Getting-Started-with-PhoneGap-webOS).
+
diff --git a/docs/en/1.9.0/guide/getting-started/windows-phone/index.md b/docs/en/1.9.0/guide/getting-started/windows-phone/index.md
new file mode 100644
index 0000000..4a7374e
--- /dev/null
+++ b/docs/en/1.9.0/guide/getting-started/windows-phone/index.md
@@ -0,0 +1,101 @@
+---
+license: 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.
+---
+
+Getting Started with Windows Phone
+==================================
+
+This guide describes how to set up your development environment for Cordova and run a sample application.  Note that Cordova used to be called PhoneGap, so some of the sites still use the old PhoneGap name.
+
+Video Tutorials:
+----------------
+
+- [Cordova and Windows Phone quick setup video](http://www.youtube.com/v/wO9xdRcNHIM?autoplay=1)
+- [Cordova and Windows Phone deep dive](http://www.youtube.com/v/BJFX1GRUXj8?autoplay=1)
+
+
+1. Requirements
+---------------
+
+- Windows 7 or Windows Vista with SP2
+
+Note: Running in VM has issues, if you are on a Mac, you will need to setup a bootcamp partition with Windows 7 or Vista
+
+Necessary for Installing on Device and Submitting to Market Place:
+
+- Become an [App Hub member](http://create.msdn.com/en-US/home/membership).
+
+
+2. Install SDK + Cordova
+----------------------------
+
+- Download and install [Windows Phone  SDK](http://www.microsoft.com/download/en/details.aspx?displaylang=en&amp;id=27570/)
+- Download the latest copy of [Cordova](http://phonegap.com/download) and extract its contents. We will be working with the subfolder: lib\windows-phone\
+- copy the file CordovaStarter-x.x.x.zip to the folder : \My Documents\Visual Studio 2010\Templates\ProjectTemplates\
+if you have just installed VisualStudio, you should launch it once to create this folder
+if you prefer, you may add the project instead to the "Silverlight for Windows Phone" subfolder of "Visual C#". This is up to you, and only affects where the project template is shown when creating a new project. Also, You may need to create this folder.
+
+
+
+3. Setup New Project
+--------------------
+
+- Open Visual Studio Express for Windows Phone and choose **New Project**.
+- Select **CordovaStarter**. ( the version number will be displayed in the template description )
+- - note: If you do not see it, you may have to select the top level 'Visual C#' to see it
+- Give your project a name, and select OK.
+
+    ![](img/guide/getting-started/windows-phone/wpnewproj.PNG)
+
+ 
+4. Review the project structure
+-------------------------------
+
+- The 'www' folder contains your Cordova html/js/css and any other resources included in your app.
+- Any content that you add here needs to be a part of the Visual Studio project, and it must be set as content. 
+
+    ![](img/guide/getting-started/windows-phone/wp7projectstructure.PNG)
+
+
+5. Build and Deploy to Emulator
+-------------------------------
+
+- Make sure to have **Windows Phone Emulator** selected in the top drop-down menu.
+- Hit the green **play button** beside the Windows Phone Emulator drop-down menu to start debugging or press F5.
+
+    ![](img/guide/getting-started/windows-phone/wprun.png)
+    ![](img/guide/getting-started/windows-phone/wpfirstrun.PNG)
+
+
+6. Build your project for the device
+------------------------------------
+
+In order to test your application on a device, the device must be registered. Click [here](http://msdn.microsoft.com/en-us/library/gg588378(v=VS.92).aspx) to read documentation on deploying and testing on your Windows Phone.
+
+- Make sure your phone is connected, and the screen is unlocked
+- In Visual Studio, select 'Windows Phone Device' from the top drop-down menu.
+- Hit the green **play button** beside the drop-down menu to start debugging or press F5.
+
+    ![](img/guide/getting-started/windows-phone/wpd.png)
+
+
+Done!
+-----
+
+You can also checkout more detailed version of this guide [here](http://wiki.phonegap.com/w/page/48672055/Getting%20Started%20with%20PhoneGap%20Windows%20Phone%207).
+
diff --git a/docs/en/1.9.0/guide/upgrading/android/index.md b/docs/en/1.9.0/guide/upgrading/android/index.md
new file mode 100644
index 0000000..a557094
--- /dev/null
+++ b/docs/en/1.9.0/guide/upgrading/android/index.md
@@ -0,0 +1,114 @@
+---
+license: 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.
+---
+
+Upgrading Cordova Android
+=========================
+
+
+This document is for people who need to upgrade their Cordova versions from an older version to a current version of Cordova.
+
+- To upgrade to 1.8.0, please go from 1.7.0
+- To upgrade to 1.7.0, please go from 1.6.0
+- To upgrade to 1.0.0, please go from 0.9.6
+
+## Upgrade to 1.8.0 from 1.7.0 ##
+
+1. Remove cordova-1.7.0.jar from the libs directory in your project
+2. Add cordova-1.8.0.jar to the libs directory in your project
+3. If you are using Eclipse, please refresh your eclipse project and do a clean
+4. Copy the new cordova-1.8.0.js into your project
+5. Update your HTML to use the new cordova-1.8.0.js file
+6. Update the res/xml/plugins.xml to be the same as the one found in framework/res/xml/plugins.xml
+
+
+## Upgrade to 1.7.0 from 1.6.0 ##
+
+1. Remove cordova-1.6.0.jar from the libs directory in your project
+2. Add cordova-1.7.0.jar to the libs directory in your project
+3. If you are using Eclipse, please refresh your eclipse project and do a clean
+4. Copy the new cordova-1.7.0.js into your project
+5. Update the res/xml/plugins.xml to be the same as the one found in framework/res/xml/plugins.xml
+
+# Upgrade to 1.6.0 from 1.5.0
+1. Remove cordova-1.5.0.jar from the libs directory in your project
+2. Add cordova-1.6.0.jar to the libs directory in your project
+3. If you are using Eclipse, please refresh your eclipse project and do a clean
+4. Copy the new cordova-1.6.0.js into your project
+5. Update your HTML to use the new cordova-1.6.0.js file
+6. Update the res/xml/plugins.xml so that it is the same as the one found in framework/res/xml/plugins.xml
+7. Replace the res/xml/phonegap.xml with res/xml/cordova.xml so that it is the same as the one found in framework/res/xml/cordova.xml
+
+
+# Upgrade to 1.5.0 from 1.4.0
+1. Remove phonegap-1.4.0.jar from the libs directory in your project
+2. Add cordova-1.5.0.jar to the libs directory in your project
+3. If you are using Eclipse, please refresh your eclipse project and do a clean
+4. Copy the new cordova-1.5.0.js into your project
+5. Update your HTML to use the new cordova-1.5.0.js file
+6. Update the res/xml/plugins.xml so that it is the same as the one found in framework/res/xml/plugins.xml
+7. Replace the res/xml/phonegap.xml with res/xml/cordova.xml so that it is the same as the one found in framework/res/xml/cordova.xml
+
+# Upgrade to 1.4.0 from 1.3.0
+1. Remove phonegap-1.3.0.jar from the libs directory in your project
+2. Add phonegap-1.4.0.jar to the libs directory in your project
+3. If you are using Eclipse, please refresh your eclipse project and do a clean
+4. Copy the new phonegap-1.4.0.js into your project
+5. Update your HTML to use the new phonegap-1.4.0.js file
+6. Update the res/xml/plugins.xml so that it is the same as the one found in framework/res/xml/plugins.xml
+7. Update the res/xml/phonegap.xml so that it is the same as the one found in framework/res/xml/phonegap.xml
+
+
+# Upgrade to 1.3.0 from 1.2.0
+1. Remove phonegap-1.2.0.jar from the libs directory in your project
+2. Add phonegap-1.3.0.jar to the libs directory in your project
+3. If you are using Eclipse, please refresh your eclipse project and do a clean
+4. Copy the new phonegap-1.3.0.js into your project
+5. Update your HTML to use the new phonegap-1.2.0.js file
+6. Update the res/xml/plugins.xml so that it is the same as the one found in framework/res/xml/plugins.xml
+7. Update the res/xml/phonegap.xml so that it is the same as the one found in framework/res/xml/phonegap.xml
+
+
+# Upgrade to 1.2.0 from 1.1.0
+1. Remove phonegap-1.1.0.jar from the libs directory in your project
+2. Add phonegap-1.2.0.jar to the libs directory in your project
+3. If you are using Eclipse, please refresh your eclipse project and do a clean
+4. Copy the new phonegap-1.2.0.js into your project
+5. Update your HTML to use the new phonegap-1.2.0.js file
+6. Update the res/xml/plugins.xml so that it is the same as the one found in framework/res/xml/plugins.xml
+7. Update the res/xml/phonegap.xml so that it is the same as the one found in framework/res/xml/phonegap.xml
+
+
+# Upgrade to 1.1.0 from 1.0.0
+1. Remove phonegap-1.0.0.jar from the libs directory in your project
+2. Add phonegap-1.1.0.jar to the libs directory in your project
+3. If you are using Eclipse, please refresh your eclipse project and do a clean
+4. Copy the new phonegap-1.1.0.js into your project
+5. Update your HTML to use the new phonegap-1.1.0.js file
+6. Update the res/xml/plugins.xml so that it is the same as the one found in framework/res/xml/plugins.xml
+
+
+# Upgrade to 1.0.0 from 0.9.6
+1. Remove phonegap-0.9.6.jar from the libs directory in your project
+2. Add phonegap-1.0.0.jar to the libs directory in your project
+3. If you are using Eclipse, please refresh your eclipse project and do a clean
+4. Copy the new phonegap-1.0.0.js into your project
+5. Update your HTML to use the new phonegap-1.0.0.js file
+6. Add the res/xml/plugins.xml so that it is the same as the one found in framework/res/xml/plugins.xml
+
+
diff --git a/docs/en/1.9.0/guide/upgrading/bada/index.md b/docs/en/1.9.0/guide/upgrading/bada/index.md
new file mode 100644
index 0000000..8f42d6d
--- /dev/null
+++ b/docs/en/1.9.0/guide/upgrading/bada/index.md
@@ -0,0 +1,40 @@
+---
+license: 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.
+---
+
+Upgrading Cordova Bada
+======================
+
+This document is for people who need to upgrade their Cordova versions from an older version to a current version of Cordova.
+
+## Upgrade to 1.8.0 from 1.7.0 ##
+
+1. Remove the cordova.bada.js file from the Res/js directory 
+2. Add the new cordova.js file to your Res/js directory 
+3. Update your Res/index.html to reference cordova.js instead of cordova.bada.js 
+
+Change this line:
+    
+    <script type="text/javascript" src="./js/cordova.bada.js"></script>
+    
+
+*to*
+
+    <script type="text/javascript" src="./js/cordova.js"></script>
+
+As of Cordova 1.8, Bada 1.2 is no longer supported! The repository will be kept there as an archive for people who still want to use it. It contains some outdated APIs.
diff --git a/docs/en/1.9.0/guide/upgrading/blackberry/index.md b/docs/en/1.9.0/guide/upgrading/blackberry/index.md
new file mode 100644
index 0000000..c047267
--- /dev/null
+++ b/docs/en/1.9.0/guide/upgrading/blackberry/index.md
@@ -0,0 +1,70 @@
+---
+license: 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.
+---
+
+Upgrading Cordova BlackBerry
+============================
+
+This document is for people who need to upgrade their Cordova versions from an older version to a current version of Cordova.
+
+- To upgrade to 1.8.0, please go from 1.7.0
+
+## Upgrade to 1.8.0 from 1.7.0 ##
+
+Updating just the www folder:
+
+1. Open your `www/` folder, which contains your app.
+2. Remove and update the .jar file in the `ext/` folder.
+3. Update the contents of the `ext-air/` folder.
+4. Copy the new `cordova-1.8.0.js` into your project.
+    - If playbook, then update the .js file in the `playbook/` folder.
+5. Update your HTML to use the new `cordova-1.8.0.js` file.
+6. Update your `www/plugins.xml` file. Two plugins changed their
+   namespace/service label. Change the old entries for the Capture and
+   Contact plugins from:
+
+        <plugin name="Capture" value="org.apache.cordova.media.MediaCapture"/>
+        <plugin name="Contact" value="org.apache.cordova.pim.Contact"/>
+
+   To:
+
+        <plugin name="Capture" value="org.apache.cordova.capture.MediaCapture"/>
+        <plugin name="Contacts" value="org.apache.cordova.pim.Contact"/>
+
+
+Updating the sample folder (ie, updating using the ant tools):
+
+1. Open the `sample/lib/` folder.
+2. Update the .jar file in the `cordova.1.7.0/ext/` folder.
+3. Update the contents of the `cordova.1.7.0/ext-air/` folder.
+4. Update the .js file in the `cordova.1.7.0/javascript/` folder.
+5. Open the `sample/lib/` folder and rename the `cordova.1.7.0/` folder to `cordova.1.8.0/`.
+6. Type `ant blackberry build` or `ant playbook build` to update the `www/` folder with updated Cordova.
+7. Open the `www/` folder and update your HTML to use the new `cordova-1.8.0.js` file.
+8. Open the `www/` folder and update the `plugins.xml` file. Two plugins
+   changed their namespace/service label. Change the old entries for the
+   Capture and Contact plugins from:
+
+         <plugin name="Capture" value="org.apache.cordova.media.MediaCapture"/>
+         <plugin name="Contact" value="org.apache.cordova.pim.Contact"/>
+
+   To:
+
+         <plugin name="Capture" value="org.apache.cordova.capture.MediaCapture"/>
+         <plugin name="Contacts" value="org.apache.cordova.pim.Contact"/>
+
diff --git a/docs/en/1.9.0/guide/upgrading/index.md b/docs/en/1.9.0/guide/upgrading/index.md
new file mode 100644
index 0000000..9e035de
--- /dev/null
+++ b/docs/en/1.9.0/guide/upgrading/index.md
@@ -0,0 +1,31 @@
+---
+license: 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.
+---
+
+Upgrading Guides
+================
+
+> Learn how to upgrade an application to the latest Apache Cordova release.
+
+- Upgrading Cordova Android
+- Upgrading Cordova BlackBerry
+- Upgrading Cordova iOS
+- Upgrading Cordova Symbian
+- Upgrading Cordova webOS
+- Upgrading Cordova Windows Phone
+- Upgrading Cordova Bada
diff --git a/docs/en/1.9.0/guide/upgrading/ios/index.md b/docs/en/1.9.0/guide/upgrading/ios/index.md
new file mode 100644
index 0000000..058a26a
--- /dev/null
+++ b/docs/en/1.9.0/guide/upgrading/ios/index.md
@@ -0,0 +1,145 @@
+---
+license: 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.
+---
+
+Upgrading Cordova iOS
+=====================
+
+Please note that **Xcode 4 is required**. To submit to the Apple App Store, you must use the latest shipped version of the iOS SDK, which is iOS 5.1. The iOS 5.1 SDK requires Xcode 4.
+
+## Upgrading Cordova 1.8.x projects to 1.9.0 ##
+
+1. **Install** Cordova 1.9.0
+2. **Create a new project** - you will have to grab assets from this new project
+3. **Copy** the **www/cordova-1.9.0.js** file from the new project into your **www** folder, and delete your **www/cordova-1.8.x.js** file
+4. **Update** the Cordova script reference in your **www/index.html** file (and any other files that contain the script reference) to point to the new **cordova-1.9.0.js** file
+
+**Note:**
+
+1.9.0 supports the new **"BackupWebStorage"** boolean setting in Cordova.plist. By default, this setting is turned on, set it to "false" to turn it off - especially for iOS 6 - see [Release Notes - Safari and UIKit Section](https://developer.apple.com/library/prerelease/ios/#releasenotes/General/RN-iOSSDK-6_0/_index.html)
+
+
+## Upgrading Cordova 1.7.0 projects to 1.8.x ##
+
+1. **Install** Cordova 1.8.0
+2. **Create a new project** - you will have to grab assets from this new project
+3. **Copy** the **www/cordova-1.8.0.js** file from the new project into your **www** folder, and delete your **www/cordova-1.7.x.js** file
+4. **Update** the Cordova script reference in your **www/index.html** file (and any other files that contain the script reference) to point to the new **cordova-1.8.0.js** file
+
+If you intend on using the **Capture API**, you will need the new **iPad retina-display** assets:
+
+1.  **Copy** the **Resources/Capture.bundle** item from the new project into your project folder, over-writing your existing **Resources/Capture.bundle** item
+2.  In your project, select the **Capture.bundle** item into Xcode into your Project Navigator, and press the **Delete** key, then select **Remove Reference** from the dialog that pops up.
+3.  Drag the new **Capture.bundle** from Step 1. above into Xcode into your Project Navigator, and select the **Create groups for any added folders** radio-button
+
+## Upgrading Cordova 1.6.x projects to 1.7.0 ##
+
+1. **Install** Cordova 1.7.0
+2. **Create a new project** - you will have to grab assets from this new project
+3. **Copy** the **www/cordova-1.7.0.js** file from the new project into your **www** folder, and delete your **www/cordova-1.6.0.js** file
+4. **Update** the Cordova script reference in your **www/index.html** file (and any other files that contain the script reference) to point to the new **cordova-1.7.0.js** file
+
+## Upgrading Cordova 1.5.0 projects to 1.6.x ##
+
+1. **Install** Cordova 1.6.1
+2. **Make a backup** of **AppDelegate.m**, **AppDelegate.h**, **MainViewController.m**, **MainViewController.h**, and **Cordova.plist** in your project
+3. **Create a new project** - you will have to grab assets from this new project
+4. **Copy** these files from the **new** project into your 1.5.0 based project folder on disk, **replacing** any old files (**backup** your files first from step 2 above):
+
+        AppDelegate.h
+        AppDelegate.m
+        MainViewController.h
+        MainViewController.m
+        Cordova.plist
+5. **Add** all the new **MainViewController** and **AppDelegate** files into your Xcode project
+6. **Copy** the **www/cordova-1.6.1.js** file from the new project into your **www** folder, and delete your **www/cordova-1.5.0.js** file
+7. **Update** the Cordova script reference in your **www/index.html** file (and any other files that contain the script reference) to point to the new **cordova-1.6.1.js** file
+8. **Add** the new **Cordova.plist** file into your project - this is because the core plugin service names needed to be changed to match the ones from Android and Blackberry, for a unified Cordova JavaScript file (cordova-js). 
+9. **Integrate** any settings, **Plugins** and **ExternalHosts** entries that you had in your **backed-up Cordova.plist** into the new **Cordova.plist**
+10. **Integrate** any project specific code that you have in your **backed-up AppDelegate.h and AppDelegate.m** into the new AppDelegate files. Any **UIWebViewDelegate** or **CDVCommandDelegate** code in **AppDelegate.m** will need to go into MainViewController.m now (see commented out sections in that file)
+11. **Integrate** any project specific code that you have in your **backed-up MainViewController.h and MainViewController.m** into the new MainViewController files
+12. Click on the **project icon** in the Project Navigator, select your **Project**, then select the **"Build Settings"** tab
+13. Enter **"Compiler for C/C++/Objective-C"** in the search field
+14. Select the **"Apple LLVM Compiler 3.1"** value
+
+
+## Upgrading Cordova 1.4.x projects to 1.5.0 ##
+
+1. **Install** Cordova 1.5.0
+2. **Create a new project** and run it once - you will have to grab assets from this new project
+3. **Copy** the **www/cordova-1.5.0.js** file from the new project into your **www** folder, and delete your **www/phonegap-1.4.x.js** file
+4. **Update** the Cordova script reference in your **www/index.html** file (and any other files that contain the script reference) to point to the new Cordova **cordova-1.5.0.js** file
+5. Find **"PhoneGap.framework"** in your Project Navigator, select it
+6. Press the **Delete** key and delete the **"PhoneGap.framework"** reference in the Project Navigator
+7. Press the key combination **Option-Command-A**, which should drop down a sheet to add files to your project (the **"Add Files..." sheet**). Make sure the **"Created groups for any added folders"** radio-button is selected
+8. Press the key combination **Shift-Command-G**, which should drop down another sheet for you to go to a folder (the **"Go to the folder:" sheet**)
+9. Enter **"/Users/Shared/Cordova/Frameworks/Cordova.framework"** in the **"Go to the folder:" sheet** and then press the **"Go"** button
+10. Press the **"Add"** button in the **"Add Files..." sheet**
+11. **Select "Cordova.framework"** in the Project Navigator
+12. Press the key combination **Option-Command-1** to show the **File Inspector**
+13. Choose **"Absolute Path"** in the **File Inspector** for the drop-down menu for **Location**
+14. Press the key combination **Option-Command-A**, which should drop down a sheet to add files to your project (the **"Add Files..." sheet**). Make sure the **"Created groups for any added folders"** radio-button is selected
+15. Press the key combination **Shift-Command-G**, which should drop down another sheet for you to go to a folder (the **"Go to the folder:" sheet**)
+16. Enter **"~/Documents/CordovaLib/Classes/deprecated"** in the **"Go to the folder:" sheet** and then press the **"Go"** button
+17. Press the **"Add"** button in the **"Add Files..." sheet**
+18. In your **AppDelegate.h, AppDelegate.m, and MainViewController.h** files - replace the whole **#ifdef PHONEGAP_FRAMEWORK** block with:
+
+        #import "CDVDeprecated.h"
+19. Click on the **project icon** in the Project Navigator, select your **Target**, then select the **"Build Settings"** tab
+20. Search for **"Framework Search Paths"**
+21. Replace the existing value with **"/Users/Shared/Cordova/Frameworks"** 
+22. Search for **"Preprocessor Macros"**
+23. For the first (combined) value, replace the value with **"CORDOVA_FRAMEWORK=YES"**
+24. Select the **"Build Phases"** tab
+25. Expand **"Run Script"**
+26. Replace any occurrences of **PhoneGap** with **Cordova**
+27. Find your **"PhoneGap.plist"** file in the Project Navigator, and click on the filename once to enter name edit mode
+28. Rename **"PhoneGap.plist"** to **"Cordova.plist"**
+29. Right-click on **"Cordova.plist"** and choose **"Open As" --> "Source Code"**
+30. Press **Option-Command-F**, choose **"Replace"** from the drop-down on the top left of the Source window
+31. Enter **com.phonegap** for the Find string, and **org.apache.cordova** for the Replace string - then press the **"Replace All"** button
+32. Enter **PG** for the Find string, and **CDV** for the Replace string - then press the **"Replace All"** button
+33. Press **Command-B** to build, you will still have deprecations that you can get rid of in the future (see **CDVDeprecated.h** - replace classes in your code that use PG* to CDV*, for example)
+
+## Upgrading Cordova 1.4.0 projects to 1.4.1 ##
+
+1. **Install** Cordova 1.4.1
+2. **Make a backup** of **MainViewController.m**
+3. **Create a new project** - you will have to grab assets from this new project
+4. **Copy** the **MainViewController.m** file from the **new** project into your 1.4.0 based project folder on disk, **replacing** the old file (**backup** your files first from step 2 above).
+5. **Add** the **MainViewController.m** file into your Xcode project
+6. **Integrate** any project specific code that you have in your **backed-up MainViewController.m** into the new file
+7. Updating the phonegap-X.X.X.js file is optional, nothing has changed in the JavaScript between 1.4.0 and 1.4.1
+
+## Upgrading Cordova 1.3.0 projects to 1.4.0 ##
+
+1. **Install** Cordova 1.4.0
+2. **Make a backup** of **AppDelegate.m** and **AppDelegate.h** in your project
+3. **Create a new project** - you will have to grab assets from this new project
+4. **Copy** these files from the **new** project into your 1.3.0 based project folder on disk, **replacing** any old files (**backup** your files first from step 2 above):
+
+        AppDelegate.h
+        AppDelegate.m
+        MainViewController.h
+        MainViewController.m
+        MainViewController.xib
+5. **Add** all the **MainViewController** files into your Xcode project
+6. **Copy** the **www/phonegap-1.4.0.js** file from the new project into your **www** folder, and delete your **www/phonegap-1.3.0.js** file
+7. **Update** the Cordova script reference in your **www/index.html** file (and any other files that contain the script reference) to point to the new **phonegap-1.4.0.js** file
+8. **Add** a new entry under **Plugins** in your **PhoneGap.plist** file - key is **com.phonegap.battery** and the value is **PGBattery**
+9. **Integrate** any project specific code that you have in your **backed-up AppDelegate.h and AppDelegate.m** into the new AppDelegate files
\ No newline at end of file
diff --git a/docs/en/1.9.0/guide/upgrading/symbian/index.md b/docs/en/1.9.0/guide/upgrading/symbian/index.md
new file mode 100644
index 0000000..77c3d0e
--- /dev/null
+++ b/docs/en/1.9.0/guide/upgrading/symbian/index.md
@@ -0,0 +1,21 @@
+---
+license: 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.
+---
+
+Upgrading Cordova Symbian
+=========================
diff --git a/docs/en/1.9.0/guide/upgrading/webos/index.md b/docs/en/1.9.0/guide/upgrading/webos/index.md
new file mode 100644
index 0000000..1a4a5f6
--- /dev/null
+++ b/docs/en/1.9.0/guide/upgrading/webos/index.md
@@ -0,0 +1,37 @@
+---
+license: 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.
+---
+
+Upgrading Cordova webOS
+=======================
+
+This document is for people who need to upgrade their Cordova versions from an older version to a current version of Cordova.
+
+## Upgrade to 1.9.0 from 1.8.1 ##
+
+1. remove cordova-1.8.1.js from your project
+
+2. update the following line in your index.html:
+
+    change this:
+    <script type="text/javascript" src="cordova-1.8.1.js"></script> 
+    
+    to:
+    <script type="text/javascript" src="cordova-1.9.0.js"></script> 
+
+3. run the makefile to generate the newest version of the cordova-1.9.0.js file
\ No newline at end of file
diff --git a/docs/en/1.9.0/guide/upgrading/windows-phone/index.md b/docs/en/1.9.0/guide/upgrading/windows-phone/index.md
new file mode 100644
index 0000000..84ff440
--- /dev/null
+++ b/docs/en/1.9.0/guide/upgrading/windows-phone/index.md
@@ -0,0 +1,36 @@
+---
+license: 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.
+---
+
+Upgrading Cordova Windows Phone
+===============================
+
+This document is for people who need to upgrade their Cordova versions from an older version to a current version of Cordova.
+
+- To upgrade to 1.8.0, please go from 1.7.0
+
+## Upgrade to 1.8.0 from 1.7.0 ##
+
+### In Visual Studio's Solution Explorer window:
+1. Delete the file GapLib/WP7CordovaClassLib.dll from your project.
+2. Remove the reference to WP7CordovaClassLib in the References folder.
+3. Right-Click on References and Select 'Add Reference'
+4. Navigate to the new distribution and add the file 'WP7CordovaClassLib.dll'
+    - note: you can view the version of the DLL by right-clicking on the reference, and selecting Properties.
+5. Copy the new cordova-1.8.0.js into your project ( be sure it is marked as Content )
+6. Update your HTML to use the new cordova-1.8.0.js file.
diff --git a/docs/en/1.9.0/guide/whitelist/index.md b/docs/en/1.9.0/guide/whitelist/index.md
new file mode 100644
index 0000000..2ce8b3c
--- /dev/null
+++ b/docs/en/1.9.0/guide/whitelist/index.md
@@ -0,0 +1,162 @@
+---
+license: 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.
+---
+
+Domain Whitelist Guide
+=====================
+
+Overview
+--------
+
+Domain whitelisting in Apache Cordova is a security model that controls access to outside domains, such as `http://google.com`. The default security policy is to block all network access. The application developer can then delcare access to specific network domains and subdomains.
+
+Specification
+-------------
+
+Domain whitelisting lays the ground work for the [W3C Widget Access][1] specification. In the Widget Access specification, the `<access>` element is used to declare access to specific network domains. In the future, Apache Cordova will abstract the platform whitelisting implementations to the W3C Widget Access specification. However, for now each platform must implement it's own domain whitelisting.
+
+Syntax
+------
+
+Access to [google.com][2]:
+
+    http://google.com
+
+Access to the secure [google.com][3] (`https://`):
+
+    https://google.com
+
+Access to the subdomain [maps.google.com][4]:
+
+    http://maps.google.com
+
+Access to all the subdomains on [google.com][2] (e.g. [mail.google.com][5] and [docs.google.com][6]):
+
+    http://*.google.com
+
+Access to all domains (e.g. [google.com][2] and [developer.mozilla.org][7]):
+
+    *
+
+Android
+-------
+
+### Details
+
+The whitelisting rules are found in `res/xml/cordova.xml` and declared with the element `<access origin="..." />`.
+
+Android has full support for the whitelisting syntax.
+
+### Syntax
+
+Access to [google.com][2]:
+
+    <access origin="http://google.com" />
+
+Bada
+----
+
+Domain whitelisting is unsupported on Bada. By default, all domains are accessible.
+
+BlackBerry
+----------
+
+### Details
+
+The whitelisting rules are found in `www/config.xml` and declared with the element `<access uri="..." />`.
+
+For a complete reference, see the [BlackBerry WebWorks Access Element documentation][8].
+
+### Syntax
+
+Access to [google.com][2]:
+
+    <access uri="http://google.com" subdomains="false" />
+
+Access to  [maps.google.com][4]:
+
+    <access uri="http://maps.google.com" subdomains="false" />
+
+Access to all the subdomains on [google.com][2]:
+
+    <access uri="http://google.com" subdomains="true" />
+
+Access to all domains, including `file://` protocol:
+
+    <access uri="*" subdomains="true" />
+
+iOS
+---
+
+### Details
+
+1. Open `Cordova.plist`.
+    - In Xcode, it is found at `AppName/Supporting Files/Cordova.plist`
+    - In the directory, it is found at `AppName/Cordova.plist`
+2. Add a new `String` value under the `ExternalHosts` key.
+    - We recommend using Xcode to avoid editing raw XML.
+
+Domain protocols (e.g. `http://` and `https://`) are not supported by iOS.
+
+### Syntax
+
+Access to [google.com][2] and the secure [google.com][3] (`https://`):
+
+    google.com
+
+Access to the subdomain [maps.google.com][4]:
+
+    maps.google.com
+
+Access to all the subdomains on [google.com][2] (e.g. [mail.google.com][5] and [docs.google.com][6]):
+
+    *.google.com
+
+Access to all domains (e.g. [google.com][2] and [developer.mozilla.org][7]):
+
+    *
+
+Wildcards on iOS (`*`) are more flexible than the [W3C Widget Access][1] specification.
+
+Access to all subdomains and TLDs (`.com`, `.net`, etc):
+
+    *.google.*
+
+Symbian
+-------
+
+Domain whitelisting is unsupported on Symbian. By default, all domains are accessible.
+
+webOS
+-----
+
+Domain whitelisting is unsupported on webOS. By default, all domains are accessible.
+
+Windows Phone
+-------------
+
+Domain whitelisting is unsupported on Windows Phone. By default, all domains are accessible.
+
+[1]: http://www.w3.org/TR/widgets-access/
+[2]: http://google.com
+[3]: https://google.com
+[4]: http://maps.google.com
+[5]: http://mail.google.com
+[6]: http://docs.google.com
+[7]: http://developer.mozilla.org
+[8]: https://developer.blackberry.com/html5/documentation/ww_developing/Access_element_834677_11.html
diff --git a/docs/en/1.9.0/index.md b/docs/en/1.9.0/index.md
new file mode 100644
index 0000000..73901fa
--- /dev/null
+++ b/docs/en/1.9.0/index.md
@@ -0,0 +1,103 @@
+---
+license: 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.
+---
+
+<div id="home">
+    <h1>API Reference</h1>
+    <ul>
+        <li>
+            <h2>Accelerometer</h2>
+            <span>Tap into the device's motion sensor.</span>
+        </li>
+        <li>
+            <h2>Camera</h2>
+            <span>Capture a photo using the device's camera.</span>
+        </li>
+        <li>
+            <h2>Capture</h2>
+            <span>Capture media files using device's media capture applications.</span>
+        </li>
+        <li>
+            <h2>Compass</h2>
+            <span>Obtain the direction that the device is pointing.</span>
+        </li>
+        <li>
+            <h2>Connection</h2>
+            <span>Quickly check the network state, and cellular network information.</span>
+        </li>
+        <li>
+            <h2>Contacts</h2>
+            <span>Work with the devices contact database.</span>
+        </li>
+        <li>
+            <h2>Device</h2>
+            <span>Gather device specific information.</span>
+        </li>
+        <li>
+            <h2>Events</h2>
+            <span>Hook into native events through JavaScript.</span>
+        </li>
+        <li>
+            <h2>File</h2>
+            <span>Hook into native file system through JavaScript.</span>
+        </li>
+        <li>
+            <h2>Geolocation</h2>
+            <span>Make your application location aware.</span>
+        </li>
+        <li>
+            <h2>Media</h2>
+            <span>Record and play back audio files.</span>
+        </li>
+        <li>
+            <h2>Notification</h2>
+            <span>Visual, audible, and tactile device notifications.</span>
+        </li>
+        <li>
+            <h2>Storage</h2>
+            <span>Hook into the devices native storage options.</span>
+        </li>
+    </ul>
+    <h1>Guides</h1>
+    <ul>
+        <li>
+            <h2>Getting Started Guides</h2>
+            <span>Setup each SDK and create your first Cordova app.</span>
+        </li>
+        <li>
+            <h2>Command-Line Usage</h2>
+            <span>Create, build, deploy, and debug from the command-line.</span>
+        </li>
+        <li>
+            <h2>Upgrading Guides</h2>
+            <span>Upgrade an application to the latest Cordova release.</span>
+        </li>
+        <li>
+            <h2>Domain Whitelist Guide</h2>
+            <span>Grant an application access to external domains.</span>
+        </li>
+        <li>
+            <h2>Embedding WebView</h2>
+            <span>Implement the Cordova WebView in your project.</span>
+        </li>
+        <li>
+            <h2><a href="_index.html">Keyword Index</a></h2>
+            <span>Full index of the Cordova Documentation.</span>
+        </li>
+    </ul>
+</div>