Add version 3.2.0-en docs.
diff --git a/docs/en/3.2.0/config.json b/docs/en/3.2.0/config.json
new file mode 100644
index 0000000..12d3951
--- /dev/null
+++ b/docs/en/3.2.0/config.json
@@ -0,0 +1,190 @@
+{
+    "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",
+            "cordova/camera/parameter/CameraPopoverHandle.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.model.md",
+            "cordova/device/device.cordova.md",
+            "cordova/device/device.platform.md",
+            "cordova/device/device.uuid.md",
+            "cordova/device/device.version.md",
+            "cordova/device/device.name.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"
+        ],
+        "globalization.md": [
+            "cordova/globalization/globalization.md",
+            "cordova/globalization/globalization.getPreferredLanguage.md",
+            "cordova/globalization/globalization.getLocaleName.md",
+            "cordova/globalization/globalization.dateToString.md",
+            "cordova/globalization/globalization.stringToDate.md",
+            "cordova/globalization/globalization.getDatePattern.md",
+            "cordova/globalization/globalization.getDateNames.md",
+            "cordova/globalization/globalization.isDayLightSavingsTime.md",
+            "cordova/globalization/globalization.getFirstDayOfWeek.md",
+            "cordova/globalization/globalization.numberToString.md",
+            "cordova/globalization/globalization.stringToNumber.md",
+            "cordova/globalization/globalization.getNumberPattern.md",
+            "cordova/globalization/globalization.getCurrencyPattern.md",
+            "cordova/globalization/GlobalizationError/globalizationerror.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.setVolume.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.prompt.md",
+            "cordova/notification/notification.beep.md",
+            "cordova/notification/notification.vibrate.md"
+        ],
+        "splashscreen.md": [
+            "cordova/splashscreen/splashscreen.md",
+            "cordova/splashscreen/splashscreen.show.md",
+            "cordova/splashscreen/splashscreen.hide.md"
+        ],
+        "storage.md": [
+            "cordova/storage/storage.md"
+        ],
+        "inappbrowser.md": [
+            "cordova/inappbrowser/inappbrowser.md",
+            "cordova/inappbrowser/window.open.md"
+        ]
+        
+    }
+}
diff --git a/docs/en/3.2.0/config_ref/images.md b/docs/en/3.2.0/config_ref/images.md
new file mode 100644
index 0000000..71d3817
--- /dev/null
+++ b/docs/en/3.2.0/config_ref/images.md
@@ -0,0 +1,198 @@
+---
+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.
+---
+
+# Icons and Splash Screens
+
+This section shows how to configure an app's icon and optional splash
+screen for various platforms, both when working in the Cordova CLI
+(described in The Command-Line Interface) or using platform-specific
+SDK tools (detailed in the Platform Guides).
+
+## Configuring Icons in the CLI
+
+When working in the CLI, icon source files are located within various
+platform-specific subdirectories within the project's `www/res/icons`
+directory. Newly created projects come with a default set of Cordova
+icons for you to replace for the platforms you wish to target.
+
+Android specifies icons for low, medium, high, and extra-high resolutions:
+
+        android/icon-36-ldpi.png
+        android/icon-48-mdpi.png
+        android/icon-72-hdpi.png
+        android/icon-96-xhdpi.png
+
+The iOS platform specifies 72-pixel-square icons for iPads, and
+57-pixel icons for iPhones and iPods, with high-resolution _2x_
+variants for retina displays:
+
+        ios/icon-57-2x.png
+        ios/icon-57.png
+        ios/icon-72-2x.png
+        ios/icon-72.png
+
+Windows Phone specifies a default 48-pixel icon, along with various
+devices' background tiling images used when representing applications:
+
+        windows-phone/icon-48.png
+        windows-phone/icon-62-tile.png
+        windows-phone/icon-173-tile.png
+
+Blackberry requires an 80-pixel icon:
+
+        blackberry/icon-80.png
+
+Tizen requires an 128-pixel icon:
+
+        tizen/icon-128.png
+
+## Configuring Splash Screens in the CLI
+
+Use the Splashscreen API to enable display of an app's introductory
+splash screen on many platforms.  When working in the CLI, splash
+screen source files are located within the project's `www/res/screens`
+subdirectory.
+
+Android specifies both portrait- and landscape-oriented splash screen
+images for low, medium, high, and extra-high resolutions:
+
+        android/screen-hdpi-landscape.png
+        android/screen-hdpi-portrait.png
+        android/screen-ldpi-landscape.png
+        android/screen-ldpi-portrait.png
+        android/screen-mdpi-landscape.png
+        android/screen-mdpi-portrait.png
+        android/screen-xhdpi-landscape.png
+        android/screen-xhdpi-portrait.png
+
+The iOS platform specifies variants for iPhone/iPod and iPad, with
+variants for retina displays and different orientations. The _568h_
+file applies to the iPhone 5's taller screen:
+
+        ios/screen-ipad-landscape-2x.png
+        ios/screen-ipad-landscape.png
+        ios/screen-ipad-portrait-2x.png
+        ios/screen-ipad-portrait.png
+        ios/screen-iphone-landscape-2x.png
+        ios/screen-iphone-landscape.png
+        ios/screen-iphone-portrait-2x.png
+        ios/screen-iphone-portrait.png
+        ios/screen-iphone-portrait-568h-2x.png
+
+BlackBerry and Windows Phone both specify a single splash screen
+image:
+
+        blackberry/screen-225.png
+        windows-phone/screen-portrait.jpg
+
+The following sections detail how to set up splash screens when
+working with SDKs and related command-line tools described in Platform
+Guides.
+
+Don't forget to install the SplashScreen plugin before trying to use the
+`navigator.splashscreen.hide()` or `navigator.splashscreen.show()` methods.
+
+## Splash Screens for the Android Platform
+
+Place [9-patch image](https://developer.android.com/tools/help/draw9patch.html)
+files in the Android project's `platforms/android/res/drawable*` directories.
+
+The size for each should be:
+
+- xlarge (xhdpi): at least 960 × 720
+- large (hdpi): at least 640 × 480
+- medium (mdpi): at least 470 × 320
+- small (ldpi): at least 426 × 320
+
+If you want to use
+the default splash screen images provided in Cordova, you'll need to copy the
+png files from `platforms/android/www/res/screen/android` to
+`platforms/android/res/drawable*/`:
+
+    cd platforms/android/res
+    mkdir drawable-port-ldpi
+    cp -p ../assets/www/res/screen/android/screen-ldpi-portrait.png drawable-port-ldpi/screen.png
+    mkdir drawable-land-ldpi
+    cp -p ../assets/www/res/screen/android/screen-ldpi-landscape.png drawable-land-ldpi/screen.png
+    mkdir drawable-port-mdpi
+    cp -p ../assets/www/res/screen/android/screen-mdpi-portrait.png drawable-port-mdpi/screen.png
+    mkdir drawable-land-mdpi
+    cp -p ../assets/www/res/screen/android/screen-mdpi-landscape.png drawable-land-mdpi/screen.png
+    mkdir drawable-port-hdpi
+    cp -p ../assets/www/res/screen/android/screen-hdpi-portrait.png drawable-port-hdpi/screen.png
+    mkdir drawable-land-hdpi
+    cp -p ../assets/www/res/screen/android/screen-hdpi-landscape.png drawable-land-hdpi/screen.png
+    mkdir drawable-port-xhdpi
+    cp -p ../assets/www/res/screen/android/screen-xhdpi-portrait.png drawable-port-xhdpi/screen.png
+    mkdir drawable-land-xhdpi
+    cp -p ../assets/www/res/screen/android/screen-xhdpi-landscape.png drawable-land-xhdpi/screen.png
+
+The `drawable` directory names must follow the Android conventions for
+supporting
+[screen sizes](http://developer.android.com/guide/practices/screens_support.html) and
+[alternate resources](http://developer.android.com/guide/topics/resources/providing-resources.html#AlternativeResources).
+
+In `config.xml` in the project's `www` directory, add the following preferences:
+
+    <preference name="SplashScreen" value="splash" />
+    <preference name="SplashScreenDelay" value="10000" />
+
+The first line sets the image to display as the splash screen. This is the
+file name of the png in the `drawable*` directories. If you
+name the image anything other than `splash.png`, you need to modify
+this line. Do not include the filename extension (i.e., `.png`).
+If you want to use the default splash screens provided in
+Cordova as listed above, use the value `screen`.
+
+The second line sets the default delay of how long the splashscreen appears in
+milliseconds. This should be the maximum expected start time.
+The default value for SplashScreenDelay is 3000 ms.
+
+Finally, the splash screen should be present only as long as necessary. When
+your app has started and the webview has loaded, your app should hide the
+splash screen so that your main view is visible. Because the app start time
+will vary quite a bit due to a number of factors, it is recommended that your
+app explicitly invoke `navigator.splashscreen.hide()` in the Javascript
+method that responds to the `deviceready` event. Otherwise the splash screen
+will be visible for the SplashScreenDelay value that you configured above.
+This event-driven approach is highly recommended versus having the splash
+screen visible for always a fixed duration.
+
+## Splash Screens for the iOS Platform
+
+Copy splash screen images into the iOS project's `Resources/splash`
+directory. Only add those images for the devices you want to support,
+such as iPad or iPhone. The size of each image should be:
+
+- Default-568h@2x~iphone.png (640x1136 pixels)
+- Default-Landscape@2x~ipad.png (2048x1496 pixels)
+- Default-Landscape~ipad.png (1024x748 pixels)
+- Default-Portrait@2x~ipad.png (1536x2008 pixels)
+- Default-Portrait~ipad.png (768x1004 pixels)
+- Default@2x~iphone.png (640x960 pixels)
+- Default~iphone.png (320x480 pixels)
+
+## Splash Screens for the BlackBerry 10 Platform
+
+Copy splash screen images into the project's `res/screen/blackberry10`
+directory. The file names should be:
+
+- splash-1280x768.png (1280x768 pixels)
+- splash-720x720.png (720x720 pixels)
+- splash-768x1280.png (768x1280 pixels)
diff --git a/docs/en/3.2.0/config_ref/index.md b/docs/en/3.2.0/config_ref/index.md
new file mode 100644
index 0000000..ad057a4
--- /dev/null
+++ b/docs/en/3.2.0/config_ref/index.md
@@ -0,0 +1,197 @@
+---
+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.
+---
+
+# The config.xml File
+
+Many aspects of an app's behavior can be controlled with a global
+configuration file, `config.xml`, that belongs in the top-level web
+asset directory along with the app's home page.  This
+platform-agnostic XML file is arranged based on the W3C's [Packaged
+Web Apps (Widgets)](http://www.w3.org/TR/widgets/) specification, and
+extended to specify core Cordova API features, plugins, and
+platform-specific settings.
+
+For projects created with the Cordova CLI (described in The
+Command-Line Interface), this file can be found in the top-level `www`
+directory:
+
+        app/www/config.xml
+
+When using the CLI to build a project, versions of this file are
+passively copied along with other web-asset source files into various
+`platforms/*/www` subdirectories, for example:
+
+        app/platforms/ios/www/config.xml
+        app/platforms/blackberry10/www/config.xml
+
+An exception is Android, whose path specifies an additional `assets`
+subdirectory:
+
+        app/platforms/android/assets/www/config.xml
+
+If you use the CLI to create a project, but then shift your workflow
+to an SDK, you need to use an alternate set of source files for
+Android and iOS:
+
+        app/platforms/android/res/www/config.xml
+        app/platforms/ios/<APP_NAME>/config.xml
+
+This section details global and cross-platform configuration options.
+See the following sections for platform-specific options:
+
+- iOS Configuration
+- Android Configuration
+- BlackBerry Configuration
+
+In addition to the various configuration options detailed below, you
+can also configure an application's core set of images for each target
+platform. See Icons and Splash Screens for more information.
+
+## Core Configuration Elements
+
+This example shows the default `config.xml` generated by the CLI's
+`create` command, described in The Command-Line Interface:
+
+        <widget id="com.example.hello" version="0.0.1">
+            <name>HelloWorld</name>
+            <description>
+                A sample Apache Cordova application that responds to the deviceready event.
+            </description>
+            <author email="dev@callback.apache.org" href="http://cordova.io">
+                Apache Cordova Team
+            </author>
+            <content src="index.html" />
+            <access origin="*" />
+            <preference name="Fullscreen" value="true" />
+            <preference name="WebViewBounce" value="true" />
+        </widget>
+
+<!-- QUERY: is WebViewBounce superseded by DisallowOverscroll? -->
+
+The following configuration elements appear in the top-level
+`config.xml` file, and are supported across all supported Cordova
+platforms:
+
+- The `<widget>` element's `id` attribute provides the app's
+  reverse-domain identifier, and the `version` its full version number
+  expressed in major/minor/patch notation.
+
+- The `<name>` element specifies the app's formal name, as it appears
+  on the device's home screen and within app-store interfaces.
+
+- The `<description>` and `<author>` elements specify metadata and
+  contact information that may appear within app-store listings.
+
+- The optional `<content>` element defines the app's starting
+  page in the top-level web assets directory. The default value is
+  `index.html`, which customarily appears in a project's top-level
+  `www` directory.
+
+- `<access>` elements define the set of external domains the app is
+  allowed to communicate with. The default value shown above allows
+  it to access any server. See the Domain Whitelist Guide for details.
+
+- The `<preference>` tag sets various options as pairs of
+  `name`/`value` attributes. Each preference's `name` is
+  case-insensitive.  Many preferences are unique to specific
+  platforms, as listed at the top of this page. The following sections
+  detail preferences that apply to more than one platform.
+
+## Global Preferences
+
+The following global preferences apply to all platforms:
+
+- `Fullscreen` allows you to hide the status bar at the top of the
+  screen. The default value is `false`. Example:
+
+        <preference name="Fullscreen" value="true" />
+
+- `Orientation` allows you to lock orientation and prevent the
+  interface from rotating in response to changes in orientation.
+  Possible values are `default`, `landscape`, or `portrait`. Example:
+
+        <preference name="Orientation" value="landscape" />
+
+  __NOTE__: The `default` value means _both_ landscape and portrait
+  orientations are enabled.  If you want to use each platform's
+  default settings (usually portrait-only), leave this tag out of the
+  `config.xml` file.
+
+## Multi-Platform Preferences
+
+The following preferences apply to more than one platform, but not to
+all of them:
+
+- `DisallowOverscroll` (boolean, defaults to `false`): set to `true`
+  if you don't want the interface to display any feedback when users
+  scroll past the beginning or end of content.
+
+        <preference name="DisallowOverscroll" value="true"/>
+
+  Applies to Android and iOS. On iOS, overscroll gestures cause
+  content to bounce back to its original position.  On Android, they
+  produce a more subtle glowing effect along the top or bottom edge of
+  the content.
+
+- `BackgroundColor`: Set the app's background color.  Supports a
+  four-byte hex value, with the first byte representing the alpha
+  channel, and standard RGB values for the following three bytes.  This
+  example specifies blue:
+
+        <preference name="BackgroundColor" value="0xff0000ff"/>
+
+  Applies to Android and BlackBerry. Overrides CSS otherwise available
+  across _all_ platforms, for example: `body{background-color:blue}`.
+
+- `HideKeyboardFormAccessoryBar` (boolean, defaults to `false`): set
+  to `true` to hide the additional toolbar that appears above the
+  keyboard, helping users navigate from one form input to another.
+
+        <preference name="HideKeyboardFormAccessoryBar" value="true"/>
+
+  Applies to iOS and BlackBerry. 
+
+## The _feature_ Element
+
+If you use the CLI to build applications, you use the `plugin` command
+to enable device APIs. This does not modify the top-level `config.xml`
+file, so the `<feature>` element does not apply to your workflow. If
+you work directly in an SDK and using the platform-specific
+`config.xml` file as source, you use the `<feature>` tag to enable
+device-level APIs and external plugins. They typically appear in this
+form:
+
+        <feature name="Plugin" value="PluginID" />
+
+They often appear with custom values in platform-specific `config.xml`
+files. For example, here is how to specify the Device API for Android
+projects:
+
+        <feature name="Device">
+            <param name="android-package" value="org.apache.cordova.device.Device" />
+        </feature>
+
+Here is how the element appears for iOS projects:
+
+        <feature name="Device">
+            <param name="ios-package" value="CDVDevice" />
+        </feature>
+
+See the API Reference for details on how to specify each feature. See
+the Plugin Development Guide for more information on plugins.
diff --git a/docs/en/3.2.0/cordova/accelerometer/acceleration/acceleration.md b/docs/en/3.2.0/cordova/accelerometer/acceleration/acceleration.md
new file mode 100644
index 0000000..d33f16b
--- /dev/null
+++ b/docs/en/3.2.0/cordova/accelerometer/acceleration/acceleration.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.
+---
+
+# 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
+
+An `Acceleration` object is populated and returned by any of the API's
+`Accelerometer` methods. Acceleration values include the effect of
+gravity (9.81 m/s^2), so that when a device lies flat and facing up,
+_x_, _y_, and _z_ values returned should be `0`, `0`, and `9.81`.
+
+## Supported Platforms
+
+- Amazon Fire OS 
+- Android
+- BlackBerry WebWorks 5.0+
+- iOS
+- Tizen
+- Windows Phone 7 and 8
+- Windows 8
+
+## 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.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for device API libraries to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        // device APIs are available
+        //
+        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/3.2.0/cordova/accelerometer/accelerometer.clearWatch.md b/docs/en/3.2.0/cordova/accelerometer/accelerometer.clearWatch.md
new file mode 100644
index 0000000..25403b3
--- /dev/null
+++ b/docs/en/3.2.0/cordova/accelerometer/accelerometer.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.
+---
+
+# accelerometer.clearWatch
+
+Stop watching the `Acceleration` referenced by the `watchID` parameter.
+
+    navigator.accelerometer.clearWatch(watchID);
+
+- __watchID__: The ID returned by `accelerometer.watchAcceleration`.
+
+## Supported Platforms
+
+- Amazon Fire OS
+- Android
+- BlackBerry WebWorks 5.0+
+- iOS
+- Tizen
+- Windows Phone 7 and 8
+- Windows 8
+
+## 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.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // The watch id references the current `watchAcceleration`
+        var watchID = null;
+
+        // Wait for device API libraries to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        // device APIs are available
+        //
+        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/3.2.0/cordova/accelerometer/accelerometer.getCurrentAcceleration.md b/docs/en/3.2.0/cordova/accelerometer/accelerometer.getCurrentAcceleration.md
new file mode 100644
index 0000000..563cbe3
--- /dev/null
+++ b/docs/en/3.2.0/cordova/accelerometer/accelerometer.getCurrentAcceleration.md
@@ -0,0 +1,109 @@
+---
+ 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_ axes.
+
+    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, in three
+dimensions along the _x_, _y_, and _z_ axis.
+
+These acceleration values are returned to the `accelerometerSuccess`
+callback function.
+
+## Supported Platforms
+
+- Amazon Fire OS
+- Android
+- BlackBerry WebWorks 5.0+
+- iOS
+- Tizen
+- Windows Phone 7 and 8
+- Windows 8
+
+## 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.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for device API libraries to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        // device APIs are available
+        //
+        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>
+
+## iOS Quirks
+
+- iOS doesn't recognize 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 yields the last value reported from a `watchAccelerometer` call.
diff --git a/docs/en/3.2.0/cordova/accelerometer/accelerometer.md b/docs/en/3.2.0/cordova/accelerometer/accelerometer.md
new file mode 100644
index 0000000..951f117
--- /dev/null
+++ b/docs/en/3.2.0/cordova/accelerometer/accelerometer.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.
+---
+
+# 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
+
+## Accessing the Feature
+
+As of version 3.0, Cordova implements device-level APIs as _plugins_.
+Use the CLI's `plugin` command, described in The Command-Line
+Interface, to add or remove this feature for a project:
+
+        $ cordova plugin add org.apache.cordova.device-motion
+        $ cordova plugin ls
+        [ 'org.apache.cordova.device-motion' ]
+        $ cordova plugin rm org.apache.cordova.device-motion
+
+These commands apply to all targeted platforms, but modify the
+platform-specific configuration settings described below:
+
+* Amazon Fire OS (in `res/xml/config.xml`)
+
+        <feature name="Accelerometer">
+            <param name="android-package" value="org.apache.cordova.devicemotion.AccelListener" />
+        </feature>
+
+* Android (in `res/xml/config.xml`)
+
+        <feature name="Accelerometer">
+            <param name="android-package" value="org.apache.cordova.devicemotion.AccelListener" />
+        </feature>
+
+* BlackBerry WebWorks
+
+        (in www/plugins.xml)
+        <feature name="Accelerometer">
+            <param name="blackberry-package" value="org.apache.cordova.accelerometer.Accelerometer" />
+        </feature>
+
+        (in 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 (in the named application directory's `config.xml`)
+
+        <feature name="Accelerometer">
+            <param name="ios-package" value="CDVAccelerometer" />
+        </feature>
+
+* Windows Phone (in `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)
+
+Some platforms may support this feature without requiring any special
+configuration.  See Platform Support for an overview.
diff --git a/docs/en/3.2.0/cordova/accelerometer/accelerometer.watchAcceleration.md b/docs/en/3.2.0/cordova/accelerometer/accelerometer.watchAcceleration.md
new file mode 100644
index 0000000..b987d4b
--- /dev/null
+++ b/docs/en/3.2.0/cordova/accelerometer/accelerometer.watchAcceleration.md
@@ -0,0 +1,142 @@
+---
+ 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` method retrieves the device's
+current `Acceleration` at a regular interval, executing the
+`accelerometerSuccess` callback function each time. Specify the
+interval in milliseconds via the `acceleratorOptions` object's
+`frequency` parameter.
+
+The returned watch ID references the accelerometer's watch interval,
+and can be used with `accelerometer.clearWatch` to stop watching the
+accelerometer.
+
+## Supported Platforms
+
+- Amazon Fire OS
+- Android
+- BlackBerry WebWorks 5.0+
+- iOS
+- Tizen
+- Windows Phone 7 and 8
+- Windows 8
+
+## 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.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // The watch id references the current `watchAcceleration`
+        var watchID = null;
+
+        // Wait for device API libraries to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        // device APIs are available
+        //
+        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>
+
+## iOS Quirks
+
+The API calls the success callback function at the interval requested,
+but restricts the range of requests to the device between 40ms and
+1000ms. For example, if you request an interval of 3 seconds,
+(3000ms), the API requests data from the device every 1 second, but
+only executes the success callback every 3 seconds.
diff --git a/docs/en/3.2.0/cordova/accelerometer/parameters/accelerometerError.md b/docs/en/3.2.0/cordova/accelerometer/parameters/accelerometerError.md
new file mode 100644
index 0000000..6dda5c2
--- /dev/null
+++ b/docs/en/3.2.0/cordova/accelerometer/parameters/accelerometerError.md
@@ -0,0 +1,26 @@
+---
+ 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
+    }
diff --git a/docs/en/3.2.0/cordova/accelerometer/parameters/accelerometerOptions.md b/docs/en/3.2.0/cordova/accelerometer/parameters/accelerometerOptions.md
new file mode 100644
index 0000000..b9ebcb5
--- /dev/null
+++ b/docs/en/3.2.0/cordova/accelerometer/parameters/accelerometerOptions.md
@@ -0,0 +1,26 @@
+---
+ 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 accelerometer values.
+
+## Options
+
+- __frequency__: How often to retrieve the `Acceleration` in milliseconds. _(Number)_ (Default: 10000)
diff --git a/docs/en/3.2.0/cordova/accelerometer/parameters/accelerometerSuccess.md b/docs/en/3.2.0/cordova/accelerometer/parameters/accelerometerSuccess.md
new file mode 100644
index 0000000..c07a617
--- /dev/null
+++ b/docs/en/3.2.0/cordova/accelerometer/parameters/accelerometerSuccess.md
@@ -0,0 +1,39 @@
+---
+ 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');
+    };
diff --git a/docs/en/3.2.0/cordova/camera/camera.cleanup.md b/docs/en/3.2.0/cordova/camera/camera.cleanup.md
new file mode 100644
index 0000000..f195e70
--- /dev/null
+++ b/docs/en/3.2.0/cordova/camera/camera.cleanup.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.
+---
+
+# camera.cleanup
+
+Removes intermediate photos taken by the camera from temporary
+storage.
+
+    navigator.camera.cleanup( cameraSuccess, cameraError );
+
+## Description
+
+Removes intermediate image files that are kept in temporary storage
+after calling `camera.getPicture`. Applies only when the value of
+`Camera.sourceType` equals `Camera.PictureSourceType.CAMERA` and the
+`Camera.destinationType` equals `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/3.2.0/cordova/camera/camera.getPicture.md b/docs/en/3.2.0/cordova/camera/camera.getPicture.md
new file mode 100644
index 0000000..8577528
--- /dev/null
+++ b/docs/en/3.2.0/cordova/camera/camera.getPicture.md
@@ -0,0 +1,248 @@
+---
+ 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
+image gallery.  The image is passed to the success callback as a
+base64-encoded `String`, or as the URI for the image file.  The method
+itself returns a `CameraPopoverHandle` object that can be used to
+reposition the file selection popover.
+
+    navigator.camera.getPicture( cameraSuccess, cameraError, [ cameraOptions ] );
+
+## Description
+
+The `camera.getPicture` function opens the device's default camera
+application that allows users to snap pictures. This behavior occurs
+by default, when `Camera.sourceType` equals
+`Camera.PictureSourceType.CAMERA`.  Once the user snaps the photo, the
+camera application closes and the application is restored.
+
+If `Camera.sourceType` is `Camera.PictureSourceType.PHOTOLIBRARY` or
+`Camera.PictureSourceType.SAVEDPHOTOALBUM`, then a dialog displays
+that allows users to select an existing image.  The
+`camera.getPicture` function returns a `CameraPopoverHandle` object,
+which can be used to reposition the image selection dialog, for
+example, when the device orientation changes.
+
+The return value is sent to the `cameraSuccess` callback function, in
+one of the following formats, depending on the specified
+`cameraOptions`:
+
+- A `String` containing the base64-encoded photo image.
+
+- A `String` representing the image file location on local storage (default).
+
+You can do whatever you want with the encoded image or URI, for
+example:
+
+- Render the image in an `<img>` tag, as in the example below
+
+- Save the data locally (`LocalStorage`, [Lawnchair](http://brianleroux.github.com/lawnchair/), etc.)
+
+- Post the data to a remote server
+
+__NOTE__: Photo resolution on newer devices is quite good. Photos
+selected from the device's gallery are not downscaled to a lower
+quality, even if a `quality` parameter is specified.  To avoid common
+memory problems, set `Camera.destinationType` to `FILE_URI` rather
+than `DATA_URL`.
+
+## Supported Platforms
+
+- Amazon Fire OS
+- Android
+- BlackBerry WebWorks 5.0+
+- iOS
+- Tizen
+- Windows Phone 7 and 8
+- Windows 8
+
+## Amazon Fire OS Quirks
+
+Amazon Fire OS uses intents to launch the camera activity on the device to capture
+images, and on phones with low memory, the Cordova activity may be killed.  In this
+scenario, the image may not appear when the cordova activity is restored.
+
+## Android Quirks
+
+Android uses intents to launch the camera activity on the device to capture
+images, and on phones with low memory, the Cordova activity may be killed.  In this
+scenario, the image may not appear when the cordova activity is restored.
+
+## iOS Quirks
+
+Including a JavaScript `alert()` in either of the callback functions
+can cause problems.  Wrap the alert within a `setTimeout()` to allow
+the iOS image picker or popover to fully close before the alert
+displays:
+
+    setTimeout(function() {
+        // do your thing here!
+    }, 0);
+
+## Windows Phone 7 Quirks
+
+Invoking the native camera application while the device is connected
+via Zune does not work, and triggers an error callback.
+
+## Tizen Quirks
+
+Tizen only supports a `destinationType` of
+`Camera.DestinationType.FILE_URI` and a `sourceType` of
+`Camera.PictureSourceType.PHOTOLIBRARY`.
+
+## Quick Example
+
+Take a photo and retrieve it as a 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 a photo and retrieve the image's 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.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        var pictureSource;   // picture source
+        var destinationType; // sets the format of returned value
+
+        // Wait for device API libraries to load
+        //
+        document.addEventListener("deviceready",onDeviceReady,false);
+
+        // device APIs are available
+        //
+        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 in-line 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 in-line 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/3.2.0/cordova/camera/camera.md b/docs/en/3.2.0/cordova/camera/camera.md
new file mode 100644
index 0000000..ef0112c
--- /dev/null
+++ b/docs/en/3.2.0/cordova/camera/camera.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.
+---
+
+# Camera
+
+> The `camera` object provides access to the device's default camera application.
+
+__WARNING__: Collection and use of images from a
+device's camera raises important privacy issues.  Your app's privacy
+policy should discuss how the app uses the camera and whether the
+images recorded are shared with any other parties.  In addition, if
+the app's use of the camera is not apparent in the user interface, you
+should provide a just-in-time notice before the app accesses the
+camera (if the device operating system doesn't do so already).  That
+notice should provide the same information noted above, as well as
+obtaining the user's permission (e.g., by presenting choices for
+__OK__ and __No Thanks__).  For more information, please see the
+Privacy Guide.
+
+## Methods
+
+- camera.getPicture
+- camera.cleanup
+
+## Accessing the Feature
+
+As of version 3.0, Cordova implements device-level APIs as _plugins_.
+Use the CLI's `plugin` command, described in The Command-Line
+Interface, to add or remove this feature for a project:
+
+        $ cordova plugin add org.apache.cordova.camera
+        $ cordova plugin ls
+        [ 'org.apache.cordova.camera' ]
+        $ cordova plugin rm org.apache.cordova.camera
+
+These commands apply to all targeted platforms, but modify the
+platform-specific configuration settings described below:
+
+* Amazon Fire OS
+
+        (in app/res/xml/config.xml)
+        <feature name="Camera">
+            <param name="android-package" value="org.apache.cordova.camera.CameraLauncher" />
+        </feature>
+
+        (in app/AndroidManifest)
+        <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
+
+* Android
+
+        (in app/res/xml/config.xml)
+        <feature name="Camera">
+            <param name="android-package" value="org.apache.cordova.camera.CameraLauncher" />
+        </feature>
+
+        (in app/AndroidManifest)
+        <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
+
+* BlackBerry WebWorks
+
+        (in www/plugins.xml)
+        <feature name="Camera">
+            <param name="blackberry-package" value="org.apache.cordova.camera.Camera" />
+        </feature>
+
+        (in www/config.xml)
+        <feature id="blackberry.media.camera" />
+
+        <rim:permissions>
+            <rim:permit>use_camera</rim:permit>
+        </rim:permissions>
+
+* iOS (in the named application directory's `config.xml`)
+
+        <feature name="Camera">
+            <param name="ios-package" value="CDVCamera" />
+        </feature>
+
+* Windows Phone (in `Properties/WPAppManifest.xml`)
+
+        <Capabilities>
+            <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)
+
+* Tizen (in `config.xml`)
+
+        <feature name="http://tizen.org/api/application" required="true"/>
+        <feature name="http://tizen.org/api/application.launch" required="true"/>
+
+  Reference: [Application Manifest for Tizen Web Application](https://developer.tizen.org/help/topic/org.tizen.help.gs/Creating%20a%20Project.html?path=0_1_1_3#8814682_CreatingaProject-EditingconfigxmlFeatures)
+
+Some platforms may support this feature without requiring any special
+configuration.  See Platform Support for an overview.
diff --git a/docs/en/3.2.0/cordova/camera/parameter/CameraPopoverHandle.md b/docs/en/3.2.0/cordova/camera/parameter/CameraPopoverHandle.md
new file mode 100644
index 0000000..594f30b
--- /dev/null
+++ b/docs/en/3.2.0/cordova/camera/parameter/CameraPopoverHandle.md
@@ -0,0 +1,63 @@
+---
+ 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.
+---
+
+# CameraPopoverHandle
+
+A handle to the popover dialog created by `camera.getPicture`.
+
+## Methods
+
+- __setPosition__: Set the position of the popover.
+
+## Supported Platforms
+
+- iOS
+
+## setPosition
+
+Set the position of the popover.
+
+__Parameters__:
+
+- `cameraPopoverOptions`: the `CameraPopoverOptions` that specify the new position
+
+## Quick Example
+
+     var cameraPopoverOptions = new CameraPopoverOptions(300, 300, 100, 100, Camera.PopoverArrowDirection.ARROW_ANY);
+     cameraPopoverHandle.setPosition(cameraPopoverOptions);
+
+## Full Example
+
+     function onSuccess(imageData) {
+          // Do stuff with the image!
+     }
+
+     function onFail(message) {
+         alert('Failed to get the picture: ' + message);
+     }
+
+     var cameraPopoverHandle = navigator.camera.getPicture(onSuccess, onFail,
+         { destinationType: Camera.DestinationType.FILE_URI,
+           sourceType: Camera.PictureSourceType.PHOTOLIBRARY });
+
+     // Reposition the popover if the orientation changes.
+     window.onorientationchange = function() {
+         var cameraPopoverOptions = new CameraPopoverOptions(0, 0, 100, 100, 0);
+         cameraPopoverHandle.setPosition(cameraPopoverOptions);
+     }
diff --git a/docs/en/3.2.0/cordova/camera/parameter/CameraPopoverOptions.md b/docs/en/3.2.0/cordova/camera/parameter/CameraPopoverOptions.md
new file mode 100644
index 0000000..e5d2902
--- /dev/null
+++ b/docs/en/3.2.0/cordova/camera/parameter/CameraPopoverOptions.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.
+---
+
+# CameraPopoverOptions
+
+iOS-only parameters that specify the anchor element location and arrow
+direction of the popover when selecting images from an iPad's library
+or album.
+
+    { x : 0,
+      y :  32,
+      width : 320,
+      height : 480,
+      arrowDir : Camera.PopoverArrowDirection.ARROW_ANY
+    };
+
+## CameraPopoverOptions
+
+- __x__: x pixel coordinate of screen element onto which to anchor the popover. _(Number)_
+
+- __y__: y pixel coordinate of screen element onto which to anchor the popover. _(Number)_
+
+- __width__: width, in pixels, of the screen element onto which to anchor the popover. _(Number)_
+
+- __height__: height, in pixels, of the screen element onto which to anchor the popover. _(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/3.2.0/cordova/camera/parameter/cameraError.md b/docs/en/3.2.0/cordova/camera/parameter/cameraError.md
new file mode 100644
index 0000000..33d1e32
--- /dev/null
+++ b/docs/en/3.2.0/cordova/camera/parameter/cameraError.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.
+---
+
+# 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)_
diff --git a/docs/en/3.2.0/cordova/camera/parameter/cameraOptions.md b/docs/en/3.2.0/cordova/camera/parameter/cameraOptions.md
new file mode 100644
index 0000000..a49ab28
--- /dev/null
+++ b/docs/en/3.2.0/cordova/camera/parameter/cameraOptions.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.
+---
+
+# 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 the saved image, expressed as a range of 0-100, where 100 is typically full resolution with no loss from file compression. _(Number)_ (Note that information about the camera's resolution is unavailable.)
+
+- __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
+            NATIVE_URI : 2     // Return image native URI (e.g., assets-library:// on iOS or content:// on Android)
+        };
+
+- __sourceType__: Set the source of the picture.  Defined in `navigator.camera.PictureSourceType` _(Number)_
+
+        Camera.PictureSourceType = {
+            PHOTOLIBRARY : 0,
+            CAMERA : 1,
+            SAVEDPHOTOALBUM : 2
+        };
+
+- __allowEdit__: Allow simple editing of image before selection. _(Boolean)_
+
+- __encodingType__: Choose the  returned image file's encoding.  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 remains constant. _(Number)_
+
+- __targetHeight__: Height in pixels to scale image. Must be used with __targetWidth__. Aspect ratio remains constant. _(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 that specify popover location in iPad.  Defined in `CameraPopoverOptions`.
+
+- __cameraDirection__: Choose the camera to use (front- or back-facing).  Defined in `navigator.camera.Direction` _(Number)_
+
+        Camera.Direction = {
+            BACK : 0,      // Use the back-facing camera
+            FRONT : 1      // Use the front-facing camera
+        };
+
+## Amazon Fire OSQuirks
+
+- Any `cameraDirection` value results in a back-facing photo.
+
+- Ignores the `allowEdit` parameter.
+
+- `Camera.PictureSourceType.PHOTOLIBRARY` and `Camera.PictureSourceType.SAVEDPHOTOALBUM` both display the same photo album.
+
+## Android Quirks
+
+- Any `cameraDirection` value results in a back-facing photo.
+
+- Ignores the `allowEdit` parameter.
+
+- `Camera.PictureSourceType.PHOTOLIBRARY` and `Camera.PictureSourceType.SAVEDPHOTOALBUM` both display the same photo album.
+
+## BlackBerry Quirks
+
+- Ignores the `quality` parameter.
+
+- Ignores the `sourceType` parameter.
+
+- Ignores the `allowEdit` parameter.
+
+- Application must have key injection permissions to close the native Camera application after the user snaps the photo.
+
+- Using large image sizes may result in the inability to encode images on later-model devices (e.g., Torch 9800) that feature high-resolution cameras.
+
+- `Camera.MediaType` is not supported.
+
+- Ignores the `correctOrientation` parameter.
+
+- Ignores the `cameraDirection` parameter.
+
+## iOS Quirks
+
+- Set `quality` below 50 to avoid memory errors on some devices.
+
+- When using `destinationType.FILE_URI`, photos are saved in the application's temporary directory.  You may delete the contents of this directory using the `navigator.fileMgr` APIs if storage space is a concern.
+
+## Tizen Quirks
+
+- options not supported
+
+- always returns a FILE URI
+
+## Windows Phone 7 and 8 Quirks
+
+- Ignores the `allowEdit` parameter.
+
+- Ignores the `correctOrientation` parameter.
+
+- Ignores the `cameraDirection` parameter.
diff --git a/docs/en/3.2.0/cordova/camera/parameter/cameraSuccess.md b/docs/en/3.2.0/cordova/camera/parameter/cameraSuccess.md
new file mode 100644
index 0000000..89d7ece
--- /dev/null
+++ b/docs/en/3.2.0/cordova/camera/parameter/cameraSuccess.md
@@ -0,0 +1,39 @@
+---
+ 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` in effect. _(String)_
+
+## Example
+
+    // Show image
+    //
+    function cameraCallback(imageData) {
+        var image = document.getElementById('myImage');
+        image.src = "data:image/jpeg;base64," + imageData;
+    }
diff --git a/docs/en/3.2.0/cordova/compass/compass.clearWatch.md b/docs/en/3.2.0/cordova/compass/compass.clearWatch.md
new file mode 100755
index 0000000..32adfab
--- /dev/null
+++ b/docs/en/3.2.0/cordova/compass/compass.clearWatch.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.
+---
+
+# 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
+
+- Amazon Fire OS
+- Android
+- BlackBerry 10
+- iOS
+- Tizen
+- Windows Phone 7 and 8 (if available in hardware)
+- Windows 8
+
+## 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.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // The watch id references the current `watchHeading`
+        var watchID = null;
+
+        // Wait for device API libraries to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        // device APIs are available
+        //
+        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/3.2.0/cordova/compass/compass.clearWatchFilter.md b/docs/en/3.2.0/cordova/compass/compass.clearWatchFilter.md
new file mode 100644
index 0000000..3a0e58e
--- /dev/null
+++ b/docs/en/3.2.0/cordova/compass/compass.clearWatchFilter.md
@@ -0,0 +1,22 @@
+---
+ 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`.
diff --git a/docs/en/3.2.0/cordova/compass/compass.getCurrentHeading.md b/docs/en/3.2.0/cordova/compass/compass.getCurrentHeading.md
new file mode 100755
index 0000000..5e64ec2
--- /dev/null
+++ b/docs/en/3.2.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, typically from the top of the device.  It measures
+the heading in degrees from 0 to 359.99, where 0 is north.
+
+The compass heading information is returned via a `CompassHeading`
+object using the `compassSuccess` callback function.
+
+## Supported Platforms
+
+- Amazon Fire OS
+- Android
+- BlackBerry 10
+- iOS
+- Tizen
+- Windows Phone 7 and 8 (if available in hardware)
+- Windows 8
+
+## 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.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for device API libraries to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        // device APIs are available
+        //
+        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/3.2.0/cordova/compass/compass.md b/docs/en/3.2.0/cordova/compass/compass.md
new file mode 100755
index 0000000..3f998a3
--- /dev/null
+++ b/docs/en/3.2.0/cordova/compass/compass.md
@@ -0,0 +1,94 @@
+---
+ 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
+
+## Accessing the Feature
+
+As of version 3.0, Cordova implements device-level APIs as _plugins_.
+Use the CLI's `plugin` command, described in The Command-Line
+Interface, to add or remove this feature for a project:
+
+        $ cordova plugin add org.apache.cordova.device-orientation
+        $ cordova plugin ls
+        [ 'org.apache.cordova.device-orientation' ]
+        $ cordova plugin rm org.apache.cordova.device-orientation
+
+These commands apply to all targeted platforms, but modify the
+platform-specific configuration settings described below:
+
+* Amazon Fire OS
+
+        (in `app/res/xml/config.xml`)
+
+        <feature name="Compass">
+            <param name="android-package" value="org.apache.cordova.deviceorientation.CompassListener" />
+        </feature>
+
+        (in app/AndroidManifest)
+
+        <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
+        <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
+
+* Android
+
+        (in `app/res/xml/config.xml`)
+
+        <feature name="Compass">
+            <param name="android-package" value="org.apache.cordova.deviceorientation.CompassListener" />
+        </feature>
+
+        (in app/AndroidManifest)
+
+        <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
+        <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
+
+* iOS (in the named application directory's `config.xml`)
+
+        <feature name="Compass">
+            <param name="ios-package" value="CDVLocation" />
+        </feature>
+
+* Windows Phone (in `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)
+
+Some platforms may support this feature without requiring any special
+configuration.  See Platform Support for an overview.
diff --git a/docs/en/3.2.0/cordova/compass/compass.watchHeading.md b/docs/en/3.2.0/cordova/compass/compass.watchHeading.md
new file mode 100755
index 0000000..d0a2371
--- /dev/null
+++ b/docs/en/3.2.0/cordova/compass/compass.watchHeading.md
@@ -0,0 +1,148 @@
+---
+ 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 the compass watch interval. The watch
+ID can be used with `compass.clearWatch` to stop watching the compass.
+
+## Supported Platforms
+
+- Amazon Fire OS
+- Android
+- BlackBerry 10
+- iOS
+- Tizen
+- Windows Phone 7 and 8 (if available in hardware)
+- Windows 8
+
+## 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.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // The watch id references the current `watchHeading`
+        var watchID = null;
+
+        // Wait for device API libraries to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        // device APIs are available
+        //
+        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 executes. Specify the degrees of
+change via the `filter` parameter in the `compassOptions` object.
+Clear the watch as usual by passing the returned watch ID to
+`compass.clearWatch`.  This functionality replaces the previously
+separate, iOS-only `watchHeadingFilter` and `clearWatchFilter`
+functions, which were removed in version 1.6.
+
+Only one `watchHeading` can be in effect at one time in iOS.  If a
+`watchHeading` uses a filter, calling `getCurrentHeading` or
+`watchHeading` uses the existing filter value to specify heading
+changes. Watching heading changes with a filter is more efficient than
+with time intervals.
diff --git a/docs/en/3.2.0/cordova/compass/compass.watchHeadingFilter.md b/docs/en/3.2.0/cordova/compass/compass.watchHeadingFilter.md
new file mode 100644
index 0000000..62483f3
--- /dev/null
+++ b/docs/en/3.2.0/cordova/compass/compass.watchHeadingFilter.md
@@ -0,0 +1,22 @@
+---
+ 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/3.2.0/cordova/compass/compassError/compassError.md b/docs/en/3.2.0/cordova/compass/compassError/compassError.md
new file mode 100644
index 0000000..c405431
--- /dev/null
+++ b/docs/en/3.2.0/cordova/compass/compassError/compassError.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.
+---
+
+# 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
+
+When an error occurs, the `CompassError` object is passed as a
+parameter to a `compassError` callback function.
diff --git a/docs/en/3.2.0/cordova/compass/parameters/compassError.md b/docs/en/3.2.0/cordova/compass/parameters/compassError.md
new file mode 100755
index 0000000..59d68b7
--- /dev/null
+++ b/docs/en/3.2.0/cordova/compass/parameters/compassError.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.
+---
+
+# compassError
+
+onError callback function for compass functions.
+
+## Example
+
+    function(CompassError) {
+        // Handle the error
+    }
diff --git a/docs/en/3.2.0/cordova/compass/parameters/compassHeading.md b/docs/en/3.2.0/cordova/compass/parameters/compassHeading.md
new file mode 100644
index 0000000..ec53abf
--- /dev/null
+++ b/docs/en/3.2.0/cordova/compass/parameters/compassHeading.md
@@ -0,0 +1,54 @@
+---
+ 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.
+
+## 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 can't 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 `compassSuccess` callback function.
+
+## Amazon Fire OS Quirks
+
+- `trueHeading` is not supported, but reports the same value as `magneticHeading`
+
+- `headingAccuracy` is always 0 because there is no difference between the `magneticHeading` and `trueHeading`
+
+## Android Quirks
+
+- The `trueHeading` property is not supported, but reports the same value as `magneticHeading`.
+
+- The `headingAccuracy` property is always 0 because there is no difference between the `magneticHeading` and `trueHeading`.
+
+## iOS Quirks
+
+- The `trueHeading` property is only returned for location services enabled via `navigator.geolocation.watchLocation()`.
+
+- For iOS 4 devices and above, heading factors in the device's current orientation, and does not reference its absolute position, for apps that supports that orientation.
diff --git a/docs/en/3.2.0/cordova/compass/parameters/compassOptions.md b/docs/en/3.2.0/cordova/compass/parameters/compassOptions.md
new file mode 100755
index 0000000..764cbb1
--- /dev/null
+++ b/docs/en/3.2.0/cordova/compass/parameters/compassOptions.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.
+---
+
+# 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)_
+
+## Amazon Fire OS Quirks
+
+- `filter` is not supported.
+
+## Android Quirks
+
+- No support for `filter`.
+
+## Tizen Quirks
+
+- No support for `filter`.
+
+## Windows Phone 7 and 8 Quirks
+
+- No support for `filter`.
diff --git a/docs/en/3.2.0/cordova/compass/parameters/compassSuccess.md b/docs/en/3.2.0/cordova/compass/parameters/compassSuccess.md
new file mode 100644
index 0000000..e814959
--- /dev/null
+++ b/docs/en/3.2.0/cordova/compass/parameters/compassSuccess.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.
+---
+
+# 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/3.2.0/cordova/connection/connection.md b/docs/en/3.2.0/cordova/connection/connection.md
new file mode 100644
index 0000000..6b31ced
--- /dev/null
+++ b/docs/en/3.2.0/cordova/connection/connection.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.
+---
+
+# Connection
+
+> The `connection` object, exposed via `navigator.connection`,  provides information about the device's cellular and wifi connection.
+
+## Properties
+
+- connection.type
+
+## Constants
+
+- Connection.UNKNOWN
+- Connection.ETHERNET
+- Connection.WIFI
+- Connection.CELL_2G
+- Connection.CELL_3G
+- Connection.CELL_4G
+- Connection.CELL
+- Connection.NONE
+
+## Accessing the Feature
+
+As of version 3.0, Cordova implements device-level APIs as _plugins_.
+Use the CLI's `plugin` command, described in The Command-Line
+Interface, to add or remove this feature for a project:
+
+        $ cordova plugin add org.apache.cordova.network-information
+        $ cordova plugin ls
+        [ 'org.apache.cordova.network-information' ]
+        $ cordova plugin rm org.apache.cordova.network-information
+
+These commands apply to all targeted platforms, but modify the
+platform-specific configuration settings described below:
+
+* Amazon Fire OS
+
+        (in app/res/xml/config.xml)
+        <feature name="NetworkStatus">
+            <param name="android-package" value="org.apache.cordova.networkinformation.NetworkManager" />
+        </feature>
+
+        (in app/AndroidManifest.xml)
+        <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
+
+* Android
+
+        (in app/res/xml/config.xml)
+        <feature name="NetworkStatus">
+            <param name="android-package" value="org.apache.cordova.networkinformation.NetworkManager" />
+        </feature>
+
+        (in app/AndroidManifest.xml)
+        <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
+
+* BlackBerry WebWorks
+
+        (in www/plugins.xml)
+        <feature name="Network Status">
+            <param name="blackberry-package" value="org.apache.cordova.network.Network" />
+        </feature>
+
+* iOS (in the named application directory's `config.xml`)
+
+        <feature name="NetworkStatus">
+            <param name="ios-package" value="CDVConnection" />
+        </feature>
+
+* Windows Phone (in `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)
+
+* Tizen (in `config.xml`)
+
+        <feature name="http://tizen.org/api/systeminfo" required="true"/>
+
+  Reference: [Application Manifest for Tizen Web Application](https://developer.tizen.org/help/topic/org.tizen.help.gs/Creating%20a%20Project.html?path=0_1_1_3#8814682_CreatingaProject-EditingconfigxmlFeatures)
+
+Some platforms may support this feature without requiring any special
+configuration.  See Platform Support for an overview.
diff --git a/docs/en/3.2.0/cordova/connection/connection.type.md b/docs/en/3.2.0/cordova/connection/connection.type.md
new file mode 100644
index 0000000..57b0faf
--- /dev/null
+++ b/docs/en/3.2.0/cordova/connection/connection.type.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.
+---
+
+# connection.type
+
+Checks the currently active network connection.
+
+## Description
+
+This property offers a fast way to determine the device's network
+connection state, and type of connection.
+
+## Supported Platforms
+
+- Amazon Fire OS
+- iOS
+- Android
+- BlackBerry WebWorks 5.0+
+- Tizen
+- Windows Phone 7 and 8
+- Windows 8
+
+## Quick Example
+
+    function checkConnection() {
+        var networkState = navigator.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.CELL]     = 'Cell generic connection';
+        states[Connection.NONE]     = 'No network connection';
+
+        alert('Connection type: ' + states[networkState]);
+    }
+
+    checkConnection();
+
+## Full Example
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>navigator.connection.type Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for device API libraries to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        // device APIs are available
+        //
+        function onDeviceReady() {
+            checkConnection();
+        }
+
+            function checkConnection() {
+                var networkState = navigator.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.CELL]     = 'Cell generic 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>
+
+## API Change
+
+Until Cordova 2.3.0, the `Connection` object was accessed via
+`navigator.network.connection`, after which it was changed to
+`navigator.connection` to match the W3C specification.  It's still
+available at its original location, but is deprecated and will
+eventually be removed.
+
+## iOS Quirks
+
+- iOS can't detect the type of cellular network connection.
+    - `navigator.connection.type` is set to `Connection.CELL` for all cellular data.
+
+## Windows Phone Quirks
+
+- When running in the emulator, always detects `navigator.connection.type` as `Connection.UNKNOWN`.
+
+- Windows Phone can't detect the type of cellular network connection.
+    - `navigator.connection.type` is set to `Connection.CELL` for all cellular data.
+
+## Tizen Quirks
+
+- Tizen can only detect a WiFi or cellular connection.
+    - `navigator.connection.type` is set to `Connection.CELL_2G` for all cellular data.
diff --git a/docs/en/3.2.0/cordova/contacts/Contact/contact.md b/docs/en/3.2.0/cordova/contacts/Contact/contact.md
new file mode 100644
index 0000000..c356830
--- /dev/null
+++ b/docs/en/3.2.0/cordova/contacts/Contact/contact.md
@@ -0,0 +1,257 @@
+---
+ 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 by which to address the contact. _(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 user-defined categories associated with the contact. _(ContactField[])_
+
+- __urls__:  An array of web pages associated with 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, otherwise executes an error callback with a `ContactError` object.
+
+- __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's contact.  Contacts can be
+created, stored, 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 contact fields listed above are supported on
+every device platform.  Please check each platform's _Quirks_ section
+for details.
+
+## Supported Platforms
+
+- Amazon Fire OS
+- Android
+- BlackBerry WebWorks 5.0+
+- iOS
+- Windows Phone 7 and 8
+- Windows 8
+
+## 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.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for device API libraries to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        // device APIs are available
+        //
+        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__:  Not supported on Android 2.X devices, returning `null`.
+
+## BlackBerry WebWorks 5.0+ Quirks
+
+- __id__: Supported.  Assigned by the device when saving the contact.
+
+- __displayName__: Supported.  Stored in BlackBerry __user1__ field.
+
+- __nickname__: Not supported, returning `null`.
+
+- __phoneNumbers__: Partially supported.  Phone numbers are 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 are stored in the BlackBerry __email1__, __email2__, and __email3__ fields, respectively.
+
+- __addresses__: Partially supported.  The first and second addresses are stored in the BlackBerry __homeAddress__ and __workAddress__ fields, respectively.
+
+- __ims__: Not supported, returning `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 is 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__: Not supported on iOS, returning `null` unless there is no `ContactName` specified, in which case it returns the composite name, __nickname__ or `""`, respectively.
+
+- __birthday__: Must be input as a JavaScript `Date` object, the same way it is returned.
+
+- __photos__: Returns a File URL to the image, which is stored in the application's temporary directory.  Contents of the temporary directory are removed when the application exits.
+
+- __categories__:  This property is currently not supported, returning `null`.
+
+## Windows Phone 7 and 8 Quirks
+
+- __displayName__: When creating a contact, the value provided for the display name parameter differs from the display name retrieved when finding the contact.
+
+- __urls__: When creating a contact, users can input and save more than one web address, but only one is available when searching the contact.
+
+- __phoneNumbers__: The _pref_ option is not supported. The _type_ is not supported in a _find_ operation. Only one `phoneNumber` is allowed for each _type_.
+
+- __emails__: The _pref_ option is not supported. Home and personal references same email entry. Only one entry is allowed for each _type_.
+
+- __addresses__: Supports only work, and home/personal _type_. The home and personal _type_ reference the same address entry. Only one entry is allowed for each _type_.
+
+- __organizations__: Only one is allowed, and does not support the _pref_, _type_, and _department_ attributes.
+
+- __note__: Not supported, returning `null`.
+
+- __ims__: Not supported, returning `null`.
+
+- __birthdays__: Not supported, returning `null`.
+
+- __categories__: Not supported, returning `null`.
+
diff --git a/docs/en/3.2.0/cordova/contacts/ContactAddress/contactaddress.md b/docs/en/3.2.0/cordova/contacts/ContactAddress/contactaddress.md
new file mode 100644
index 0000000..d24731e
--- /dev/null
+++ b/docs/en/3.2.0/cordova/contacts/ContactAddress/contactaddress.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.
+---
+
+# 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 indicating what type of field this is, _home_ for example. _(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 may include more than one address in
+a `ContactAddress[]` array.
+
+## Supported Platforms
+
+- Amazon Fire OS
+- Android
+- BlackBerry WebWorks 5.0+
+- iOS
+- Windows Phone 7 and 8
+- Windows 8
+
+## 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.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for device API libraries to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        // device APIs are available
+        //
+        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__: Not supported, returning `false` on Android 2.X devices.
+
+## BlackBerry WebWorks 5.0+ Quirks
+
+- __pref__: Not supported on BlackBerry devices, returning `false`.
+
+- __type__: Partially supported.  Only one each of _Work_ and _Home_ type addresses can be stored per contact.
+
+- __formatted__: Partially supported.  Returns a concatenation of all BlackBerry address fields.
+
+- __streetAddress__: Supported.  Returns a 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__: Not supported on iOS devices, returning `false`.
+
+- __formatted__: Currently not supported.
+
diff --git a/docs/en/3.2.0/cordova/contacts/ContactError/contactError.md b/docs/en/3.2.0/cordova/contacts/ContactError/contactError.md
new file mode 100644
index 0000000..e6bc46b
--- /dev/null
+++ b/docs/en/3.2.0/cordova/contacts/ContactError/contactError.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.
+---
+
+# ContactError
+
+A `ContactError` object is passed 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/3.2.0/cordova/contacts/ContactField/contactfield.md b/docs/en/3.2.0/cordova/contacts/ContactField/contactfield.md
new file mode 100644
index 0000000..8d75b3c
--- /dev/null
+++ b/docs/en/3.2.0/cordova/contacts/ContactField/contactfield.md
@@ -0,0 +1,156 @@
+---
+ 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 stored
+as `ContactField` objects include email addresses, phone numbers, and
+URLs.
+
+## Properties
+
+- __type__: A string that indicates what type of field this is, _home_ for example. _(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 represents
+contact fields generically.  Each `ContactField` object contains a
+`value`, `type`, and `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 a
+`ContactField` object's __type__ attribute.  For example, a phone
+number can specify __type__ values of _home_, _work_, _mobile_,
+_iPhone_, or any other value that is supported by a particular device
+platform's contact database.  However, for the `Contact` __photos__
+field, the __type__ field indicates the format of the returned image:
+__url__ when the __value__ attribute contains a URL to the photo
+image, or _base64_ when the __value__ contains a base64-encoded image
+string.
+
+## Supported Platforms
+
+- Amazon Fire OS
+- Android
+- BlackBerry WebWorks 5.0+
+- iOS
+- Windows Phone 7 and 8
+- Windows 8
+
+## 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.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for device API libraries to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        // device APIs are available
+        //
+
+        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__: Not supported, returning `false`.
+
+## BlackBerry WebWorks 5.0+ Quirks
+
+- __type__: Partially supported.  Used for phone numbers.
+
+- __value__: Supported.
+
+- __pref__: Not supported, returning `false`.
+
+## iOS Quirks
+
+- __pref__: Not supported, returning `false`.
+
diff --git a/docs/en/3.2.0/cordova/contacts/ContactFindOptions/contactfindoptions.md b/docs/en/3.2.0/cordova/contacts/ContactFindOptions/contactfindoptions.md
new file mode 100644
index 0000000..5373ae6
--- /dev/null
+++ b/docs/en/3.2.0/cordova/contacts/ContactFindOptions/contactfindoptions.md
@@ -0,0 +1,109 @@
+---
+ 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 returns multiple contacts. _(Boolean)_ (Default: `false`)
+
+## Supported Platforms
+
+- Android
+- BlackBerry WebWorks 5.0+
+- iOS
+- Windows Phone 7 and 8
+- Windows 8
+
+## 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.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for device API libraries to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        // device APIs are available
+        //
+        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>
+
diff --git a/docs/en/3.2.0/cordova/contacts/ContactName/contactname.md b/docs/en/3.2.0/cordova/contacts/ContactName/contactname.md
new file mode 100644
index 0000000..a64d884
--- /dev/null
+++ b/docs/en/3.2.0/cordova/contacts/ContactName/contactname.md
@@ -0,0 +1,144 @@
+---
+ 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 different kinds of information about a `Contact` object's name.
+
+## Properties
+
+- __formatted__: The complete name of the contact. _(DOMString)_
+
+- __familyName__: The contact's family name. _(DOMString)_
+
+- __givenName__: The contact's given name. _(DOMString)_
+
+- __middleName__: The contact's middle name. _(DOMString)_
+
+- __honorificPrefix__: The contact's prefix (example _Mr._ or _Dr._) _(DOMString)_
+
+- __honorificSuffix__: The contact's suffix (example _Esq._). _(DOMString)_
+
+## Details
+
+The `ContactName` object stores a contact's name properties.
+
+## Supported Platforms
+
+- Amazon Fire OS
+- Android 2.X
+- BlackBerry WebWorks 5.0+
+- iOS
+- Windows Phone 7 and 8
+- Windows 8
+
+## 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.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for device API libraries to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        // device APIs are available
+        //
+        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, and read-only.  Returns a concatenation of `honorificPrefix`, `givenName`, `middleName`, `familyName`, and `honorificSuffix`.
+
+## BlackBerry WebWorks 5.0+ Quirks
+
+- __formatted__: Partially supported.  Returns a concatenation of BlackBerry __firstName__ and __lastName__ fields.
+
+- __familyName__: Supported.  Stored in BlackBerry __lastName__ field.
+
+- __givenName__: Supported.  Stored in BlackBerry __firstName__ field.
+
+- __middleName__: Not supported, returning `null`.
+
+- __honorificPrefix__: Not supported, returning `null`.
+
+- __honorificSuffix__: Not supported, returning `null`.
+
+## iOS Quirks
+
+- __formatted__: Partially supported.  Returns iOS Composite Name, but is read-only.
+
diff --git a/docs/en/3.2.0/cordova/contacts/ContactOrganization/contactorganization.md b/docs/en/3.2.0/cordova/contacts/ContactOrganization/contactorganization.md
new file mode 100644
index 0000000..1fe2aa3
--- /dev/null
+++ b/docs/en/3.2.0/cordova/contacts/ContactOrganization/contactorganization.md
@@ -0,0 +1,151 @@
+---
+ 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 a `Contact` object's organization properties.
+
+## Properties
+
+- __pref__: Set to `true` if this `ContactOrganization` contains the user's preferred value. _(boolean)_
+
+- __type__: A string that indicates what type of field this is, _home_ for example. _(DOMString)
+
+- __name__: The name of the organization. _(DOMString)_
+
+- __department__: The department the contract works for. _(DOMString)_
+
+- __title__: The contact's 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 5.0+
+- iOS
+- Windows Phone 7 and 8
+- Windows 8
+
+## 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.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for device API libraries to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        // device APIs are available
+        //
+        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__: Not supported by Android 2.X devices, returning `false`.
+
+## BlackBerry WebWorks 5.0+ Quirks
+
+- __pref__: Not supported by BlackBerry devices, returning `false`.
+
+- __type__: Not supported by BlackBerry devices, returning `null`.
+
+- __name__: Partially supported.  The first organization name is stored in the BlackBerry __company__ field.
+
+- __department__: Not supported, returning `null`.
+
+- __title__: Partially supported.  The first organization title is stored in the BlackBerry __jobTitle__ field.
+
+## iOS Quirks
+
+- __pref__: Not supported on iOS devices, returning `false`.
+
+- __type__: Not supported on iOS devices, returning `null`.
+
+- __name__: Partially supported.  The first organization name is stored in the iOS __kABPersonOrganizationProperty__ field.
+
+- __department__: Partially supported.  The first department name is stored in the iOS __kABPersonDepartmentProperty__ field.
+
+- __title__: Partially supported.  The first title is stored in the iOS __kABPersonJobTitleProperty__ field.
+
diff --git a/docs/en/3.2.0/cordova/contacts/contacts.create.md b/docs/en/3.2.0/cordova/contacts/contacts.create.md
new file mode 100644
index 0000000..3bc2636
--- /dev/null
+++ b/docs/en/3.2.0/cordova/contacts/contacts.create.md
@@ -0,0 +1,72 @@
+---
+ 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
+
+The `contacts.create` method is synchronous, and returns a new `Contact` object.
+
+This method does not retain the Contact object in the device contacts
+database, for which you need to invoke the `Contact.save` method.
+
+## Supported Platforms
+
+- Android
+- BlackBerry WebWorks 5.0+
+- iOS
+- Windows Phone 7 and 8
+
+## 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.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for device API libraries to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        // device APIs are available
+        //
+        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/3.2.0/cordova/contacts/contacts.find.md b/docs/en/3.2.0/cordova/contacts/contacts.find.md
new file mode 100644
index 0000000..0be3c81
--- /dev/null
+++ b/docs/en/3.2.0/cordova/contacts/contacts.find.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.
+---
+
+# 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
+
+The `contacts.find` method executes asynchronously, querying the
+device contacts database and returning an array of `Contact` objects.
+The resulting objects are passed to the `contactSuccess` callback
+function specified by the __contactSuccess__ parameter.
+
+The __contactFields__ parameter specifies the fields to be used as a
+search qualifier, and only those results are passed to the
+__contactSuccess__ callback function.  A zero-length __contactFields__
+parameter is invalid and results in
+`ContactError.INVALID_ARGUMENT_ERROR`. A __contactFields__ value of
+`"*"` returns 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 there's a match for
+_any_ of the specified fields, the contact is returned.
+
+## Parameters
+
+- __contactFields__: Contact fields to use as a search qualifier. The resulting `Contact` object only features values for these fields. _(DOMString[])_ [Required]
+
+- __contactSuccess__: Success callback function invoked with the contacts returned from the database. [Required]
+
+- __contactError__: Error callback function, invoked when an error occurs. [Optional]
+
+- __contactFindOptions__: Search options to filter contacts. [Optional]
+
+## Supported Platforms
+
+- Android
+- BlackBerry WebWorks 5.0+
+- iOS
+- Windows Phone 7 and 8
+- Windows 8
+
+## 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";
+    options.multiple = true;
+    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.js"></script>
+            <script type="text/javascript" charset="utf-8">
+
+                // Wait for device API libraries to load
+                document.addEventListener("deviceready", onDeviceReady, false);
+
+                // device APIs are available
+
+                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/3.2.0/cordova/contacts/contacts.md b/docs/en/3.2.0/cordova/contacts/contacts.md
new file mode 100644
index 0000000..728aa9b
--- /dev/null
+++ b/docs/en/3.2.0/cordova/contacts/contacts.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.
+---
+
+# Contacts
+
+> The `contacts` object provides access to the device contacts database.
+
+__WARNING__: Collection and use of contact data raises
+important privacy issues.  Your app's privacy policy should discuss
+how the app uses contact data and whether it is shared with any other
+parties.  Contact information is considered sensitive because it
+reveals the people with whom a person communicates.  Therefore, in
+addition to the app's privacy policy, you should strongly consider
+providing a just-in-time notice before the app accesses or uses
+contact data, if the device operating system doesn't do so
+already. That notice should provide the same information noted above,
+as well as obtaining the user's permission (e.g., by presenting
+choices for __OK__ and __No Thanks__).  Note that some app
+marketplaces may require the app to provide a just-in-time notice and
+obtain the user's permission before accessing contact data.  A
+clear and easy-to-understand user experience surrounding the use of
+contact data helps avoid user confusion and perceived misuse of
+contact data.  For more information, please see the Privacy Guide.
+
+## Methods
+
+- contacts.create
+- contacts.find
+
+## Arguments
+
+- contactFields
+- contactSuccess
+- contactError
+- contactFindOptions
+
+## Objects
+
+- Contact
+- ContactName
+- ContactField
+- ContactAddress
+- ContactOrganization
+- ContactFindOptions
+- ContactError
+
+## Accessing the Feature
+
+As of version 3.0, Cordova implements device-level APIs as _plugins_.
+Use the CLI's `plugin` command, described in The Command-Line
+Interface, to add or remove this feature for a project:
+
+        $ cordova plugin add org.apache.cordova.contacts
+        $ cordova plugin ls
+        [ 'org.apache.cordova.contacts' ]
+        $ cordova plugin rm org.apache.cordova.contacts
+
+These commands apply to all targeted platforms, but modify the
+platform-specific configuration settings described below:
+
+* Amazon Fire OS
+
+        (in app/res/xml/config.xml)
+        <feature name="Contacts">
+            <param name="android-package" value="org.apache.cordova.contacts.ContactManager" />
+        </feature>
+
+        (in app/AndroidManifest.xml)      
+        <uses-permission android:name="android.permission.READ_CONTACTS" />
+        <uses-permission android:name="android.permission.WRITE_CONTACTS" />
+        <uses-permission android:name="android.permission.GET_ACCOUNTS" />
+
+* Android
+
+        (in app/res/xml/config.xml)
+        <feature name="Contacts">
+            <param name="android-package" value="org.apache.cordova.contacts.ContactManager" />
+        </feature>
+
+        (in app/AndroidManifest.xml)      
+        <uses-permission android:name="android.permission.READ_CONTACTS" />
+        <uses-permission android:name="android.permission.WRITE_CONTACTS" />
+        <uses-permission android:name="android.permission.GET_ACCOUNTS" />
+
+* BlackBerry WebWorks
+
+        (in www/plugins.xml)
+        <feature name="Contact">
+            <param name="blackberry-package" value="org.apache.cordova.pim.Contact" />
+        </feature>
+
+        (in 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 (in the named application directory's `config.xml`)
+
+        <feature name="Contacts">
+            <param name="ios-package" value="CDVContacts" />
+        </feature>
+
+* Windows Phone (in `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)
+
+Some platforms may support this feature without requiring any special
+configuration.  See Platform Support for an overview.
diff --git a/docs/en/3.2.0/cordova/contacts/parameters/contactError.md b/docs/en/3.2.0/cordova/contacts/parameters/contactError.md
new file mode 100644
index 0000000..11ee57d
--- /dev/null
+++ b/docs/en/3.2.0/cordova/contacts/parameters/contactError.md
@@ -0,0 +1,26 @@
+---
+ 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
+    }
diff --git a/docs/en/3.2.0/cordova/contacts/parameters/contactFields.md b/docs/en/3.2.0/cordova/contacts/parameters/contactFields.md
new file mode 100644
index 0000000..e2da390
--- /dev/null
+++ b/docs/en/3.2.0/cordova/contacts/parameters/contactFields.md
@@ -0,0 +1,24 @@
+---
+ 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 for the `contacts.find` method, used to specify which fields should be included in the `Contact` objects resulting from a find operation.
+
+    ["name", "phoneNumbers", "emails"]
diff --git a/docs/en/3.2.0/cordova/contacts/parameters/contactFindOptions.md b/docs/en/3.2.0/cordova/contacts/parameters/contactFindOptions.md
new file mode 100644
index 0000000..fb7e79c
--- /dev/null
+++ b/docs/en/3.2.0/cordova/contacts/parameters/contactFindOptions.md
@@ -0,0 +1,34 @@
+---
+ 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, used 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 returns multiple contacts. _(Boolean)_ (Default: `false`)
diff --git a/docs/en/3.2.0/cordova/contacts/parameters/contactSuccess.md b/docs/en/3.2.0/cordova/contacts/parameters/contactSuccess.md
new file mode 100644
index 0000000..543f5e3
--- /dev/null
+++ b/docs/en/3.2.0/cordova/contacts/parameters/contactSuccess.md
@@ -0,0 +1,38 @@
+---
+ 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);
+        }
+    }
diff --git a/docs/en/3.2.0/cordova/device/device.cordova.md b/docs/en/3.2.0/cordova/device/device.cordova.md
new file mode 100644
index 0000000..1a139d7
--- /dev/null
+++ b/docs/en/3.2.0/cordova/device/device.cordova.md
@@ -0,0 +1,75 @@
+---
+ 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
+
+- Amazon Fire OS
+- Android
+- BlackBerry WebWorks 5.0+
+- iOS
+- Tizen
+- Windows Phone 7 and 8
+- Windows 8
+
+## 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.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for device API libraries to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        // device APIs are available
+        //
+        function onDeviceReady() {
+            var element = document.getElementById('deviceProperties');
+            element.innerHTML = 'Device Model: '    + device.model    + '<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/3.2.0/cordova/device/device.md b/docs/en/3.2.0/cordova/device/device.md
new file mode 100644
index 0000000..1515952
--- /dev/null
+++ b/docs/en/3.2.0/cordova/device/device.md
@@ -0,0 +1,99 @@
+---
+ 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.model
+- device.cordova
+- device.platform
+- device.uuid
+- device.version
+- device.name
+
+## Variable Scope
+
+Since `device` is assigned to the `window` object, it is implicitly in the global scope.
+
+    // These reference the same `device`
+    var phoneModel = window.device.model;
+    var phoneModel = device.model;
+
+## Accessing the Feature
+
+As of version 3.0, Cordova implements device-level APIs as _plugins_.
+Use the CLI's `plugin` command, described in The Command-Line
+Interface, to add or remove this feature for a project:
+
+        $ cordova plugin add org.apache.cordova.device
+        $ cordova plugin ls
+        [ 'org.apache.cordova.device' ]
+        $ cordova plugin rm org.apache.cordova.device
+
+These commands apply to all targeted platforms, but modify the
+platform-specific configuration settings described below:
+
+* Amazon Fire OS
+
+        (in app/res/xml/config.xml)
+        <feature name="Device">
+            <param name="android-package" value="org.apache.cordova.device.Device" />
+        </feature>
+
+* Android
+
+        (in app/res/xml/config.xml)
+        <feature name="Device">
+            <param name="android-package" value="org.apache.cordova.device.Device" />
+        </feature>
+
+* BlackBerry WebWorks
+
+        (in www/plugins.xml)
+        <feature name="Device">
+            <param name="blackberry-package" value="org.apache.cordova.device.Device" />
+        </feature>
+
+        (in 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>
+
+* Windows Phone (in `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)
+
+* Tizen (in `config.xml`)
+
+        <feature name="http://tizen.org/api/systeminfo" required="true"/>
+
+  Reference: [Application Manifest for Tizen Web Application](https://developer.tizen.org/help/topic/org.tizen.help.gs/Creating%20a%20Project.html?path=0_1_1_3#8814682_CreatingaProject-EditingconfigxmlFeatures)
+
+Some platforms may support this feature without requiring any special
+configuration.  See Platform Support for an overview.
diff --git a/docs/en/3.2.0/cordova/device/device.model.md b/docs/en/3.2.0/cordova/device/device.model.md
new file mode 100644
index 0000000..e87193a
--- /dev/null
+++ b/docs/en/3.2.0/cordova/device/device.model.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.
+---
+
+# device.model
+
+Get the device's model name.
+
+    var string = device.model;
+
+## Description
+
+The `device.model` returns the name of the device's model or
+product. The value is set by the device manufacturer and may be
+different across versions of the same product.
+
+## Supported Platforms
+
+- Android
+- BlackBerry WebWorks 5.0+
+- iOS
+- Tizen
+- Windows Phone 7 and 8
+- Windows 8
+
+## Quick Example
+
+    // Android:    Nexus One       returns "Passion" (Nexus One code name)
+    //             Motorola Droid  returns "voles"
+    // BlackBerry: Torch 9800      returns "9800"
+    // iOS:     for the iPad Mini, returns iPad2,5; iPhone 5 is iPhone 5,1. See http://theiphonewiki.com/wiki/index.php?title=Models
+    //
+    var model = device.model;
+
+## Full Example
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>Device Properties Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for device API libraries to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        // device APIs are available
+        //
+        function onDeviceReady() {
+            var element = document.getElementById('deviceProperties');
+            element.innerHTML = 'Device Model: '    + device.model    + '<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), which is often the production code name. For example, the Nexus One returns `Passion`, and Motorola Droid returns `voles`.
+
+## Tizen Quirks
+
+- Returns the device model assigned by the vendor, for example, `TIZEN`
+
+## Windows Phone 7 and 8 Quirks
+
+- Returns the device model specified by the manufacturer. For example, the Samsung Focus returns `SGH-i917`.
diff --git a/docs/en/3.2.0/cordova/device/device.name.md b/docs/en/3.2.0/cordova/device/device.name.md
new file mode 100644
index 0000000..eec50c0
--- /dev/null
+++ b/docs/en/3.2.0/cordova/device/device.name.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.name
+
+__WARNING__: `device.name` is deprecated as of version 2.3.0. Use `device.model` instead.
+
+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 5.0+
+- iOS
+- Tizen
+- Windows Phone 7 and 8
+- Windows 8
+
+## Quick Example
+
+    // Android:    Nexus One       returns "Passion" (Nexus One code name)
+    //             Motorola Droid  returns "voles"
+    // BlackBerry: Torch 9800      returns "9800"
+    // iOS:     All devices     returns either "iPhone", "iPod Touch", "iPhone Simulator", "iPad", "iPad Simulator"
+    //
+    var name = device.name;
+
+## Full Example
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>Device Properties Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for device API libraries to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        // device APIs are available
+        //
+        function onDeviceReady() {
+            var element = document.getElementById('deviceProperties');
+            element.innerHTML = 'Device Name: '     + device.name     + '<br />' +
+                                'Device Model: '    + device.model    + '<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), which is often the production code name. For example, the Nexus One returns `Passion`, and Motorola Droid returns `voles`.
+
+## Windows Phone 7 and 8 Quirks
+
+- Returns the device model specified by the manufacturer. For example, the Samsung Focus returns `SGH-i917`.
+
+## Tizen Quirks
+
+- Returns the device model assigned by the vendor, for example, `TIZEN`
diff --git a/docs/en/3.2.0/cordova/device/device.platform.md b/docs/en/3.2.0/cordova/device/device.platform.md
new file mode 100644
index 0000000..b6f0818
--- /dev/null
+++ b/docs/en/3.2.0/cordova/device/device.platform.md
@@ -0,0 +1,89 @@
+---
+ 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 5.0+
+- iOS
+- Tizen
+- Windows Phone 7 and 8
+- Windows 8
+
+## Quick Example
+
+    // Depending on the device, a few examples are:
+    //   - "Android"
+    //   - "BlackBerry"
+    //   - "iOS"
+    //   - "WinCE"
+    //   - "Tizen"
+    var devicePlatform = device.platform;
+
+## Full Example
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>Device Properties Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for device API libraries to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        // device APIs are available
+        //
+        function onDeviceReady() {
+            var element = document.getElementById('deviceProperties');
+            element.innerHTML = 'Device Model: '    + device.model    + '<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>
+
+## BlackBerry Quirks
+
+Devices may return the device platform version number instead of the
+platform name.  For example, the Storm2 9550 returns a value such as
+`2.13.0.95`.
+
+## Windows Phone 7 Quirks
+
+Windows Phone 7 devices report the platform as `WinCE`.
+
+## Windows Phone 8 Quirks
+
+Windows Phone 8 devices report the platform as `Win32NT`.
diff --git a/docs/en/3.2.0/cordova/device/device.uuid.md b/docs/en/3.2.0/cordova/device/device.uuid.md
new file mode 100644
index 0000000..2795cfa
--- /dev/null
+++ b/docs/en/3.2.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 are specific to the device's platform or model.
+
+## Supported Platforms
+
+- Android
+- BlackBerry WebWorks 5.0+
+- iOS
+- Tizen
+- Windows Phone 7 and 8
+- Windows 8
+
+## 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 can't 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
+    // Tizen: returns the device IMEI (International Mobile Equipment Identity or IMEI is a number
+    // unique to every GSM and UMTS mobile phone.
+    var deviceID = device.uuid;
+
+## Full Example
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>Device Properties Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for device API libraries to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        // device APIs are available
+        //
+        function onDeviceReady() {
+            var element = document.getElementById('deviceProperties');
+            element.innerHTML = 'Device Model: '    + device.model    + '<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` on iOS is not unique to a device, but varies for each
+application, for each installation.  It changes if you delete and
+re-install the app, and possibly also when you upgrade iOS, or even
+upgrade the app per version (apparent in iOS 5.1). The `uuid` is not
+a reliable value.
+
+## Windows Phone 7 and 8 Quirks
+
+The `uuid` for Windows Phone 7 requires the permission
+`ID_CAP_IDENTITY_DEVICE`.  Microsoft will likely deprecate this
+property soon.  If the capability is not available, the application
+generates a persistent guid that is maintained for the duration of the
+application's installation on the device.
diff --git a/docs/en/3.2.0/cordova/device/device.version.md b/docs/en/3.2.0/cordova/device/device.version.md
new file mode 100644
index 0000000..a401eaf
--- /dev/null
+++ b/docs/en/3.2.0/cordova/device/device.version.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.version
+
+Get the operating system version.
+
+    var string = device.version;
+
+## Supported Platforms
+
+- Android 2.1+
+- BlackBerry WebWorks 5.0+
+- iOS
+- Tizen
+- Windows Phone 7 and 8
+- Windows 8
+
+## 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
+    // Tizen: returns "TIZEN_20120425_2"
+    var deviceVersion = device.version;
+
+## Full Example
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>Device Properties Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for device API libraries to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        // device APIs are available
+        //
+        function onDeviceReady() {
+            var element = document.getElementById('deviceProperties');
+            element.innerHTML = 'Device Model: '    + device.model    + '<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/3.2.0/cordova/events/events.backbutton.md b/docs/en/3.2.0/cordova/events/events.backbutton.md
new file mode 100644
index 0000000..14d5869
--- /dev/null
+++ b/docs/en/3.2.0/cordova/events/events.backbutton.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.
+---
+
+# backbutton
+
+The event fires when the user presses the back button.
+
+    document.addEventListener("backbutton", yourCallbackFunction, false);
+
+## Details
+
+To override the default back-button behavior, register an event
+listener for the `backbutton` event, typically by calling
+`document.addEventListener` once you receive the `deviceready` event.
+It is no longer necessary to call any other method to override the
+back-button behavior.
+
+## Supported Platforms
+
+- Amazon Fire OS
+- Android
+- BlackBerry WebWorks 5.0+
+- Windows Phone 7 and 8
+
+## Quick Example
+
+    document.addEventListener("backbutton", onBackKeyDown, false);
+
+    function onBackKeyDown() {
+        // Handle the back button
+    }
+
+## Full Example
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>Back Button Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for device API libraries to load
+        //
+        function onLoad() {
+            document.addEventListener("deviceready", onDeviceReady, false);
+        }
+
+        // device APIs are available
+        //
+        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/3.2.0/cordova/events/events.batterycritical.md b/docs/en/3.2.0/cordova/events/events.batterycritical.md
new file mode 100644
index 0000000..1c0e426
--- /dev/null
+++ b/docs/en/3.2.0/cordova/events/events.batterycritical.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.
+---
+
+# batterycritical
+
+The event fires when the battery has reached the critical level
+threshold.
+
+    window.addEventListener("batterycritical", yourCallbackFunction, false);
+
+## Details
+
+The event fires when the percentage of battery charge has reached the
+critical battery threshold. The value is device-specific.
+
+The `batterycritical` handler is passed an object that contains two
+properties:
+
+- __level__: The percentage of battery charge (0-100). _(Number)_
+
+- __isPlugged__: A boolean that indicates whether the device is plugged in. _(Boolean)_
+
+Applications typically should use `window.addEventListener` to attach
+an event listener once the `deviceready` event fires.
+
+## Supported Platforms
+
+- Amazon Fire OS
+- iOS
+- Android
+- BlackBerry WebWorks 5.0+
+- Tizen
+
+## 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>Battery Critical Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for device API libraries to load
+        //
+        function onLoad() {
+            document.addEventListener("deviceready", onDeviceReady, false);
+        }
+
+        // device APIs are available
+        //
+        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/3.2.0/cordova/events/events.batterylow.md b/docs/en/3.2.0/cordova/events/events.batterylow.md
new file mode 100644
index 0000000..046a78c
--- /dev/null
+++ b/docs/en/3.2.0/cordova/events/events.batterylow.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.
+---
+
+# batterylow
+
+The event fires when the battery has reached the low level threshold.
+
+    window.addEventListener("batterylow", yourCallbackFunction, false);
+
+## Details
+
+The event fires when the percentage of battery charge has reached the
+low battery threshold, device-specific value.
+
+The `batterylow` handler is passed an object that contains two
+properties:
+
+- __level__: The percentage of battery charge (0-100). _(Number)_
+
+- __isPlugged__: A boolean that indicates whether the device is plugged in. _(Boolean)_
+
+Applications typically should use `document.addEventListener` to
+attach an event listener once the `deviceready` event fires.
+
+## Supported Platforms
+
+- Amazon Fire OS
+- iOS
+- Android
+- BlackBerry WebWorks 5.0+
+- Tizen
+
+## 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>Device Ready Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for device API libraries to load
+        //
+        function onLoad() {
+            document.addEventListener("deviceready", onDeviceReady, false);
+        }
+
+        // device APIs are available
+        //
+        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/3.2.0/cordova/events/events.batterystatus.md b/docs/en/3.2.0/cordova/events/events.batterystatus.md
new file mode 100644
index 0000000..37282a7
--- /dev/null
+++ b/docs/en/3.2.0/cordova/events/events.batterystatus.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.
+---
+
+# batterystatus
+
+The event fires when there is a change in the battery status.
+
+    window.addEventListener("batterystatus", yourCallbackFunction, false);
+
+## Details
+
+This event fires when the percentage of battery charge changes by at
+least 1 percent, or if the device is plugged in or unplugged.
+
+The battery status handler is passed an object that contains two
+properties:
+
+- __level__: The percentage of battery charge (0-100). _(Number)_
+
+- __isPlugged__: A boolean that indicates whether the device is plugged in. _(Boolean)_
+
+Applications typically should use `window.addEventListener` to
+attach an event listener once the `deviceready` event fires.
+
+## Supported Platforms
+
+- Amazon Fire OS
+- iOS
+- Android
+- BlackBerry WebWorks 5.0+
+- Windows Phone 7 and 8
+- Tizen
+
+## Windows Phone 7 and 8 Quirks
+
+Windows Phone 7 does not provide native APIs to determine battery
+level, so the `level` property is unavailable.  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>Device Ready Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for device API libraries to load
+        //
+        function onLoad() {
+            document.addEventListener("deviceready", onDeviceReady, false);
+        }
+
+        // device APIs are available
+        //
+        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/3.2.0/cordova/events/events.deviceready.md b/docs/en/3.2.0/cordova/events/events.deviceready.md
new file mode 100644
index 0000000..6d79692
--- /dev/null
+++ b/docs/en/3.2.0/cordova/events/events.deviceready.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.
+---
+
+# deviceready
+
+The event fires when Cordova is fully loaded.
+
+    document.addEventListener("deviceready", yourCallbackFunction, false);
+
+## Details
+
+This event is essential to any application. It signals that Cordova's
+device APIs have loaded and are ready to access.
+
+Cordova consists of two code bases: native and JavaScript. While the
+native code loads, a custom loading image displays. However,
+JavaScript only loads once the DOM loads. This means the web app may
+potentially call a Cordova JavaScript function before the
+corresponding native code becomes available.
+
+The `deviceready` event fires once Cordova has fully loaded. Once the
+event fires, you can safely make calls to Cordova APIs.  Applications
+typically attach an event listener with `document.addEventListener`
+once the HTML document's DOM has loaded.
+
+The `deviceready` event behaves somewhat differently from others.  Any
+event handler registered after the `deviceready` event fires has its
+callback function called immediately.
+
+## Supported Platforms
+
+- Amazon Fire OS
+- Android
+- BlackBerry WebWorks 5.0+
+- iOS
+- Tizen
+- Windows Phone 7 and 8
+- Windows 8
+
+## Quick Example
+
+    document.addEventListener("deviceready", onDeviceReady, false);
+
+    function onDeviceReady() {
+        // Now safe to use device APIs
+    }
+
+## Full Example
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>Device Ready Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for device API libraries to load
+        //
+        function onLoad() {
+            document.addEventListener("deviceready", onDeviceReady, false);
+        }
+
+        // device APIs are available
+        //
+        function onDeviceReady() {
+            // Now safe to use device APIs
+        }
+
+        </script>
+      </head>
+      <body onload="onLoad()">
+      </body>
+    </html>
diff --git a/docs/en/3.2.0/cordova/events/events.endcallbutton.md b/docs/en/3.2.0/cordova/events/events.endcallbutton.md
new file mode 100644
index 0000000..6f62df4
--- /dev/null
+++ b/docs/en/3.2.0/cordova/events/events.endcallbutton.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.
+---
+
+# endcallbutton
+
+This event fires when the user presses the end call button.
+
+    document.addEventListener("endcallbutton", yourCallbackFunction, false);
+
+## Details
+
+The event overrides the default end call behavior.
+
+Applications typically should use `document.addEventListener` to
+attach an event listener once the `deviceready` event fires.
+
+## Supported Platforms
+
+- BlackBerry WebWorks 5.0+
+
+## 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>End Call Button Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for device API libraries to load
+        //
+        function onLoad() {
+            document.addEventListener("deviceready", onDeviceReady, false);
+        }
+
+        // device APIs are available
+        //
+        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/3.2.0/cordova/events/events.md b/docs/en/3.2.0/cordova/events/events.md
new file mode 100644
index 0000000..847743d
--- /dev/null
+++ b/docs/en/3.2.0/cordova/events/events.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.
+---
+
+# Events
+
+> Cordova lifecycle events.
+
+## Event Types
+
+- deviceready
+- pause
+- resume
+- online
+- offline
+- backbutton
+- batterycritical
+- batterylow
+- batterystatus
+- menubutton
+- searchbutton
+- startcallbutton
+- endcallbutton
+- volumedownbutton
+- volumeupbutton
+
+## Accessing the Feature
+
+As of version 3.0, Cordova implements battery status and other
+device-level APIs as _plugins_. Access to all other events not related
+to battery status are enabled by default.  Use the CLI's `plugin`
+command, described in The Command-Line Interface, to enable or disable
+battery events:
+
+        $ cordova plugin add org.apache.cordova.battery-status
+        $ cordova plugin ls
+        [ 'org.apache.cordova.battery-status' ]
+        $ cordova plugin rm org.apache.cordova.battery-status
+
+These commands apply to all targeted platforms, but modify the
+platform-specific configuration settings described below:
+
+* Amazon Fire OS
+
+        (in app/res/xml/config.xml)
+        <feature name="Battery">
+            <param name="android-package" value="org.apache.cordova.batterystatus.BatteryListener" />
+        </feature>
+
+* Android
+
+        (in app/res/xml/config.xml)
+        <feature name="Battery">
+            <param name="android-package" value="org.apache.cordova.batterystatus.BatteryListener" />
+        </feature>
+
+* BlackBerry WebWorks
+
+        (in www/plugins.xml)
+        <feature name="Battery">
+            <param name="blackberry-package" value="org.apache.cordova.battery.Battery" />
+        </feature>
+
+        (in 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 (in the named application directory's `config.xml`)
+
+        <feature name="Battery">
+            <param name="ios-package" value="CDVBattery" />
+        </feature>
+
+* Tizen (in `config.xml`)
+
+        <feature name="http://tizen.org/api/systeminfo" required="true"/>
+
+  Reference: [Application Manifest for Tizen Web Application](https://developer.tizen.org/help/topic/org.tizen.help.gs/Creating%20a%20Project.html?path=0_1_1_3#8814682_CreatingaProject-EditingconfigxmlFeatures)
+
+Some platforms may support this feature without requiring any special
+configuration.  See Platform Support for an overview.
diff --git a/docs/en/3.2.0/cordova/events/events.menubutton.md b/docs/en/3.2.0/cordova/events/events.menubutton.md
new file mode 100644
index 0000000..f3a448d
--- /dev/null
+++ b/docs/en/3.2.0/cordova/events/events.menubutton.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.
+---
+
+# menubutton
+
+The event fires when the user presses the menu button.
+
+    document.addEventListener("menubutton", yourCallbackFunction, false);
+
+## Details
+
+Applying an event handler overrides the default menu button behavior.
+
+Applications typically should use `document.addEventListener` to
+attach an event listener once the `deviceready` event fires.
+
+## Supported Platforms
+
+- Amazon Fire OS
+- Android
+- BlackBerry WebWorks 5.0+
+
+## 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>Menu Button Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for device API libraries to load
+        //
+        function onLoad() {
+            document.addEventListener("deviceready", onDeviceReady, false);
+        }
+
+        // device APIs are available
+        //
+        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/3.2.0/cordova/events/events.offline.md b/docs/en/3.2.0/cordova/events/events.offline.md
new file mode 100644
index 0000000..9bd1a37
--- /dev/null
+++ b/docs/en/3.2.0/cordova/events/events.offline.md
@@ -0,0 +1,99 @@
+---
+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
+
+The event fires when an application goes offline, and the device is
+not connected to the Internet.
+
+    document.addEventListener("offline", yourCallbackFunction, false);
+
+## Details
+
+The `offline` event fires when a previously connected device loses a
+network connection so that an application can no longer access the
+Internet.  It relies on the same information as the Connection API,
+and fires when the `connection.type` changes from `NONE` to any other
+value.
+
+Applications typically should use `document.addEventListener` to
+attach an event listener once the `deviceready` event fires.
+
+## Supported Platforms
+
+- Amazon Fire OS
+- Android
+- BlackBerry WebWorks 5.0+
+- iOS
+- Windows Phone 7 and 8
+- Tizen
+- Windows 8
+
+## Quick Example
+
+    document.addEventListener("offline", onOffline, false);
+
+    function onOffline() {
+        // Handle the offline event
+    }
+
+## Full Example
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>Offline Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for device API libraries to load
+        //
+        function onLoad() {
+            document.addEventListener("deviceready", onDeviceReady, false);
+        }
+
+        // device APIs are available
+        //
+        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) takes at least a second to fire.
+
+## Windows Phone 7 Quirks
+
+When running in the Emulator, the `connection.status` is always unknown, so this event does _not_ fire.
+
+## Windows Phone 8 Quirks
+
+The Emulator reports the connection type as `Cellular`, which does not change, so the event does _not_ fire.
diff --git a/docs/en/3.2.0/cordova/events/events.online.md b/docs/en/3.2.0/cordova/events/events.online.md
new file mode 100644
index 0000000..9f988df
--- /dev/null
+++ b/docs/en/3.2.0/cordova/events/events.online.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.
+---
+
+# online
+
+This event fires when an application goes online, and the device
+becomes connected to the Internet.
+
+    document.addEventListener("online", yourCallbackFunction, false);
+
+## Details
+
+The `online` event fires when a previously unconnected device receives
+a network connection to allow an application access to the Internet.
+It relies on the same information as the Connection API, and fires
+when the value of `connection.type` becomes `NONE`.
+
+Applications typically should use `document.addEventListener` to
+attach an event listener once the `deviceready` event fires.
+
+## Supported Platforms
+
+- Amazon Fire OS
+- Android
+- BlackBerry WebWorks 5.0+
+- iOS
+- Windows Phone 7 and 8
+- Tizen
+- Windows 8
+
+## Quick Example
+
+    document.addEventListener("online", onOnline, false);
+
+    function onOnline() {
+        // Handle the online event
+    }
+
+## Full Example
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>Online Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for device API libraries to load
+        //
+        function onLoad() {
+            document.addEventListener("online", onOnline, false);
+            document.addEventListener("deviceready", onDeviceReady, false);
+        }
+
+        // device APIs are available
+        //
+        function onDeviceReady() {
+        }
+
+        // Handle the online event
+        //
+        function onOnline() {
+        }
+
+        </script>
+      </head>
+      <body onload="onLoad()">
+      </body>
+    </html>
+
+## iOS Quirks
+
+During initial startup, the first `online` event (if applicable) takes
+at least a second to fire, prior to which `connection.type` is
+`UNKNOWN`.
+
+## Windows Phone 7 Quirks
+
+When running in the Emulator, the `connection.status` is always unknown, so this event does _not_ fire.
+
+## Windows Phone 8 Quirks
+
+The Emulator reports the connection type as `Cellular`, which does not change, so events does _not_ fire.
diff --git a/docs/en/3.2.0/cordova/events/events.pause.md b/docs/en/3.2.0/cordova/events/events.pause.md
new file mode 100644
index 0000000..38f08ad
--- /dev/null
+++ b/docs/en/3.2.0/cordova/events/events.pause.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.
+---
+
+# pause
+
+The event fires when an application is put into the background.
+
+    document.addEventListener("pause", yourCallbackFunction, false);
+
+## Details
+
+The `pause` event fires when the native platform puts the application
+into the background, typically when the user switches to a different
+application.
+
+Applications typically should use `document.addEventListener` to
+attach an event listener once the `deviceready` event fires.
+
+## Supported Platforms
+
+- Amazon Fire OS
+- Android
+- BlackBerry WebWorks 5.0+
+- iOS
+- Windows Phone 7 and 8
+- Windows 8
+
+## Quick Example
+
+    document.addEventListener("pause", onPause, false);
+
+    function onPause() {
+        // Handle the pause event
+    }
+
+## Full Example
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>Pause Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for device API libraries to load
+        //
+        function onLoad() {
+            document.addEventListener("deviceready", onDeviceReady, false);
+        }
+
+        // device APIs are available
+        //
+        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 to the Cordova API or to native
+plugins that go through Objective-C do not work, along with any
+interactive calls, such as alerts or `console.log()`. They are only
+processed when the app resumes, on the next run loop.
+
+The iOS-specific `resign` event is available as an alternative to
+`pause`, and detects when users enable the __Lock__ button to lock the
+device with the app running in the foreground.  If the app (and
+device) is enabled for multi-tasking, this is paired with a subsequent
+`pause` event, but only under iOS 5. In effect, all locked apps in iOS
+5 that have multi-tasking enabled are pushed to the background.  For
+apps to remain running when locked under iOS 5, disable the app's
+multi-tasking by setting
+[UIApplicationExitsOnSuspend](http://developer.apple.com/library/ios/#documentation/general/Reference/InfoPlistKeyReference/Articles/iPhoneOSKeys.html)
+to `YES`. To run when locked on iOS 4, this setting does not matter.
diff --git a/docs/en/3.2.0/cordova/events/events.resume.md b/docs/en/3.2.0/cordova/events/events.resume.md
new file mode 100644
index 0000000..333645e
--- /dev/null
+++ b/docs/en/3.2.0/cordova/events/events.resume.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.
+---
+
+# resume
+
+The event fires when an application is retrieved from the background.
+
+    document.addEventListener("resume", yourCallbackFunction, false);
+
+## Details
+
+The `resume` event fires when the native platform pulls the
+application out from the background.
+
+Applications typically should use `document.addEventListener` to
+attach an event listener once the `deviceready` event fires.
+
+## Supported Platforms
+
+- Amazon Fire OS
+- Android
+- BlackBerry WebWorks 5.0+
+- iOS
+- Windows Phone 7 and 8
+- Windows 8
+
+## Quick Example
+
+    document.addEventListener("resume", onResume, false);
+
+    function onResume() {
+        // Handle the resume event
+    }
+
+## Full Example
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>Resume Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for device API libraries to load
+        //
+        function onLoad() {
+            document.addEventListener("deviceready", onDeviceReady, false);
+        }
+
+        // device APIs are available
+        //
+        function onDeviceReady() {
+            document.addEventListener("resume", onResume, false);
+        }
+
+        // Handle the resume event
+        //
+        function onResume() {
+        }
+
+        </script>
+      </head>
+      <body onload="onLoad()">
+      </body>
+    </html>
+
+## iOS Quirks
+
+Any interactive functions called from a `pause` event handler execute
+later when the app resumes, as signaled by the `resume` event. These
+include alerts, `console.log()`, and any calls from plugins or the
+Cordova API, which go through Objective-C.
+
+- __active__ event
+
+    The iOS-specific `active` event is available as an alternative to
+`resume`, and detects when users disable the __Lock__ button to unlock
+the device with the app running in the foreground.  If the app (and
+device) is enabled for multi-tasking, this is paired with a subsequent
+`resume` event, but only under iOS 5. In effect, all locked apps in
+iOS 5 that have multi-tasking enabled are pushed to the background.
+For apps to remain running when locked under iOS 5, disable the app's
+multi-tasking by setting [UIApplicationExitsOnSuspend](http://developer.apple.com/library/ios/#documentation/general/Reference/InfoPlistKeyReference/Articles/iPhoneOSKeys.html)
+to `YES`. To run when locked on iOS 4, this setting does not matter.
+    
+- __resume__ event
+
+    When called from a `resume` event handler, interactive functions such
+as `alert()` need to be wrapped in a `setTimeout()` call with a
+timeout value of zero, or else the app hangs. For example:
+
+        document.addEventListener("resume", onResume, false);
+        function onResume() {
+           setTimeout(function() {
+                  // TODO: do your thing!
+                }, 0);
+        }
diff --git a/docs/en/3.2.0/cordova/events/events.searchbutton.md b/docs/en/3.2.0/cordova/events/events.searchbutton.md
new file mode 100644
index 0000000..bdde91e
--- /dev/null
+++ b/docs/en/3.2.0/cordova/events/events.searchbutton.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.
+---
+
+# searchbutton
+
+The event 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 behavior on Android
+you can register an event listener for the 'searchbutton' event.
+
+Applications typically should use `document.addEventListener` to
+attach an event listener once the `deviceready` event fires.
+
+## 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>Search Button Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for device API libraries to load
+        //
+        function onLoad() {
+            document.addEventListener("deviceready", onDeviceReady, false);
+        }
+
+        // device APIs are available
+        //
+        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/3.2.0/cordova/events/events.startcallbutton.md b/docs/en/3.2.0/cordova/events/events.startcallbutton.md
new file mode 100644
index 0000000..c7e1ff6
--- /dev/null
+++ b/docs/en/3.2.0/cordova/events/events.startcallbutton.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.
+---
+
+# startcallbutton
+
+The event fires when the user presses the start call button.
+
+    document.addEventListener("startcallbutton", yourCallbackFunction, false);
+
+## Details
+
+If you need to override the default start call behavior you can
+register an event listener for the `startcallbutton` event.
+
+Applications typically should use `document.addEventListener` to
+attach an event listener once the `deviceready` event fires.
+
+## Supported Platforms
+
+- BlackBerry WebWorks 5.0+
+
+## 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>Start Call Button Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for device API libraries to load
+        //
+        function onLoad() {
+            document.addEventListener("deviceready", onDeviceReady, false);
+        }
+
+        // device APIs are available
+        //
+        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/3.2.0/cordova/events/events.volumedownbutton.md b/docs/en/3.2.0/cordova/events/events.volumedownbutton.md
new file mode 100644
index 0000000..063f04d
--- /dev/null
+++ b/docs/en/3.2.0/cordova/events/events.volumedownbutton.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.
+---
+
+# volumedownbutton
+
+The event fires when the user presses the volume down button.
+
+    document.addEventListener("volumedownbutton", yourCallbackFunction, false);
+
+## Details
+
+If you need to override the default volume down behavior you can
+register an event listener for the `volumedownbutton` event.
+
+Applications typically should use `document.addEventListener` to
+attach an event listener once the `deviceready` event fires.
+
+## Supported Platforms
+
+- BlackBerry WebWorks 5.0+
+
+## 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>Volume Down Button Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for device API libraries to load
+        //
+        function onLoad() {
+            document.addEventListener("deviceready", onDeviceReady, false);
+        }
+
+        // device APIs are available
+        //
+        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/3.2.0/cordova/events/events.volumeupbutton.md b/docs/en/3.2.0/cordova/events/events.volumeupbutton.md
new file mode 100644
index 0000000..6074930
--- /dev/null
+++ b/docs/en/3.2.0/cordova/events/events.volumeupbutton.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.
+---
+
+# volumeupbutton
+
+The event fires when the user presses the volume up button.
+
+    document.addEventListener("volumeupbutton", yourCallbackFunction, false);
+
+## Details
+
+If you need to override the default volume up behavior you can
+register an event listener for the `volumeupbutton` event.
+
+Applications typically should use `document.addEventListener` to
+attach an event listener once the `deviceready` event fires.
+
+## Supported Platforms
+
+- BlackBerry WebWorks 5.0+
+
+## 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>Volume Up Button Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for device API libraries to load
+        //
+        function onLoad() {
+            document.addEventListener("deviceready", onDeviceReady, false);
+        }
+
+        // device APIs are available
+        //
+        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/3.2.0/cordova/file/directoryentry/directoryentry.md b/docs/en/3.2.0/cordova/file/directoryentry/directoryentry.md
new file mode 100644
index 0000000..3cb9972
--- /dev/null
+++ b/docs/en/3.2.0/cordova/file/directoryentry/directoryentry.md
@@ -0,0 +1,411 @@
+---
+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, as defined by 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 attribute is defined by the W3C specification,
+but is _not_ supported:
+
+- __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 to help 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
+
+- Amazon Fire OS
+- Android
+- BlackBerry WebWorks 5.0+
+- iOS
+- Windows Phone 7 and 8
+- Windows 8
+
+## getMetadata
+
+Look up metadata about a directory.
+
+__Parameters__:
+
+- __successCallback__: A callback function to execute with a `Metadata` object. _(Function)_
+
+- __errorCallback__: A callback function to execute if an error occurs when 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
+
+Sets a directory's extended attributes, or metadata. _Currently works
+only on iOS._
+
+__Parameters__:
+
+- __successCallback__: A callback that executes when the metadata is successfully set. _(Function)_
+
+- __errorCallback__: A callback that executes when the metadata fails to be set. _(Function)_
+
+- __metadataObject__: An object that contains the metadata's 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 prevent the directory from being backed up to iCloud. Set the value to `0` to re-enable the directory to be backed up to iCloud.
+
+__Quick Example__
+
+    function setFolderMetadata(localFileSystem, subFolder, metadataKey, metadataValue)
+    {
+        var onSetMetadataWin = function() {
+            console.log("success setting metadata")
+        }
+        var onSetMetadataFail = function() {
+            console.log("error setting metadata")
+        }
+
+        var onGetDirectoryWin = function(parent) {
+            var data = {};
+            data[metadataKey] = metadataValue;
+            parent.setMetadata(onSetMetadataWin, onSetMetadataFail, data);
+        }
+        var onGetDirectoryFail = function() {
+            console.log("error getting dir")
+        }
+
+        var onFSWin = function(fileSystem) {
+            fileSystem.root.getDirectory(subFolder, {create: true, exclusive: false}, onGetDirectoryWin, onGetDirectoryFail);
+        }
+
+        var onFSFail = function(error) {
+            console.log(error.code);
+        }
+
+        window.requestFileSystem(localFileSystem, 0, onFSWin, onFSFail);
+    }
+
+        setFolderMetadata(LocalFileSystem.PERSISTENT, "Backups", "com.apple.MobileBackup", 1);
+
+## moveTo
+
+Move a directory to a different location on the file system. An error results if the app attempts 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 directory is not provided.
+
+- move a directory to a path occupied by a file.
+
+- move a directory to a path occupied by a directory that is not empty.
+
+Moving a directory on top of an existing empty directory attempts 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 executes with the `DirectoryEntry` object for the new directory. _(Function)_
+
+- __errorCallback__: A callback that executes 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.  An error results if the app attempts to:
+
+- copy a directory inside itself at any depth.
+
+- copy a directory into its parent if a name different from its current directory is not provided.
+
+Directory copies are always recursive, and 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 executes with the `DirectoryEntry` object for the new directory. _(Function)_
+
+- __errorCallback__: A callback that executes 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. An error results if the app attempts to:
+
+- delete a directory that is not empty.
+
+- delete the root directory of a filesystem.
+
+__Parameters__:
+
+- __successCallback__: A callback that executes after the directory is deleted.  Invoked with no parameters. _(Function)_
+
+- __errorCallback__: A callback that executes 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 passed the directory's parent `DirectoryEntry`. _(Function)_
+
+- __errorCallback__: A callback that executes 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.  An error results if the app attempts 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 to be created if it doesn't exist.  _(Flags)_
+
+- __successCallback__: A callback that executes with a `DirectoryEntry` object. _(Function)_
+
+- __errorCallback__: A callback that executes if an error occurs when creating or looking up the directory. Invoked with a `FileError` object. _(Function)_
+
+__Quick Example__
+
+    function success(dirEntry) {
+        console.log("Directory Name: " + dirEntry.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.  An error results if the app attempts 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 passed a `FileEntry` object. _(Function)_
+
+- __errorCallback__: A callback that executes if an error occurs when creating or looking up the file. Invoked with a `FileError` object. _(Function)_
+
+__Quick Example__
+
+    function success(fileEntry) {
+        console.log("File Name: " + fileEntry.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 (such as trying to delete
+a directory containing a file that can't be removed), some of the contents of the directory may
+be deleted.   An error results if the app attempts to:
+
+- delete the root directory of a filesystem.
+
+__Parameters__:
+
+- __successCallback__: A callback that executes after the `DirectoryEntry` has been deleted.  Invoked with no parameters. _(Function)_
+
+- __errorCallback__: A callback that executes 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);
+
+## BlackBerry Quirks
+
+May fail with a `ControlledAccessException` in the following cases:
+
+- An app attempts to access a directory created by a previous installation of the app.
+
+> Solution: ensure temporary directories are cleaned manually, or by the application prior to reinstallation.
+
+- If the device is connected by USB.
+
+> Solution: disconnect the USB cable from the device and run again.
diff --git a/docs/en/3.2.0/cordova/file/directoryreader/directoryreader.md b/docs/en/3.2.0/cordova/file/directoryreader/directoryreader.md
new file mode 100644
index 0000000..8174f1a
--- /dev/null
+++ b/docs/en/3.2.0/cordova/file/directoryreader/directoryreader.md
@@ -0,0 +1,67 @@
+---
+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 within a directory, as
+defined in the
+[W3C Directories and Systems](http://www.w3.org/TR/file-system-api/)
+specification.
+
+## Methods
+
+- __readEntries__: Read the entries in a directory.
+
+## Supported Platforms
+
+- Amazon Fire OS
+- Android
+- BlackBerry WebWorks 5.0+
+- iOS
+- Windows Phone 7 and 8
+- Windows 8
+
+## 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 executes if an error occurs when 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/3.2.0/cordova/file/file.md b/docs/en/3.2.0/cordova/file/file.md
new file mode 100644
index 0000000..a987524
--- /dev/null
+++ b/docs/en/3.2.0/cordova/file/file.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.
+---
+
+# File
+
+> An API to read, write and navigate file system hierarchies, based on the [w3c file api](http://www.w3.org/TR/FileAPI).
+
+## Objects
+
+- DirectoryEntry
+- DirectoryReader
+- File
+- FileEntry
+- FileError
+- FileReader
+- FileSystem
+- FileTransfer
+- FileTransferError
+- FileUploadOptions
+- FileUploadResult
+- FileWriter
+- Flags
+- LocalFileSystem
+- Metadata
+
+## Accessing the Feature
+
+As of version 3.0, Cordova implements device-level APIs as _plugins_.
+Use the CLI's `plugin` command, described in The Command-Line
+Interface, to add or remove this feature for a project:
+
+        $ cordova plugin add org.apache.cordova.file
+        $ cordova plugin ls
+        [ 'org.apache.cordova.file' ]
+        $ cordova plugin rm org.apache.cordova.file
+        
+You must add the `file-transfer` plugin separately. The CLI
+automatically adds the `file` plugin as a dependency, so there is no
+need to add it separately:
+
+        $ cordova plugin add org.apache.cordova.file-transfer
+        $ cordova plugin ls
+        [ 'org.apache.cordova.file',
+          'org.apache.cordova.file-transfer' ]
+        $ cordova plugin rm org.apache.cordova.file-transfer
+
+These commands apply to all targeted platforms, but modify the
+platform-specific configuration settings described below:
+
+* Amazon Fire OS
+
+        (after adding just the file plugin)
+        (in app/res/xml/config.xml)
+        <feature name="File">
+            <param name="android-package" value="org.apache.cordova.file.FileUtils" />
+        </feature>
+
+        (in app/AndroidManifest.xml)
+        <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
+
+        (after adding just the file-transfer plugin)
+        (in app/res/xml/config.xml)
+        <feature name="FileTransfer">
+            <param name="android-package" value="org.apache.cordova.filetransfer.FileTransfer" />
+        </feature>
+
+        (in app/AndroidManifest.xml)
+        <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
+
+* Android
+
+        (after adding just the file plugin)
+        (in app/res/xml/config.xml)
+        <feature name="File">
+            <param name="android-package" value="org.apache.cordova.file.FileUtils" />
+        </feature>
+
+        (in app/AndroidManifest.xml)
+        <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
+
+        (after adding just the file-transfer plugin)
+        (in app/res/xml/config.xml)
+        <feature name="FileTransfer">
+            <param name="android-package" value="org.apache.cordova.filetransfer.FileTransfer" />
+        </feature>
+
+        (in app/AndroidManifest.xml)
+        <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
+
+* BlackBerry WebWorks
+
+        (in www/plugins.xml)
+        <feature name="File">
+            <param name="blackberry-package" value="org.apache.cordova.file.FileManager" />
+        </feature>
+        <feature name="FileTransfer">
+            <param name="blackberry-package" value="org.apache.cordova.http.FileTransfer" />
+        </feature>
+
+        (in 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 (in the named application directory's `config.xml`)
+
+        <feature name="File">
+            <param name="ios-package" value="CDVFile" />
+        </feature>
+        <feature name="FileTransfer">
+            <param name="ios-package" value="CDVFileTransfer" />
+        </feature>
+
+Some platforms may support this feature without requiring any special
+configuration.  See Platform Support for an overview.
diff --git a/docs/en/3.2.0/cordova/file/fileentry/fileentry.md b/docs/en/3.2.0/cordova/file/fileentry/fileentry.md
new file mode 100644
index 0000000..29e32d4
--- /dev/null
+++ b/docs/en/3.2.0/cordova/file/fileentry/fileentry.md
@@ -0,0 +1,337 @@
+---
+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
+
+Represents a file on a file system, as 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 attribute is defined by the W3C specification,
+but is _not_ supported:
+
+- __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
+
+- Amazon Fire OS
+- Android
+- BlackBerry WebWorks 5.0+
+- iOS
+- Windows Phone 7 and 8
+- Windows 8
+
+## getMetadata
+
+Look up metadata about a file.
+
+__Parameters__:
+
+- __successCallback__: A callback that is passed a `Metadata` object. _(Function)_
+
+- __errorCallback__: A callback that executes if an error occurs when 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.
+
+__Currently works only on iOS.__
+
+- This sets the extended attributes of a file.
+
+__Parameters__:
+
+- __successCallback__: A callback that executes when the metadata is set. _(Function)_
+
+- __errorCallback__: A callback that executes when the metadata is not successfully set. _(Function)_
+
+- __metadataObject__: An object that contains the metadata's 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 prevent the file from being backed up to iCloud. Set the value to `0` to re-enable the file to be backed up to iCloud.
+
+__Quick Example__
+
+    function setFileMetadata(localFileSystem, filePath, metadataKey, metadataValue)
+    {
+        var onSetMetadataWin = function() {
+            console.log("success setting metadata")
+        }
+        var onSetMetadataFail = function() {
+            console.log("error setting metadata")
+        }
+
+        var onGetFileWin = function(parent) {
+            var data = {};
+            data[metadataKey] = metadataValue;
+            parent.setMetadata(onSetMetadataWin, onSetMetadataFail, data);
+        }
+        var onGetFileFail = function() {
+            console.log("error getting file")
+        }
+
+        var onFSWin = function(fileSystem) {
+            fileSystem.root.getFile(filePath, {create: true, exclusive: false}, onGetFileWin, onGetFileFail);
+        }
+
+        var onFSFail = function(error) {
+            console.log(error.code);
+        }
+
+        window.requestFileSystem(localFileSystem, 0, onFSWin, onFSFail);
+    }
+
+        setFileMetadata(LocalFileSystem.PERSISTENT, "Backups/sqlite.db", "com.apple.MobileBackup", 1);
+
+## moveTo
+
+Move a file to a different location on the file system. An error
+results if the app attempts 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, moving a file on top of an existing file attempts 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 passed the new file's `FileEntry` object. _(Function)_
+
+- __errorCallback__: A callback that executes 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.  An error results if
+the app attempts 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 passed the new file's `FileEntry` object. _(Function)_
+
+- __errorCallback__: A callback that executes 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 executes after the file has been deleted.  Invoked with no parameters. _(Function)_
+
+- __errorCallback__: A callback that executes 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 passed the file's parent `DirectoryEntry`. _(Function)_
+
+- __errorCallback__: A callback that executes 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 represented by the `FileEntry`.
+
+__Parameters__:
+
+- __successCallback__: A callback that is passed a `FileWriter` object. _(Function)_
+
+- __errorCallback__: A callback that executes 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 passed a `File` object. _(Function)_
+
+- __errorCallback__: A callback that executes if an error occurs when creating the `File` object, such as when the 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/3.2.0/cordova/file/fileerror/fileerror.md b/docs/en/3.2.0/cordova/file/fileerror/fileerror.md
new file mode 100644
index 0000000..47add3f
--- /dev/null
+++ b/docs/en/3.2.0/cordova/file/fileerror/fileerror.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.
+---
+
+# 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 provided to any of the
+File API's error callbacks.  To determine the type of error, compare
+its `code` property to any of the listings above.
diff --git a/docs/en/3.2.0/cordova/file/fileobj/fileobj.md b/docs/en/3.2.0/cordova/file/fileobj/fileobj.md
new file mode 100644
index 0000000..8990cf6
--- /dev/null
+++ b/docs/en/3.2.0/cordova/file/fileobj/fileobj.md
@@ -0,0 +1,83 @@
+---
+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)_
+
+## Methods
+
+- __slice__: Select only a portion of the file to be read.
+
+## Details
+
+The `File` object contains attributes of a single file.  You can get
+an instance of a `File` object by calling a `FileEntry` object's
+`file()` method.
+
+## Supported Platforms
+
+- Amazon Fire OS
+- Android
+- BlackBerry WebWorks 5.0+
+- iOS
+- Windows Phone 7 and 8
+- Windows 8
+
+## slice
+
+Return a new `File` object, for which `FileReader` returns only the
+specified portion of the file.  Negative values for `start` or `end`
+are measured from the end of the file.  Indexes are positioned
+relative to the current slice. (See the full example below.)
+
+__Parameters__:
+
+- __start__: The index of the first byte to read, inclusive.
+
+- __end__: The index of the byte after the last one to read.
+
+__Quick Example__
+
+    var slicedFile = file.slice(10, 30);
+
+__Full Example__
+
+    var slice1 = file.slice(100, 400);
+    var slice2 = slice1.slice(20, 35);
+
+    var slice3 = file.slice(120, 135);
+    // slice2 and slice3 are equivalent.
+
+__Supported Platforms__
+
+- Android
+- iOS
diff --git a/docs/en/3.2.0/cordova/file/filereader/filereader.md b/docs/en/3.2.0/cordova/file/filereader/filereader.md
new file mode 100644
index 0000000..94f1a0a
--- /dev/null
+++ b/docs/en/3.2.0/cordova/file/filereader/filereader.md
@@ -0,0 +1,255 @@
+---
+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
+
+The `FileReader` allows basic access to a file.
+
+## Properties
+
+- __readyState__: One of the reader's three possible states, either `EMPTY`, `LOADING` or `DONE`.
+
+- __result__: The contents of the file that have been read. _(DOMString)_
+
+- __error__: An object containing errors. _(FileError)_
+
+- __onloadstart__: Called when the read starts. _(Function)_
+
+- __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)_
+
+__NOTE__: The following porperty is not supported:
+
+- __onprogress__: Called while reading the file, reporting progress in terms of `progress.loaded`/`progress.total`. _(Function)_
+
+## Methods
+
+- __abort__: Aborts reading file.
+
+- __readAsDataURL__: Read file and return data as a base64-encoded data URL.
+
+- __readAsText__: Reads text file.
+
+- __readAsBinaryString__: Reads file as binary and returns a binary string.
+
+- __readAsArrayBuffer__: Reads file as an `ArrayBuffer`.
+
+## Details
+
+The `FileReader` object offers a way to read files from the device's
+file system.  Files can be read as text or as a base64 data-encoded
+string.  Event listeners receive the `loadstart`, `progress`, `load`,
+`loadend`, `error`, and `abort` events.
+
+## Supported Platforms
+
+- Amazon Fire OS
+- Android
+- BlackBerry WebWorks 5.0+
+- iOS
+- Windows Phone 7 and 8
+- Windows 8
+
+## readAsDataURL
+
+__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 (error) {
+        console.log(error.code);
+    };
+
+    entry.file(win, fail);
+
+## readAsText
+
+__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 (error) {
+        console.log(error.code);
+    };
+
+    entry.file(win, fail);
+
+## abort 
+
+    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.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for device API libraries to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        // device APIs are available
+        //
+        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(error) {
+            console.log(error.code);
+        }
+
+        </script>
+      </head>
+      <body>
+        <h1>Example</h1>
+        <p>Read File</p>
+      </body>
+    </html>
+
+## iOS Quirks
+
+- The __encoding__ parameter is not supported, and UTF8 encoding is always in effect.
+
+## readAsBinaryString
+
+Currently supported on iOS and Android only.
+
+__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.readAsBinaryString(file);
+    };
+
+    var fail = function (error) {
+        console.log(error.code);
+    };
+
+    entry.file(win, fail);
+
+## readAsArrayBuffer
+
+Currently supported on iOS and Android only.
+
+__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(new Uint8Array(evt.target.result));
+        };
+        reader.readAsArrayBuffer(file);
+    };
+
+    var fail = function (error) {
+        console.log(error.code);
+    };
+
+    entry.file(win, fail);
diff --git a/docs/en/3.2.0/cordova/file/filesystem/filesystem.md b/docs/en/3.2.0/cordova/file/filesystem/filesystem.md
new file mode 100644
index 0000000..09b8dc6
--- /dev/null
+++ b/docs/en/3.2.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 is unique across the list of exposed
+file systems.  The root property contains a `DirectoryEntry` object
+that represents the file system's root directory.
+
+## Supported Platforms
+
+- Amazon Fire OS
+- Android
+- BlackBerry WebWorks 5.0+
+- iOS
+- Windows Phone 7 and 8
+- Windows 8
+
+## 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.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for device API libraries to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        // device APIs are available
+        //
+        function onDeviceReady() {
+            window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, onFileSystemSuccess, fail);
+        }
+
+        function onFileSystemSuccess(fileSystem) {
+            console.log(fileSystem.name);
+            console.log(fileSystem.root.name);
+        }
+
+        function fail(error) {
+            console.log(error.code);
+        }
+
+        </script>
+      </head>
+      <body>
+        <h1>Example</h1>
+        <p>File System</p>
+      </body>
+    </html>
diff --git a/docs/en/3.2.0/cordova/file/filetransfer/filetransfer.md b/docs/en/3.2.0/cordova/file/filetransfer/filetransfer.md
new file mode 100644
index 0000000..632625c
--- /dev/null
+++ b/docs/en/3.2.0/cordova/file/filetransfer/filetransfer.md
@@ -0,0 +1,302 @@
+---
+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
+
+The `FileTransfer` object allows you to upload or download files to
+and from a server.
+
+## Properties
+
+- __onprogress__: Called with a `ProgressEvent` whenever a new chunk of data is transferred. _(Function)_
+
+## Methods
+
+- __upload__: sends a file to a server.
+
+- __download__: downloads a file from server.
+
+- __abort__: Aborts an in-progress transfer.
+
+## 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, a `FileUploadResult` object is passed to the
+success callback.  If an error occurs, a `FileTransferError` object is
+passed to the error callback.  It is also possible (only on iOS and
+Android) to download a file from a remote server and save it on the
+device.
+
+## Supported Platforms
+
+- Amazon Fire OS
+- Android
+- BlackBerry WebWorks 5.0+
+- iOS
+- Windows Phone 7 and 8
+- Windows 8
+
+## upload
+
+__Parameters__:
+
+- __filePath__: Full path of the file on the device.
+
+- __server__: URL of the server to receive the file, as encoded by `encodeURI()`.
+
+- __successCallback__: A callback that is passed a `Metadata` object. _(Function)_
+
+- __errorCallback__: A callback that executes if an error occurs retrieving the `Metadata`. Invoked with a `FileTransferError` object. _(Function)_
+
+- __options__: Optional parameters such as file name and mimetype.
+
+- __trustAllHosts__: Optional parameter, defaults to `false`. If set to `true`, it accepts all security certificates. This is useful since Android rejects self-signed security certificates. Not recommended for production use. Supported on Android and iOS. _(boolean)_
+
+__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 = {};
+    params.value1 = "test";
+    params.value2 = "param";
+
+    options.params = params;
+
+    var ft = new FileTransfer();
+    ft.upload(fileURI, encodeURI("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.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+            // Wait for device API libraries to load
+            //
+            document.addEventListener("deviceready", onDeviceReady, false);
+
+            // device APIs are available
+            //
+            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 = {};
+                params.value1 = "test";
+                params.value2 = "param";
+
+                options.params = params;
+
+                var ft = new FileTransfer();
+                ft.upload(imageURI, encodeURI("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>
+
+__Setting Upload Headers__
+
+Supported on Android and iOS
+
+    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 = encodeURI("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 headers={'headerParam':'headerValue'};
+
+    options.headers = headers;
+
+    var ft = new FileTransfer();
+    ft.upload(fileURI, uri, win, fail, options);
+
+__Android Quirks__
+
+Set the `chunkedMode` option to `false` to prevent problems uploading
+to a Nginx server.
+
+## download
+
+__Parameters__:
+
+- __source__: URL of the server to download the file, as encoded by `encodeURI()`.
+
+- __target__: Full path of the file on the device.
+
+- __successCallback__: A callback that is passed  a `FileEntry` object. _(Function)_
+
+- __errorCallback__: A callback that executes if an error occurs when retrieving the `Metadata`. Invoked with a `FileTransferError` object. _(Function)_
+
+- __trustAllHosts__: Optional parameter, defaults to `false`. If set to `true`, it accepts all security certificates. This is useful because Android rejects self-signed security certificates. Not recommended for production use. Supported on Android and iOS. _(boolean)_
+
+- __options__: Optional parameters, currently only supports headers (such as Authorization (Basic Authentication), etc).
+
+__Quick Example__
+
+    // !! Assumes filePath is a valid path on the device
+
+    var fileTransfer = new FileTransfer();
+    var uri = encodeURI("http://some.server.com/download.php");
+
+    fileTransfer.download(
+        uri,
+        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);
+        },
+        false,
+        {
+            headers: {
+                "Authorization": "Basic dGVzdHVzZXJuYW1lOnRlc3RwYXNzd29yZA=="
+            }
+        }
+    );
+
+## abort
+
+Aborts an in-progress transfer. The onerror callback is passed a FileTransferError object which has an error code of FileTransferError.ABORT_ERR.
+
+__Supported Platforms__
+
+- Amazon Fire OS
+- Android
+- iOS
+
+__Quick Example__
+
+    // !! Assumes variable fileURI contains a valid URI to a text file on the device
+
+    var win = function(r) {
+        console.log("Should not be called.");
+    }
+
+    var fail = function(error) {
+        // error.code == FileTransferError.ABORT_ERR
+        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="myphoto.jpg";
+    options.mimeType="image/jpeg";
+
+    var ft = new FileTransfer();
+    ft.upload(fileURI, encodeURI("http://some.server.com/upload.php"), win, fail, options);
+    ft.abort();
+
+## onprogress
+
+Called with a ProgressEvent whenever a new chunk of data is transferred.
+
+__Supported Platforms__
+
+- Amazon Fire OS
+- Android
+- iOS
+
+__Example__
+
+    fileTransfer.onprogress = function(progressEvent) {
+        if (progressEvent.lengthComputable) {
+          loadingStatus.setPercentage(progressEvent.loaded / progressEvent.total);
+        } else {
+          loadingStatus.increment();
+        }
+    };
+    fileTransfer.download(...); // or fileTransfer.upload(...);
+
+__Quirks__
+- On both Android an iOS, lengthComputable is `false` for downloads that use gzip encoding.
diff --git a/docs/en/3.2.0/cordova/file/filetransfererror/filetransfererror.md b/docs/en/3.2.0/cordova/file/filetransfererror/filetransfererror.md
new file mode 100644
index 0000000..d9ac430
--- /dev/null
+++ b/docs/en/3.2.0/cordova/file/filetransfererror/filetransfererror.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.
+---
+
+# FileTransferError
+
+A `FileTransferError` object is passed to an 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`
+- `FileTransferError.ABORT_ERR`
+
+## Description
+
+The `FileTransferError` object is passed to the error callback when an
+error occurs when uploading or downloading a file.
diff --git a/docs/en/3.2.0/cordova/file/fileuploadoptions/fileuploadoptions.md b/docs/en/3.2.0/cordova/file/fileuploadoptions/fileuploadoptions.md
new file mode 100644
index 0000000..5137154
--- /dev/null
+++ b/docs/en/3.2.0/cordova/file/fileuploadoptions/fileuploadoptions.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.
+---
+
+# FileUploadOptions
+
+A `FileUploadOptions` object can be passed to the `FileTransfer`
+object's `upload()` method to specify additional parameters to the
+upload script.
+
+## Properties
+
+- __fileKey__: The name of the form element.  Defaults to `file`. (DOMString)
+
+- __fileName__: The file name to use when saving the file on the server.  Defaults to `image.jpg`. (DOMString)
+
+- __mimeType__: The mime type of the data to upload.  Defaults to `image/jpeg`. (DOMString)
+
+- __params__: A set of optional key/value pairs to pass in the HTTP request. (Object)
+
+- __chunkedMode__: Whether to upload the data in chunked streaming mode. Defaults to `true`. (Boolean)
+
+- __headers__: A map of header name/header values. Use an array to specify more than one value. (Object)
+
+## Description
+
+A `FileUploadOptions` object can be passed to the `FileTransfer`
+object's `upload()` method to specify additional parameters to the
+upload script.
+
+## WP7 Quirk
+
+- __chunkedMode__: Ignored on WP7.
diff --git a/docs/en/3.2.0/cordova/file/fileuploadresult/fileuploadresult.md b/docs/en/3.2.0/cordova/file/fileuploadresult/fileuploadresult.md
new file mode 100644
index 0000000..0972856
--- /dev/null
+++ b/docs/en/3.2.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 passed to the success callback of the
+`FileTransfer` object's `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` object's `upload()` method.
+
+## iOS Quirks
+
+- Does not support `responseCode` or `bytesSent`.
diff --git a/docs/en/3.2.0/cordova/file/filewriter/filewriter.md b/docs/en/3.2.0/cordova/file/filewriter/filewriter.md
new file mode 100644
index 0000000..29ecf2b
--- /dev/null
+++ b/docs/en/3.2.0/cordova/file/filewriter/filewriter.md
@@ -0,0 +1,235 @@
+---
+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
+
+As object that allows you to create and write data to a file.
+
+## Properties
+
+- __readyState__: One of the three possible states, either `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)_
+
+- __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)_
+
+The following property is _not_ supported:
+
+- __onprogress__: Called while writing the file, reporting progress in terms of `progress.loaded`/`progress.total`. _(Function)_
+## Methods
+
+- __abort__: Aborts writing the file.
+
+- __seek__: Moves the file pointer to the specified byte.
+
+- __truncate__: Shortens the file to the specified length.
+
+- __write__: Writes data to the file.
+
+## Details
+
+The `FileWriter` object offers a way to write UTF-8 encoded files to
+the device file system.  Applications respond to `writestart`,
+`progress`, `write`, `writeend`, `error`, and `abort` events.
+
+Each `FileWriter` corresponds to a single file, to which data can be
+written many times.  The `FileWriter` maintains the file's `position`
+and `length` attributes, which allow the app to `seek` and `write`
+anywhere in the file. By default, the `FileWriter` writes to the
+beginning of the file, overwriting existing data. Set the optional
+`append` boolean to `true` in the `FileWriter`'s constructor to
+write to the end of the file.
+
+Text data is supported by all platforms listed below. Text is encoded as UTF-8 before being written to the filesystem. Some platforms also support binary data, which can be passed in as either an ArrayBuffer or a Blob.
+
+## Supported Platforms
+
+Text and Binary Support:
+
+- Amazon Fire OS
+- Android
+- iOS
+
+Text-only Support:
+
+- BlackBerry WebWorks 5.0+
+- Windows Phone 7 and 8
+- Windows 8
+
+## 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);
+
+## Binary Write Quick Example
+
+    function win(writer) {
+        var data = new ArrayBuffer(5),
+            dataView = new Int8Array(data);
+        for (i=0; i < 5; i++) {
+            dataView[i] = i;
+        }
+        writer.onwrite = function(evt) {
+            console.log("write success");
+        };
+        writer.write(data);
+    };
+
+    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.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for device API libraries to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        // device APIs are available
+        //
+        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/3.2.0/cordova/file/flags/flags.md b/docs/en/3.2.0/cordova/file/flags/flags.md
new file mode 100644
index 0000000..186ff11
--- /dev/null
+++ b/docs/en/3.2.0/cordova/file/flags/flags.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.
+---
+
+# Flags
+
+Supplies arguments to the `DirectoryEntry` object's `getFile()` and
+`getDirectory()` methods, which look up or create files and
+directories, respectively.
+
+## Properties
+
+- __create__: Indicates that the file or directory should be created if it does not already exist. _(boolean)_
+
+- __exclusive__: Has has no effect by itself, but when used with `create` causes the file or directory creation to fail if the target path already exists. _(boolean)_
+
+## Supported Platforms
+
+- Amazon Fire OS
+- Android
+- BlackBerry WebWorks 5.0+
+- iOS
+- Windows Phone 7 and 8
+- Windows 8
+
+## 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/3.2.0/cordova/file/localfilesystem/localfilesystem.md b/docs/en/3.2.0/cordova/file/localfilesystem/localfilesystem.md
new file mode 100644
index 0000000..a0ce6fe
--- /dev/null
+++ b/docs/en/3.2.0/cordova/file/localfilesystem/localfilesystem.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.
+---
+
+# 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
+
+- Amazon Fire OS
+- Android
+- BlackBerry WebWorks 5.0+
+- iOS
+- Windows Phone 7 and 8
+- Windows 8
+
+## 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.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for device API libraries to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        // device APIs are available
+        //
+        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(error) {
+            console.log(error.code);
+        }
+
+        </script>
+      </head>
+      <body>
+        <h1>Example</h1>
+        <p>Local File System</p>
+      </body>
+    </html>
+
+# requestFileSystem
+
+> Request a file system in which to store application data.
+
+     window.requestFileSystem(type, size, successCallback, errorCallback)
+
+- __window__: reference to the global window object
+- __type__: local file system type, see LocalFileSystem Constants
+- __size__: indicates how much storage space, in bytes, the application expects to need
+- __successCallback__: invoked with a FileSystem object
+- __errorCallback__:  invoked if error occurs retrieving file system
+
+## Request File System Quick Example
+
+    function onSuccess(fileSystem) {
+        console.log(fileSystem.name);
+    }
+
+    // request the persistent file system
+    window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, onSuccess, onError);
diff --git a/docs/en/3.2.0/cordova/file/metadata/metadata.md b/docs/en/3.2.0/cordova/file/metadata/metadata.md
new file mode 100644
index 0000000..480a716
--- /dev/null
+++ b/docs/en/3.2.0/cordova/file/metadata/metadata.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.
+---
+
+# Metadata
+
+An interface that supplies information about the state of a file or directory.
+
+## Properties
+
+- __modificationTime__: The time when the file or directory was last modified. _(Date)_
+
+## Details
+
+The `Metadata` object represents information about the state of a file
+or directory.  Calling a `DirectoryEntry` or `FileEntry` object's
+`getMetadata()` method results in a `Metadata` instance.
+
+## Supported Platforms
+
+- Amazon Fire OS
+- Android
+- BlackBerry WebWorks 5.0+
+- iOS
+- Windows Phone 7 and 8
+- Windows 8
+
+## Quick Example
+
+    function win(metadata) {
+        console.log("Last Modified: " + metadata.modificationTime);
+    }
+
+    // Request the metadata object for this entry
+    entry.getMetadata(win, null);
diff --git a/docs/en/3.2.0/cordova/geolocation/Coordinates/coordinates.md b/docs/en/3.2.0/cordova/geolocation/Coordinates/coordinates.md
new file mode 100644
index 0000000..364f18f
--- /dev/null
+++ b/docs/en/3.2.0/cordova/geolocation/Coordinates/coordinates.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.
+---
+
+# 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 attached to the `Position` object that is
+available to callback functions in requests for the current position.
+
+## Supported Platforms
+
+- Amazon Fire OS
+- Android
+- BlackBerry WebWorks 5.0+
+- iOS
+- Tizen
+- Windows Phone 7 and 8
+- Windows 8
+
+## 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.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // wait for device API libraries to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        // device APIs are available
+        //
+        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>
+
+##  Amazon Fire OS Quirks
+
+__altitudeAccuracy__: Not supported by Android devices, returning `null`.
+
+## Android Quirks
+
+__altitudeAccuracy__: Not supported by Android devices, returning `null`.
diff --git a/docs/en/3.2.0/cordova/geolocation/Position/position.md b/docs/en/3.2.0/cordova/geolocation/Position/position.md
new file mode 100644
index 0000000..804e0a4
--- /dev/null
+++ b/docs/en/3.2.0/cordova/geolocation/Position/position.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.
+---
+
+# 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
+
+- Amazon Fire OS
+- Android
+- BlackBerry WebWorks 5.0+
+- iOS
+- Tizen
+- Windows Phone 7 and 8
+- Windows 8
+
+## 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.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for device API libraries to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        // device APIs are available
+        //
+        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/3.2.0/cordova/geolocation/PositionError/positionError.md b/docs/en/3.2.0/cordova/geolocation/PositionError/positionError.md
new file mode 100755
index 0000000..e53eef8
--- /dev/null
+++ b/docs/en/3.2.0/cordova/geolocation/PositionError/positionError.md
@@ -0,0 +1,54 @@
+---
+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 passed 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 passed to the `geolocationError`
+callback function when an error occurs with geolocation. It features
+the following error codes:
+
+- `PositionError.PERMISSION_DENIED`: Returned when users do not allow
+  the app to retrieve position information. This is dependent on the
+  platform.
+
+- `PositionError.POSITION_UNAVAILABLE`: Returned when the device is
+  unable to retrieve a position. In general, this means the device is
+  not connected to a network or can't get a satellite fix.
+
+- `PositionError.TIMEOUT`: Returned when the device is unable to
+  retrieve a position within the time specified by the `timeout`
+  included in `geolocationOptions`. When used with
+  `geolocation.watchPosition`, this error could be repeatedly passed
+  to the `geolocationError` callback every `timeout` milliseconds.
diff --git a/docs/en/3.2.0/cordova/geolocation/geolocation.clearWatch.md b/docs/en/3.2.0/cordova/geolocation/geolocation.clearWatch.md
new file mode 100644
index 0000000..fe4d5e2
--- /dev/null
+++ b/docs/en/3.2.0/cordova/geolocation/geolocation.clearWatch.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.
+---
+
+# 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
+
+The `geolocation.clearWatch` stops watching changes to the device's
+location by clearing the `geolocation.watchPosition` referenced by
+`watchID`.
+
+## Supported Platforms
+
+- Amazon Fire OS
+- Android
+- BlackBerry WebWorks 5.0+
+- iOS
+- Tizen
+- Windows Phone 7 and 8
+- Windows 8
+
+## 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.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for device API libraries to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        var watchID = null;
+
+        // device APIs are available
+        //
+        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/3.2.0/cordova/geolocation/geolocation.getCurrentPosition.md b/docs/en/3.2.0/cordova/geolocation/geolocation.getCurrentPosition.md
new file mode 100644
index 0000000..173bfb4
--- /dev/null
+++ b/docs/en/3.2.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 passed the current position.
+
+- __geolocationError__: _(Optional)_ The callback that executes if an error occurs.
+
+- __geolocationOptions__: _(Optional)_ The geolocation options.
+
+## Description
+
+`geolocation.getCurrentPosition` 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 passed a
+`PositionError` object.
+
+## Supported Platforms
+
+- Amazon Fire OS
+- Android
+- BlackBerry WebWorks 5.0+
+- iOS
+- Tizen
+- Windows Phone 7 and 8
+- Windows 8
+
+## 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.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for device API libraries to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        // device APIs are available
+        //
+        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/3.2.0/cordova/geolocation/geolocation.md b/docs/en/3.2.0/cordova/geolocation/geolocation.md
new file mode 100644
index 0000000..9b60832
--- /dev/null
+++ b/docs/en/3.2.0/cordova/geolocation/geolocation.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.
+---
+
+# Geolocation
+
+> The `geolocation` object provides access to location data based on the device's GPS sensor or inferred from network signals.
+
+`Geolocation` provides information about the device's location, 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. There is no guarantee 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),
+and only executes on devices that don't already provide an implementation.
+
+__WARNING__: Collection and use of geolocation data
+raises important privacy issues.  Your app's privacy policy should
+discuss how the app uses geolocation data, whether it is shared with
+any other parties, and the level of precision of the data (for
+example, coarse, fine, ZIP code level, etc.).  Geolocation data is
+generally considered sensitive because it can reveal user's
+whereabouts and, if stored, the history of their travels.
+Therefore, in addition to the app's privacy policy, you should
+strongly consider providing a just-in-time notice before the app
+accesses geolocation data (if the device operating system doesn't do
+so already).  That notice should provide the same information noted
+above, as well as obtaining the user's permission (e.g., by presenting
+choices for __OK__ and __No Thanks__).  For more information, please
+see the Privacy Guide.
+
+## Methods
+
+- geolocation.getCurrentPosition
+- geolocation.watchPosition
+- geolocation.clearWatch
+
+## Arguments
+
+- geolocationSuccess
+- geolocationError
+- geolocationOptions
+
+## Objects (Read-Only)
+
+- Position
+- PositionError
+- Coordinates
+
+## Accessing the Feature
+
+As of version 3.0, Cordova implements device-level APIs as _plugins_.
+Use the CLI's `plugin` command, described in The Command-Line
+Interface, to add or remove this feature for a project:
+
+        $ cordova plugin add org.apache.cordova.geolocation
+        $ cordova plugin ls
+        [ 'org.apache.cordova.geolocation' ]
+        $ cordova plugin rm org.apache.cordova.geolocation
+
+These commands apply to all targeted platforms, but modify the
+platform-specific configuration settings described below:
+
+* Amazon Fire OS
+
+        (in app/res/xml/config.xml)
+        <feature name="Geolocation">
+            <param name="android-package" value="org.apache.cordova.geolocation.GeoBroker" />
+        </feature>
+
+        (in app/AndroidManifest.xml)
+        <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
+        <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
+
+* Android
+
+        (in app/res/xml/config.xml)
+        <feature name="Geolocation">
+            <param name="android-package" value="org.apache.cordova.geolocation.GeoBroker" />
+        </feature>
+
+        (in app/AndroidManifest.xml)
+        <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
+        <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
+
+* BlackBerry WebWorks
+
+        (in www/plugins.xml)
+        <feature name="Geolocation">
+            <param name="blackberry-package" value="org.apache.cordova.geolocation.Geolocation" />
+        </feature>
+
+        (in www/config.xml)
+        <rim:permissions>
+            <rim:permit>read_geolocation</rim:permit>
+        </rim:permissions>
+
+* FirefoxOS (in the manifest.webapp file)
+
+        "permissions": {
+            "geolocation": { "description": "Used to position the map to your current position" }
+        }
+
+* iOS (in the named application directory's `config.xml`)
+
+        <feature name="Geolocation">
+            <param name="ios-package" value="CDVLocation" />
+        </feature>
+
+* Windows Phone (in `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)
+
+Some platforms may support this feature without requiring any special
+configuration.  See Platform Support for an overview.
diff --git a/docs/en/3.2.0/cordova/geolocation/geolocation.watchPosition.md b/docs/en/3.2.0/cordova/geolocation/geolocation.watchPosition.md
new file mode 100644
index 0000000..1481dab
--- /dev/null
+++ b/docs/en/3.2.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 passed the current position.
+
+- __geolocationError__: (Optional) The callback that executes if an error occurs.
+
+- __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 is detected.
+When the device retrieves a new location, the `geolocationSuccess`
+callback executes with a `Position` object as the parameter.  If
+there is an error, the `geolocationError` callback executes with a
+`PositionError` object as the parameter.
+
+## Supported Platforms
+
+- Amazon Fire OS
+- Android
+- BlackBerry WebWorks 5.0+
+- iOS
+- Tizen
+- Windows Phone 7 and 8
+- Windows 8
+
+## 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.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for device API libraries to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        var watchID = null;
+
+        // device APIs are available
+        //
+        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/3.2.0/cordova/geolocation/parameters/geolocation.options.md b/docs/en/3.2.0/cordova/geolocation/parameters/geolocation.options.md
new file mode 100644
index 0000000..b338e08
--- /dev/null
+++ b/docs/en/3.2.0/cordova/geolocation/parameters/geolocation.options.md
@@ -0,0 +1,38 @@
+---
+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 needs the best possible results. By default, the device attempts 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 executes. If the `geolocationSuccess` callback is not invoked within this time, the `geolocationError` callback is passed a `PositionError.TIMEOUT` error code. (Note that 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
+
+Android 2.x emulators do not return a geolocation result unless the `enableHighAccuracy` option is set to `true`.
+
diff --git a/docs/en/3.2.0/cordova/geolocation/parameters/geolocationError.md b/docs/en/3.2.0/cordova/geolocation/parameters/geolocationError.md
new file mode 100644
index 0000000..c968208
--- /dev/null
+++ b/docs/en/3.2.0/cordova/geolocation/parameters/geolocationError.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.
+---
+
+# geolocationError
+
+The user's callback function that executes 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/3.2.0/cordova/geolocation/parameters/geolocationSuccess.md b/docs/en/3.2.0/cordova/geolocation/parameters/geolocationSuccess.md
new file mode 100644
index 0000000..116b493
--- /dev/null
+++ b/docs/en/3.2.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 executes when a geolocation position
+becomes available (when called from `geolocation.getCurrentPosition`),
+or when the position changes (when called from
+`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/3.2.0/cordova/globalization/GlobalizationError/globalizationerror.md b/docs/en/3.2.0/cordova/globalization/GlobalizationError/globalizationerror.md
new file mode 100644
index 0000000..ecf18d8
--- /dev/null
+++ b/docs/en/3.2.0/cordova/globalization/GlobalizationError/globalizationerror.md
@@ -0,0 +1,89 @@
+---
+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.
+---
+
+# GlobalizationError
+
+An object representing a error from the Globalization API.
+
+## Properties
+
+- __code__:  One of the following codes representing the error type _(Number)_
+  - GlobalizationError.UNKNOWN\_ERROR: 0
+  - GlobalizationError.FORMATTING\_ERROR: 1
+  - GlobalizationError.PARSING\_ERROR: 2
+  - GlobalizationError.PATTERN\_ERROR: 3
+- __message__:  A text message that includes the error's explanation and/or details _(String)_
+
+## Description
+
+This object is created and populated by Cordova, and returned to a callback in the case of an error.
+
+## Supported Platforms
+
+- Amazon Fire OS
+- Android
+- BlackBerry WebWorks 5.0+
+- iOS
+
+## Quick Example
+
+When the following error callback executes, it displays a
+popup dialog with the text similar to `code: 3` and `message:`
+
+    function errorCallback(error) {
+        alert('code: ' + error.code + '\n' +
+              'message: ' + error.message + '\n');
+    };
+
+## Full Example
+
+    <!DOCTYPE HTML>
+    <html>
+      <head>
+        <title>GlobalizationError Example</title>
+        <script type="text/javascript" charset="utf-8" src="cordova.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        function successCallback(date) {
+          alert('month:' + date.month +
+                ' day:' + date.day +
+                ' year:' + date.year + '\n');
+        }
+
+        function errorCallback(error) {
+          alert('code: ' + error.code + '\n' +
+                'message: ' + error.message + '\n');
+        };
+
+        function checkError() {
+          navigator.globalization.stringToDate(
+            'notADate',
+            successCallback,
+            errorCallback,
+            {selector:'foobar'}
+          );
+        }
+
+        </script>
+      </head>
+      <body>
+        <button onclick="checkError()">Click for error</button>
+      </body>
+    </html>
+
diff --git a/docs/en/3.2.0/cordova/globalization/globalization.dateToString.md b/docs/en/3.2.0/cordova/globalization/globalization.dateToString.md
new file mode 100644
index 0000000..7052fb0
--- /dev/null
+++ b/docs/en/3.2.0/cordova/globalization/globalization.dateToString.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.
+---
+
+# globalization.dateToString
+
+Returns a date formatted as a string according to the client's locale and timezone.
+
+    navigator.globalization.dateToString(date, successCallback, errorCallback, options);
+
+## Description
+
+Returns the formatted date `String` via a `value` property accessible
+from the object passed as a parameter to the `successCallback`.
+
+The inbound `date` parameter should be of type `Date`.
+
+If there is an error formatting the date, then the `errorCallback`
+executes with a `GlobalizationError` object as a parameter. The
+error's expected code is `GlobalizationError.FORMATTING\_ERROR`.
+
+The `options` parameter is optional, and its default values are:
+
+    {formatLength:'short', selector:'date and time'}
+
+The `options.formatLength` can be `short`, `medium`, `long`, or `full`.
+
+The `options.selector` can be `date`, `time` or `date and time`.
+
+## Supported Platforms
+
+- Amazon Fire OS
+- Android
+- BlackBerry WebWorks 5.0+
+- iOS
+- Windows Phone 8
+
+## Quick Example
+
+If the browser is set to the `en\_US` locale, this displays a popup
+dialog with text similar to `date: 9/25/2012 4:21PM` using the default
+options:
+
+    navigator.globalization.dateToString(
+        new Date(),
+        function (date) { alert('date: ' + date.value + '\n'); },
+        function () { alert('Error getting dateString\n'); },
+        { formatLength: 'short', selector: 'date and time' }
+    );
+
+## Full Example
+
+    <!DOCTYPE HTML>
+    <html>
+      <head>
+        <title>dateToString Example</title>
+        <script type="text/javascript" charset="utf-8" src="cordova.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        function checkDateString() {
+          navigator.globalization.dateToString(
+            new Date(),
+            function (date) {alert('date: ' + date.value + '\n');},
+            function () {alert('Error getting dateString\n');,
+            {formatLength:'short', selector:'date and time'}}
+          );
+        }
+        </script>
+      </head>
+      <body>
+        <button onclick="checkDateString()">Click for date string</button>
+      </body>
+    </html>
+
+## Windows Phone 8 Quirks
+
+- The `formatLength` option supports only `short` and `full` values.
diff --git a/docs/en/3.2.0/cordova/globalization/globalization.getCurrencyPattern.md b/docs/en/3.2.0/cordova/globalization/globalization.getCurrencyPattern.md
new file mode 100644
index 0000000..ff0b72a
--- /dev/null
+++ b/docs/en/3.2.0/cordova/globalization/globalization.getCurrencyPattern.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.
+---
+
+# globalization.getCurrencyPattern
+
+Returns a pattern string to format and parse currency values according
+to the client's user preferences and ISO 4217 currency code.
+
+     navigator.globalization.getCurrencyPattern(currencyCode, successCallback, errorCallback);
+
+## Description
+
+Returns the pattern to the `successCallback` with a `properties` object
+as a parameter. That object should contain the following properties:
+
+- __pattern__: The currency pattern to format and parse currency values.  The patterns follow [Unicode Technical Standard #35](http://unicode.org/reports/tr35/tr35-4.html). _(String)_
+
+- __code__: The ISO 4217 currency code for the pattern. _(String)_
+
+- __fraction__: The number of fractional digits to use when parsing and formatting currency. _(Number)_
+
+- __rounding__: The rounding increment to use when parsing and formatting. _(Number)_
+
+- __decimal__: The decimal symbol to use for parsing and formatting. _(String)_
+
+- __grouping__: The grouping symbol to use for parsing and formatting. _(String)_
+
+The inbound `currencyCode` parameter should be a `String` of one of
+the ISO 4217 currency codes, for example 'USD'.
+
+If there is an error obtaining the pattern, then the `errorCallback`
+executes with a `GlobalizationError` object as a parameter. The
+error's expected code is `GlobalizationError.FORMATTING\_ERROR`.
+
+## Supported Platforms
+
+- Amazon Fire OS
+- Android
+- BlackBerry WebWorks 5.0+
+- iOS
+
+## Quick Example
+
+When the browser is set to the `en\_US` locale and the selected
+currency is United States Dollars, this example displays a popup
+dialog with text similar to the results that follow:
+
+    navigator.globalization.getCurrencyPattern(
+        'USD',
+        function (pattern) {
+            alert('pattern: '  + pattern.pattern  + '\n' +
+                  'code: '     + pattern.code     + '\n' +
+                  'fraction: ' + pattern.fraction + '\n' +
+                  'rounding: ' + pattern.rounding + '\n' +
+                  'decimal: '  + pattern.decimal  + '\n' +
+                  'grouping: ' + pattern.grouping);
+        },
+        function () { alert('Error getting pattern\n'); }
+    );
+
+Expected result:
+
+    pattern: $#,##0.##;($#,##0.##)
+    code: USD
+    fraction: 2
+    rounding: 0
+    decimal: .
+    grouping: ,
+
+## Full Example
+
+    <!DOCTYPE HTML>
+    <html>
+      <head>
+        <title>getCurrencyPattern Example</title>
+        <script type="text/javascript" charset="utf-8" src="cordova.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        function checkPattern() {
+          navigator.globalization.getCurrencyPattern(
+            'USD',
+            function (pattern) {alert('pattern: '  + pattern.pattern  + '\n' +
+                                      'code: '     + pattern.code     + '\n' +
+                                      'fraction: ' + pattern.fraction + '\n' +
+                                      'rounding: ' + pattern.rounding + '\n' +
+                                      'decimal: '  + pattern.decimal  + '\n' +
+                                      'grouping: ' + pattern.grouping);},
+            function () {alert('Error getting pattern\n');}
+          );
+        }
+
+        </script>
+      </head>
+      <body>
+        <button onclick="checkPattern()">Click for pattern</button>
+      </body>
+    </html>
diff --git a/docs/en/3.2.0/cordova/globalization/globalization.getDateNames.md b/docs/en/3.2.0/cordova/globalization/globalization.getDateNames.md
new file mode 100644
index 0000000..c062ac2
--- /dev/null
+++ b/docs/en/3.2.0/cordova/globalization/globalization.getDateNames.md
@@ -0,0 +1,98 @@
+---
+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.
+---
+
+# globalization.getDateNames
+
+Returns an array of the names of the months or days of the week,
+depending on the client's user preferences and calendar.
+
+    navigator.globalization.getDateNames(successCallback, errorCallback, options);
+
+## Description
+
+Returns the array of names to the `successCallback` with a
+`properties` object as a parameter. That object contains a `value`
+property with an `Array` of `String` values. The array features names
+starting from either the first month in the year or the first day of
+the week, depending on the option selected.
+
+If there is an error obtaining the names, then the `errorCallback`
+executes with a `GlobalizationError` object as a parameter. The
+error's expected code is `GlobalizationError.UNKNOWN\_ERROR`.
+
+The `options` parameter is optional, and its default values are:
+
+    {type:'wide', item:'months'}
+
+The value of `options.type` can be `narrow` or `wide`.
+
+The value of `options.item` can be `months` or `days`.
+
+## Supported Platforms
+
+- Amazon Fire OS
+- Android
+- BlackBerry WebWorks 5.0+
+- iOS
+- Windows Phone 8
+
+## Quick Example
+
+When the browser is set to the `en\_US` locale, this example displays
+a series of twelve popup dialogs, one per month, with text similar to
+`month: January`:
+
+    navigator.globalization.getDateNames(
+        function (names) {
+            for (var i = 0; i < names.value.length; i++) {
+                alert('month: ' + names.value[i] + '\n');
+            }
+        },
+        function () { alert('Error getting names\n'); },
+        { type: 'wide', item: 'months' }
+    );
+
+## Full Example
+
+    <!DOCTYPE HTML>
+    <html>
+      <head>
+        <title>getDateNames Example</title>
+        <script type="text/javascript" charset="utf-8" src="cordova.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        function checkDateNames() {
+          navigator.globalization.getDateNames(
+            function (names) {
+              for (var i=0; i<names.value.length; i++) {
+                alert('month: ' + names.value[i] + '\n');
+              }
+            },
+            function () {alert('Error getting names\n');},
+            {type:'wide', item:'months'}
+          );
+        }
+
+        </script>
+      </head>
+      <body>
+        <button onclick="checkDateNames()">Click for date names</button>
+      </body>
+    </html>
+
diff --git a/docs/en/3.2.0/cordova/globalization/globalization.getDatePattern.md b/docs/en/3.2.0/cordova/globalization/globalization.getDatePattern.md
new file mode 100644
index 0000000..06e468f
--- /dev/null
+++ b/docs/en/3.2.0/cordova/globalization/globalization.getDatePattern.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.
+---
+
+# globalization.getDatePattern
+
+Returns a pattern string to format and parse dates according to the
+client's user preferences.
+
+    navigator.globalization.getDatePattern(successCallback, errorCallback, options);
+
+## Description
+
+Returns the pattern to the `successCallback`. The object passed in as
+a parameter contains the following properties:
+
+- __pattern__: The date and time pattern to format and parse dates. The patterns follow [Unicode Technical Standard #35](http://unicode.org/reports/tr35/tr35-4.html). _(String)_
+
+- __timezone__: The abbreviated name of the time zone on the client. _(String)_
+
+- __utc\_offset__: The current difference in seconds between the client's time zone and coordinated universal time. _(Number)_
+
+- __dst\_offset__: The current daylight saving time offset in seconds between the client's non-daylight saving's time zone and the client's daylight saving's time zone. _(Number)_
+
+If there is an error obtaining the pattern, the `errorCallback`
+executes with a `GlobalizationError` object as a parameter. The
+error's expected code is `GlobalizationError.PATTERN\_ERROR`.
+
+The `options` parameter is optional, and defaults to the following values:
+
+    {formatLength:'short', selector:'date and time'}
+
+The `options.formatLength` can be `short`, `medium`, `long`, or
+`full`.  The `options.selector` can be `date`, `time` or `date and
+time`.
+
+## Supported Platforms
+
+- Amazon Fire OS
+- Android
+- BlackBerry WebWorks 5.0+
+- iOS
+- Windows Phone 8
+
+## Quick Example
+
+When the browser is set to the `en\_US` locale, this example displays
+a popup dialog with text such as `pattern: M/d/yyyy h:mm a`:
+
+    function checkDatePattern() {
+        navigator.globalization.getDatePattern(
+            function (date) { alert('pattern: ' + date.pattern + '\n'); },
+            function () { alert('Error getting pattern\n'); },
+            { formatLength: 'short', selector: 'date and time' }
+        );
+    }
+
+## Full Example
+
+    <!DOCTYPE HTML>
+    <html>
+      <head>
+        <title>getDatePattern Example</title>
+        <script type="text/javascript" charset="utf-8" src="cordova.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        function checkDatePattern() {
+          navigator.globalization.getDatePattern(
+            function (date) {alert('pattern: ' + date.pattern + '\n');},
+            function () {alert('Error getting pattern\n');},
+            {formatLength:'short', selector:'date and time'}
+          );
+        }
+
+        </script>
+      </head>
+      <body>
+        <button onclick="checkDatePattern()">Click for pattern</button>
+      </body>
+    </html>
+
+## Windows Phone 8 Quirks
+
+- The `formatLength` supports only `short` and `full` values.
+
+- The `pattern` for `date and time` pattern returns only full datetime format.
+
+- The `timezone` returns the full time zone name.
+
+- The `dst_offset` property is not supported, and always returns zero.
+
diff --git a/docs/en/3.2.0/cordova/globalization/globalization.getFirstDayOfWeek.md b/docs/en/3.2.0/cordova/globalization/globalization.getFirstDayOfWeek.md
new file mode 100644
index 0000000..6cbe5dc
--- /dev/null
+++ b/docs/en/3.2.0/cordova/globalization/globalization.getFirstDayOfWeek.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.
+---
+
+# globalization.getFirstDayOfWeek
+
+Returns the first day of the week according to the client's user
+preferences and calendar.
+
+    navigator.globalization.getFirstDayOfWeek(successCallback, errorCallback);
+
+## Description
+
+The days of the week are numbered starting from 1, where 1 is assumed
+to be Sunday.  Returns the day to the `successCallback` with a
+`properties` object as a parameter. That object should have a `value`
+property with a `Number` value.
+
+If there is an error obtaining the pattern, then the `errorCallback`
+executes with a `GlobalizationError` object as a parameter. The
+error's expected code is `GlobalizationError.UNKNOWN\_ERROR`.
+
+## Supported Platforms
+
+- Amazon Fire OS
+- Android
+- BlackBerry WebWorks 5.0+
+- iOS
+- Windows Phone 8
+
+## Quick Example
+
+When the browser is set to the `en\_US` locale, this displays a
+popup dialog with text similar to `day: 1`.
+
+    navigator.globalization.getFirstDayOfWeek(
+        function (day) {alert('day: ' + day.value + '\n');},
+        function () {alert('Error getting day\n');}
+    );
+
+## Full Example
+
+    <!DOCTYPE HTML>
+    <html>
+      <head>
+        <title>getFirstDayOfWeek Example</title>
+        <script type="text/javascript" charset="utf-8" src="cordova.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        function checkFirstDay() {
+          navigator.globalization.getFirstDayOfWeek(
+            function (day) {alert('day: ' + day.value + '\n');},
+            function () {alert('Error getting day\n');}
+          );
+        }
+
+        </script>
+      </head>
+      <body>
+        <button onclick="checkFirstDay()">Click for first day of week</button>
+      </body>
+    </html>
+
diff --git a/docs/en/3.2.0/cordova/globalization/globalization.getLocaleName.md b/docs/en/3.2.0/cordova/globalization/globalization.getLocaleName.md
new file mode 100644
index 0000000..1f2bee9
--- /dev/null
+++ b/docs/en/3.2.0/cordova/globalization/globalization.getLocaleName.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.
+---
+
+# globalization.getLocaleName
+
+Get the string identifier for the client's current locale setting.
+
+    navigator.globalization.getLocaleName(successCallback, errorCallback);
+
+## Description
+
+Returns the locale identifier string to the `successCallback` with a
+`properties` object as a parameter. That object should have a `value`
+property with a `String` value.
+
+If there is an error getting the locale, then the `errorCallback`
+executes with a `GlobalizationError` object as a parameter. The
+error's expected code is `GlobalizationError.UNKNOWN\_ERROR`.
+
+## Supported Platforms
+
+- Amazon Fire OS
+- Android
+- BlackBerry WebWorks 5.0+
+- iOS
+- Windows Phone 8
+
+## Quick Example
+
+When the browser is set to the `en\_US` locale, this displays a popup
+dialog with the text `locale: en\_US`.
+
+    navigator.globalization.getLocaleName(
+        function (locale) {alert('locale: ' + locale.value + '\n');},
+        function () {alert('Error getting locale\n');}
+    );
+
+## Full Example
+
+    <!DOCTYPE HTML>
+    <html>
+      <head>
+        <title>getLocaleName Example</title>
+        <script type="text/javascript" charset="utf-8" src="cordova.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        function checkLocale() {
+          navigator.globalization.getLocaleName(
+            function (locale) {alert('locale: ' + locale.value + '\n');},
+            function () {alert('Error getting locale\n');}
+          );
+        }
+        </script>
+      </head>
+      <body>
+        <button onclick="checkLocale()">Click for locale</button>
+      </body>
+    </html>
+
+## Windows Phone 8 Quirks
+
+- Returns the two-letter code defined in ISO 3166 for the current country/region.
diff --git a/docs/en/3.2.0/cordova/globalization/globalization.getNumberPattern.md b/docs/en/3.2.0/cordova/globalization/globalization.getNumberPattern.md
new file mode 100644
index 0000000..80ce132
--- /dev/null
+++ b/docs/en/3.2.0/cordova/globalization/globalization.getNumberPattern.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.
+---
+
+# globalization.getNumberPattern
+
+Returns a pattern string to format and parse numbers according to the client's user preferences.
+
+    navigator.globalization.getNumberPattern(successCallback, errorCallback, options);
+
+## Description
+
+Returns the pattern to the `successCallback` with a `properties` object
+as a parameter. That object contains the following properties:
+
+- __pattern__: The number pattern to format and parse numbers.  The patterns follow [Unicode Technical Standard #35](http://unicode.org/reports/tr35/tr35-4.html). _(String)_
+
+- __symbol__: The symbol to use when formatting and parsing, such as a percent or currency symbol. _(String)_
+
+- __fraction__: The number of fractional digits to use when parsing and formatting numbers. _(Number)_
+
+- __rounding__: The rounding increment to use when parsing and formatting. _(Number)_
+
+- __positive__: The symbol to use for positive numbers when parsing and formatting. _(String)_
+
+- __negative__: The symbol to use for negative numbers when parsing and formatting. _(String)_
+
+- __decimal__: The decimal symbol to use for parsing and formatting. _(String)_
+
+- __grouping__: The grouping symbol to use for parsing and formatting. _(String)_
+
+If there is an error obtaining the pattern, then the `errorCallback`
+executes with a `GlobalizationError` object as a parameter. The
+error's expected code is `GlobalizationError.PATTERN\_ERROR`.
+
+The `options` parameter is optional, and default values are:
+
+    {type:'decimal'}
+
+The `options.type` can be `decimal`, `percent`, or `currency`.
+
+## Supported Platforms
+
+- Amazon Fire OS
+- Android
+- BlackBerry WebWorks 5.0+
+- iOS
+- Windows Phone 8
+
+## Quick Example
+
+When the browser is set to the `en\_US` locale, this should display a
+popup dialog with text similar to the results that follow:
+
+    navigator.globalization.getNumberPattern(
+        function (pattern) {alert('pattern: '  + pattern.pattern  + '\n' +
+                                  'symbol: '   + pattern.symbol   + '\n' +
+                                  'fraction: ' + pattern.fraction + '\n' +
+                                  'rounding: ' + pattern.rounding + '\n' +
+                                  'positive: ' + pattern.positive + '\n' +
+                                  'negative: ' + pattern.negative + '\n' +
+                                  'decimal: '  + pattern.decimal  + '\n' +
+                                  'grouping: ' + pattern.grouping);},
+        function () {alert('Error getting pattern\n');},
+        {type:'decimal'}
+    );
+
+Results:
+
+    pattern: #,##0.###
+    symbol: .
+    fraction: 0
+    rounding: 0
+    positive:
+    negative: -
+    decimal: .
+    grouping: ,
+
+## Full Example
+
+    <!DOCTYPE HTML>
+    <html>
+      <head>
+        <title>getNumberPattern Example</title>
+        <script type="text/javascript" charset="utf-8" src="cordova.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        function checkPattern() {
+          navigator.globalization.getNumberPattern(
+            function (pattern) {alert('pattern: '  + pattern.pattern  + '\n' +
+                                      'symbol: '   + pattern.symbol   + '\n' +
+                                      'fraction: ' + pattern.fraction + '\n' +
+                                      'rounding: ' + pattern.rounding + '\n' +
+                                      'positive: ' + pattern.positive + '\n' +
+                                      'negative: ' + pattern.negative + '\n' +
+                                      'decimal: '  + pattern.decimal  + '\n' +
+                                      'grouping: ' + pattern.grouping);},
+            function () {alert('Error getting pattern\n');},
+            {type:'decimal'}
+          );
+        }
+
+        </script>
+      </head>
+      <body>
+        <button onclick="checkPattern()">Click for pattern</button>
+      </body>
+    </html>
+
+## Windows Phone 8 Quirks
+
+- The `pattern` property is not supported, and retuens an empty string.
+
+- The `fraction` property is not supported, and returns zero.
diff --git a/docs/en/3.2.0/cordova/globalization/globalization.getPreferredLanguage.md b/docs/en/3.2.0/cordova/globalization/globalization.getPreferredLanguage.md
new file mode 100644
index 0000000..6bccdeb
--- /dev/null
+++ b/docs/en/3.2.0/cordova/globalization/globalization.getPreferredLanguage.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.
+---
+
+# globalization.getPreferredLanguage
+
+Get the string identifier for the client's current language.
+
+    navigator.globalization.getPreferredLanguage(successCallback, errorCallback);
+
+## Description
+
+Returns the language identifier string to the `successCallback` with a
+`properties` object as a parameter. That object should have a `value`
+property with a `String` value.
+
+If there is an error getting the language, then the `errorCallback`
+executes with a `GlobalizationError` object as a parameter. The
+error's expected code is `GlobalizationError.UNKNOWN\_ERROR`.
+
+## Supported Platforms
+
+- Amazon Fire OS
+- Android
+- BlackBerry WebWorks 5.0+
+- iOS
+- Windows Phone 8
+
+## Quick Example
+
+When the browser is set to the `en\_US` locale, this should display a
+popup dialog with the text `language: English`:
+
+    navigator.globalization.getPreferredLanguage(
+        function (language) {alert('language: ' + language.value + '\n');},
+        function () {alert('Error getting language\n');}
+    );
+
+## Full Example
+
+    <!DOCTYPE HTML>
+    <html>
+      <head>
+        <title>getPreferredLanguage Example</title>
+        <script type="text/javascript" charset="utf-8" src="cordova.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        function checkLanguage() {
+          navigator.globalization.getPreferredLanguage(
+            function (language) {alert('language: ' + language.value + '\n');},
+            function () {alert('Error getting language\n');}
+          );
+        }
+        </script>
+      </head>
+      <body>
+        <button onclick="checkLanguage()">Click for language</button>
+      </body>
+    </html>
+
+## Windows Phone 8 Quirks
+
+- Returns the ISO 639-1 two-letter code for the current language.
diff --git a/docs/en/3.2.0/cordova/globalization/globalization.isDayLightSavingsTime.md b/docs/en/3.2.0/cordova/globalization/globalization.isDayLightSavingsTime.md
new file mode 100644
index 0000000..0bc5234
--- /dev/null
+++ b/docs/en/3.2.0/cordova/globalization/globalization.isDayLightSavingsTime.md
@@ -0,0 +1,83 @@
+---
+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.
+---
+
+# globalization.isDayLightSavingsTime
+
+Indicates whether daylight savings time is in effect for a given date
+using the client's time zone and calendar.
+
+    navigator.globalization.isDayLightSavingsTime(date, successCallback, errorCallback);
+
+## Description
+
+Indicates whether or not daylight savings time is in effect to the
+`successCallback` with a `properties` object as a parameter. That object
+should have a `dst` property with a `Boolean` value. A `true` value
+indicates that daylight savings time is in effect for the given date,
+and `false` indicates that it is not.
+
+The inbound parameter `date` should be of type `Date`.
+
+If there is an error reading the date, then the `errorCallback`
+executes. The error's expected code is `GlobalizationError.UNKNOWN\_ERROR`.
+
+## Supported Platforms
+
+- Amazon Fire OS
+- Android
+- BlackBerry WebWorks 5.0+
+- iOS
+- Windows Phone 8
+
+## Quick Example
+
+During the summer, and if the browser is set to a DST-enabled
+timezone, this should display a popup dialog with text similar to
+`dst: true`:
+
+    navigator.globalization.isDayLightSavingsTime(
+        new Date(),
+        function (date) {alert('dst: ' + date.dst + '\n');},
+        function () {alert('Error getting names\n');}
+    );
+
+## Full Example
+
+    <!DOCTYPE HTML>
+    <html>
+      <head>
+        <title>isDayLightSavingsTime Example</title>
+        <script type="text/javascript" charset="utf-8" src="cordova.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        function checkDayLightSavings() {
+          navigator.globalization.isDayLightSavingsTime(
+            new Date(),
+            function (date) {alert('dst: ' + date.dst + '\n');},
+            function () {alert('Error getting names\n');}
+          );
+        }
+
+        </script>
+      </head>
+      <body>
+        <button onclick="checkDayLightSavings()">Click for daylight savings</button>
+      </body>
+    </html>
+
diff --git a/docs/en/3.2.0/cordova/globalization/globalization.md b/docs/en/3.2.0/cordova/globalization/globalization.md
new file mode 100644
index 0000000..dc096e6
--- /dev/null
+++ b/docs/en/3.2.0/cordova/globalization/globalization.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.
+---
+
+# Globalization
+
+Obtains information and performs operations specific to the user's
+locale and timezone.
+
+## Objects
+
+- GlobalizationError
+
+## Methods
+
+- globalization.getPreferredLanguage
+- globalization.getLocaleName
+- globalization.dateToString
+- globalization.stringToDate
+- globalization.getDatePattern
+- globalization.getDateNames
+- globalization.isDayLightSavingsTime
+- globalization.getFirstDayOfWeek
+- globalization.numberToString
+- globalization.stringToNumber
+- globalization.getNumberPattern
+- globalization.getCurrencyPattern
+
+## Variable Scope
+
+The `globalization` object is a child of the `navigator` object, and
+therefore has global scope.
+
+    // The global globalization object
+    var globalization = navigator.globalization;
+
+## Accessing the Feature
+
+As of version 3.0, Cordova implements device-level APIs as _plugins_.
+Use the CLI's `plugin` command, described in The Command-Line
+Interface, to add or remove this feature for a project:
+
+        $ cordova plugin add org.apache.cordova.globalization
+        $ cordova plugin ls
+        [ 'org.apache.cordova.globalization' ]
+        $ cordova plugin rm org.apache.cordova.globalization
+
+These commands apply to all targeted platforms, but modify the
+platform-specific configuration settings described below:
+
+* Amazon Fire OS(in `res/xml/config.xml`)
+
+        <feature name="Globalization">
+            <param name="android-package" value="org.apache.cordova.globalization.Globalization" />
+        </feature>
+
+* Android (in `res/xml/config.xml`)
+
+        <feature name="Globalization">
+            <param name="android-package" value="org.apache.cordova.globalization.Globalization" />
+        </feature>
+
+Some platforms may support this feature without requiring any special
+configuration.  See Platform Support for an overview.
diff --git a/docs/en/3.2.0/cordova/globalization/globalization.numberToString.md b/docs/en/3.2.0/cordova/globalization/globalization.numberToString.md
new file mode 100644
index 0000000..d092aa0
--- /dev/null
+++ b/docs/en/3.2.0/cordova/globalization/globalization.numberToString.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.
+---
+
+# globalization.numberToString
+
+Returns a number formatted as a string according to the client's user preferences.
+
+    navigator.globalization.numberToString(number, successCallback, errorCallback, options);
+
+## Description
+
+Returns the formatted number string to the `successCallback` with a
+`properties` object as a parameter. That object should have a `value`
+property with a `String` value.
+
+If there is an error formatting the number, then the `errorCallback`
+executes with a `GlobalizationError` object as a parameter. The
+error's expected code is `GlobalizationError.FORMATTING\_ERROR`.
+
+The `options` parameter is optional, and its default values are:
+
+    {type:'decimal'}
+
+The `options.type` can be 'decimal', 'percent', or 'currency'.
+
+## Supported Platforms
+
+- Amazon Fire OS
+- Android
+- BlackBerry WebWorks 5.0+
+- iOS
+- Windows Phone 8
+
+## Quick Example
+
+When the browser is set to the `en\_US` locale, this displays a popup
+dialog with text similar to `number: 3.142`:
+
+    navigator.globalization.numberToString(
+        3.1415926,
+        function (number) {alert('number: ' + number.value + '\n');},
+        function () {alert('Error getting number\n');},
+        {type:'decimal'}
+    );
+
+## Full Example
+
+    <!DOCTYPE HTML>
+    <html>
+      <head>
+        <title>numberToString Example</title>
+        <script type="text/javascript" charset="utf-8" src="cordova.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        function checkNumber() {
+          navigator.globalization.numberToString(
+            3.1415926,
+            function (number) {alert('number: ' + number.value + '\n');},
+            function () {alert('Error getting number\n');},
+            {type:'decimal'}
+          );
+        }
+
+        </script>
+      </head>
+      <body>
+        <button onclick="checkNumber()">Click for number</button>
+      </body>
+    </html>
+
diff --git a/docs/en/3.2.0/cordova/globalization/globalization.stringToDate.md b/docs/en/3.2.0/cordova/globalization/globalization.stringToDate.md
new file mode 100644
index 0000000..2c094e7
--- /dev/null
+++ b/docs/en/3.2.0/cordova/globalization/globalization.stringToDate.md
@@ -0,0 +1,115 @@
+---
+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.
+---
+
+# globalization.stringToDate
+
+Parses a date formatted as a string, according to the client's user
+preferences and calendar using the time zone of the client, and
+returns the corresponding date object.
+
+    navigator.globalization.stringToDate(dateString, successCallback, errorCallback, options);
+
+## Description
+
+Returns the date to the success callback with a `properties` object as
+a parameter. That object should have the following properties:
+
+- __year__: The four digit year. _(Number)_
+
+- __month__: The month from (0-11). _(Number)_
+
+- __day__: The day from (1-31). _(Number)_
+
+- __hour__: The hour from (0-23). _(Number)_
+
+- __minute__: The minute from (0-59). _(Number)_
+
+- __second__: The second from (0-59). _(Number)_
+
+- __millisecond__: The milliseconds (from 0-999), not available on all platforms. _(Number)_
+
+The inbound `dateString` parameter should be of type `String`.
+
+The `options` parameter is optional, and defaults to the following
+values:
+
+    {formatLength:'short', selector:'date and time'}
+
+The `options.formatLength` can be `short`, `medium`, `long`, or
+`full`.  The `options.selector` can be `date`, `time` or `date and
+time`.
+
+If there is an error parsing the date string, then the `errorCallback`
+executes with a `GlobalizationError` object as a parameter. The
+error's expected code is `GlobalizationError.PARSING\_ERROR`.
+
+## Supported Platforms
+
+- Amazon Fire OS
+- Android
+- BlackBerry WebWorks 5.0+
+- iOS
+- Windows Phone 8
+
+## Quick Example
+
+When the browser is set to the `en\_US` locale, this displays a
+popup dialog with text similar to `month:8 day:25 year:2012`. Note
+that the month integer is one less than the string, as the month
+integer represents an array index.
+
+    navigator.globalization.stringToDate(
+        '9/25/2012',
+        function (date) {alert('month:' + date.month +
+                               ' day:'  + date.day   +
+                               ' year:' + date.year  + '\n');},
+        function () {alert('Error getting date\n');},
+        {selector: 'date'}
+    );
+
+## Full Example
+
+    <!DOCTYPE HTML>
+    <html>
+      <head>
+        <title>stringToDate Example</title>
+        <script type="text/javascript" charset="utf-8" src="cordova.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        function checkStringDate() {
+          navigator.globalization.stringToDate(
+            '9/25/2012',
+            function (date) {alert('month:' + date.month +
+                                   ' day:' + date.day +
+                                   ' year:' + date.year + '\n');},
+            function () {alert('Error getting date\n');},
+            {selector:'date'}
+          );
+        }
+
+        </script>
+      </head>
+      <body>
+        <button onclick="checkStringDate()">Click for parsed date</button>
+      </body>
+    </html>
+
+## Windows Phone 8 Quirks
+
+- The `formatLength` option supports only `short` and `full` values.
diff --git a/docs/en/3.2.0/cordova/globalization/globalization.stringToNumber.md b/docs/en/3.2.0/cordova/globalization/globalization.stringToNumber.md
new file mode 100644
index 0000000..ef18faa
--- /dev/null
+++ b/docs/en/3.2.0/cordova/globalization/globalization.stringToNumber.md
@@ -0,0 +1,89 @@
+---
+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.
+---
+
+# globalization.stringToNumber
+
+Parses a number formatted as a string according to the client's user
+preferences and returns the corresponding number.
+
+    navigator.globalization.stringToNumber(string, successCallback, errorCallback, options);
+
+## Description
+
+Returns the number to the `successCallback` with a `properties` object
+as a parameter. That object should have a `value` property with a
+`Number` value.
+
+If there is an error parsing the number string, then the
+`errorCallback` executes with a `GlobalizationError` object as a
+parameter. The error's expected code is
+`GlobalizationError.PARSING\_ERROR`.
+
+The `options` parameter is optional, and defaults to the following
+values:
+
+    {type:'decimal'}
+
+The `options.type` can be `decimal`, `percent`, or `currency`.
+
+## Supported Platforms
+
+- Amazon Fire OS
+- Android
+- BlackBerry WebWorks 5.0+
+- iOS
+- Windows Phone 8
+
+## Quick Example
+
+When the browser is set to the `en\_US` locale, this should display a
+popup dialog with text similar to `number: 1234.56`:
+
+    navigator.globalization.stringToNumber(
+        '1234.56',
+        function (number) {alert('number: ' + number.value + '\n');},
+        function () {alert('Error getting number\n');},
+        {type:'decimal'}
+    );
+
+## Full Example
+
+    <!DOCTYPE HTML>
+    <html>
+      <head>
+        <title>stringToNumber Example</title>
+        <script type="text/javascript" charset="utf-8" src="cordova.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        function checkNumber() {
+          navigator.globalization.stringToNumber(
+            '1234.56',
+            function (number) {alert('number: ' + number.value + '\n');},
+            function () {alert('Error getting number\n');},
+            {type:'decimal'}
+          );
+        }
+
+        </script>
+      </head>
+      <body>
+        <button onclick="checkNumber()">Click for parsed number</button>
+      </body>
+    </html>
+
diff --git a/docs/en/3.2.0/cordova/inappbrowser/inappbrowser.md b/docs/en/3.2.0/cordova/inappbrowser/inappbrowser.md
new file mode 100644
index 0000000..b313599
--- /dev/null
+++ b/docs/en/3.2.0/cordova/inappbrowser/inappbrowser.md
@@ -0,0 +1,497 @@
+---
+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.
+---
+
+# InAppBrowser
+
+> The `InAppBrowser` is a web browser view that displays when calling `window.open()`, or when opening a link formed as `<a target="_blank">`.
+
+    var ref = window.open('http://apache.org', '_blank', 'location=yes');
+
+__NOTE__: The InAppBrowser window behaves like a standard web browser,
+and can't access Cordova APIs.
+
+## Description
+
+The object returned from a call to `window.open`.
+
+## Methods
+
+- addEventListener
+- removeEventListener
+- close
+- show
+- executeScript
+- insertCSS
+
+## Accessing the Feature
+
+As of version 3.0, Cordova implements device-level APIs as _plugins_.
+Use the CLI's `plugin` command, described in The Command-Line
+Interface, to add or remove this feature for a project:
+
+        $ cordova plugin add org.apache.cordova.inappbrowser
+        $ cordova plugin ls
+        [ 'org.apache.cordova.inappbrowser' ]
+        $ cordova plugin rm org.apache.cordova.inappbrowser
+
+These commands apply to all targeted platforms, but modify the
+platform-specific configuration settings described below:
+
+* Amazon Fire OS (in `res/xml/config.xml`)
+
+        <feature name="InAppBrowser">
+            <param name="android-package" value="org.apache.cordova.inappbrowser.InAppBrowser" />
+        </feature>
+
+* Android (in `res/xml/config.xml`)
+
+        <feature name="InAppBrowser">
+            <param name="android-package" value="org.apache.cordova.inappbrowser.InAppBrowser" />
+        </feature>
+
+* iOS (in the named application directory's `config.xml`)
+
+        <feature name="InAppBrowser">
+            <param name="ios-package" value="CDVInAppBrowser" />
+        </feature>
+
+* Windows Phone 7 and 8 (in `config.xml`)
+
+        <feature name="InAppBrowser" />
+
+Some platforms may support this feature without requiring any special
+configuration.  See Platform Support for an overview.
+
+# addEventListener
+
+> Adds a listener for an event from the `InAppBrowser`.
+
+    ref.addEventListener(eventname, callback);
+
+- __ref__: reference to the `InAppBrowser` window _(InAppBrowser)_
+
+- __eventname__: the event to listen for _(String)_
+
+  - __loadstart__: event fires when the `InAppBrowser` starts to load a URL.
+  - __loadstop__: event fires when the `InAppBrowser` finishes loading a URL.
+  - __loaderror__: event fires when the `InAppBrowser` encounters an error when loading a URL.
+  - __exit__: event fires when the `InAppBrowser` window is closed.
+
+- __callback__: the function that executes when the event fires. The function is passed an `InAppBrowserEvent` object as a parameter.
+
+## Supported Platforms
+
+- Amazon Fire OS
+- Android
+- BlackBerry
+- iOS
+- Windows Phone 7 and 8
+
+## Quick Example
+
+    var ref = window.open('http://apache.org', '_blank', 'location=yes');
+    ref.addEventListener('loadstart', function() { alert(event.url); });
+
+## Full Example
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>InAppBrowser.addEventListener Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for device API libraries to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        // device APIs are available
+        //
+        function onDeviceReady() {
+             var ref = window.open('http://apache.org', '_blank', 'location=yes');
+             ref.addEventListener('loadstart', function(event) { alert('start: ' + event.url); });
+             ref.addEventListener('loadstop', function(event) { alert('stop: ' + event.url); });
+             ref.addEventListener('loaderror', function(event) { alert('error: ' + event.message); });
+             ref.addEventListener('exit', function(event) { alert(event.type); });
+        }
+
+        </script>
+      </head>
+      <body>
+      </body>
+    </html>
+
+# removeEventListener
+
+> Removes a listener for an event from the `InAppBrowser`.
+
+    ref.removeEventListener(eventname, callback);
+
+- __ref__: reference to the `InAppBrowser` window. _(InAppBrowser)_
+
+- __eventname__: the event to stop listening for. _(String)_
+
+  - __loadstart__: event fires when the `InAppBrowser` starts to load a URL.
+  - __loadstop__: event fires when the `InAppBrowser` finishes loading a URL.
+  - __loaderror__: event fires when the `InAppBrowser` encounters an error loading a URL.
+  - __exit__: event fires when the `InAppBrowser` window is closed.
+
+- __callback__: the function to execute when the event fires.
+The function is passed an `InAppBrowserEvent` object.
+
+## Supported Platforms
+
+- Amazon Fire OS
+- Android
+- BlackBerry
+- iOS
+- Windows Phone 7 and 8
+
+## Quick Example
+
+    var ref = window.open('http://apache.org', '_blank', 'location=yes');
+    var myCallback = function() { alert(event.url); }
+    ref.addEventListener('loadstart', myCallback);
+    ref.removeEventListener('loadstart', myCallback);
+
+## Full Example
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>InAppBrowser.removeEventListener Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for device API libraries to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        // Global InAppBrowser reference
+        var iabRef = null;
+
+        function iabLoadStart(event) {
+            alert(event.type + ' - ' + event.url);
+        }
+
+        function iabLoadStop(event) {
+            alert(event.type + ' - ' + event.url);
+        }
+
+        function iabLoadError(event) {
+            alert(event.type + ' - ' + event.message);
+        }
+
+        function iabClose(event) {
+             alert(event.type);
+             iabRef.removeEventListener('loadstart', iabLoadStart);
+             iabRef.removeEventListener('loadstop', iabLoadStop);
+             iabRef.removeEventListener('loaderror', iabLoadError);
+             iabRef.removeEventListener('exit', iabClose);
+        }
+
+        // device APIs are available
+        //
+        function onDeviceReady() {
+             iabRef = window.open('http://apache.org', '_blank', 'location=yes');
+             iabRef.addEventListener('loadstart', iabLoadStart);
+             iabRef.addEventListener('loadstop', iabLoadStop);
+             iabRef.addEventListener('loaderror', iabLoadError);
+             iabRef.addEventListener('exit', iabClose);
+        }
+
+        </script>
+      </head>
+      <body>
+      </body>
+    </html>
+
+# close
+
+> Closes the `InAppBrowser` window.
+
+    ref.close();
+
+- __ref__: reference to the `InAppBrowser` window _(InAppBrowser)_
+
+## Supported Platforms
+
+- Amazon Fire OS
+- Android
+- BlackBerry
+- iOS
+- Windows Phone 7 and 8
+
+## Quick Example
+
+    var ref = window.open('http://apache.org', '_blank', 'location=yes');
+    ref.close();
+
+## Full Example
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>InAppBrowser.close Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for device API libraries to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        // device APIs are available
+        //
+        function onDeviceReady() {
+             var ref = window.open('http://apache.org', '_blank', 'location=yes');
+             // close InAppBrowser after 5 seconds
+             setTimeout(function() {
+                 ref.close();
+             }, 5000);
+        }
+
+        </script>
+      </head>
+      <body>
+      </body>
+    </html>
+
+# show
+
+> Displays an InAppBrowser window that was opened hidden. Calling this has no effect if the InAppBrowser was already visible.
+
+    ref.show();
+
+- __ref__: reference to the InAppBrowser window (`InAppBrowser`)
+
+## Supported Platforms
+
+- Amazon Fire OS
+- Android
+- BlackBerry
+- iOS
+
+## Quick Example
+
+    var ref = window.open('http://apache.org', '_blank', 'hidden=yes');
+    ref.show();
+
+## Full Example
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>InAppBrowser.show Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova.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 ref = window.open('http://apache.org', '_blank', 'hidden=yes');
+             ref.addEventListener('loadstop', function(event) {
+                 alert('background window loaded'); 
+             });
+             // close InAppBrowser after 5 seconds
+             setTimeout(function() {
+                 ref.close();
+             }, 5000);
+        }
+
+        </script>
+      </head>
+      <body>
+      </body>
+    </html>
+
+# executeScript
+
+> Injects JavaScript code into the `InAppBrowser` window
+
+    ref.executeScript(details, callback);
+
+- __ref__: reference to the `InAppBrowser` window. _(InAppBrowser)_
+
+- __injectDetails__: details of the script to run, specifying either a `file` or `code` key. _(Object)_
+  - __file__: URL of the script to inject.
+  - __code__: Text of the script to inject.
+
+- __callback__: the function that executes after the JavaScript code is injected.
+    - If the injected script is of type `code`, the callback executes
+      with a single parameter, which is the return value of the
+      script, wrapped in an `Array`. For multi-line scripts, this is
+      the return value of the last statement, or the last expression
+      evaluated.
+
+## Supported Platforms
+
+- Amazon Fire OS
+- Android
+- BlackBerry
+- iOS
+
+## Quick Example
+
+    var ref = window.open('http://apache.org', '_blank', 'location=yes');
+    ref.addEventListener('loadstop', function() {
+        ref.executeScript({file: "myscript.js"});
+    });
+
+## Full Example
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>InAppBrowser.executeScript Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for device API libraries to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        // Global InAppBrowser reference
+        var iabRef = null;
+
+        // Inject our custom JavaScript into the InAppBrowser window
+        //
+        function replaceHeaderImage() {
+            iabRef.executeScript({
+                code: "var img=document.querySelector('#header img'); img.src='http://cordova.apache.org/images/cordova_bot.png';"
+            }, function() {
+                alert("Image Element Successfully Hijacked");
+            });
+        }
+
+        function iabClose(event) {
+             iabRef.removeEventListener('loadstop', replaceHeaderImage);
+             iabRef.removeEventListener('exit', iabClose);
+        }
+
+        // device APIs are available
+        //
+        function onDeviceReady() {
+             iabRef = window.open('http://apache.org', '_blank', 'location=yes');
+             iabRef.addEventListener('loadstop', replaceHeaderImage);
+             iabRef.addEventListener('exit', iabClose);
+        }
+
+        </script>
+      </head>
+      <body>
+      </body>
+    </html>
+
+# insertCSS
+
+> Injects CSS into the `InAppBrowser` window.
+
+    ref.insertCSS(details, callback);
+
+- __ref__: reference to the `InAppBrowser` window _(InAppBrowser)_
+
+- __injectDetails__: details of the script to run, specifying either a `file` or `code` key. _(Object)_
+  - __file__: URL of the stylesheet to inject.
+  - __code__: Text of the stylesheet to inject.
+
+- __callback__: the function that executes after the CSS is injected.
+
+## Supported Platforms
+
+- Amazon Fire OS
+- Android
+- BlackBerry
+- iOS
+
+## Quick Example
+
+    var ref = window.open('http://apache.org', '_blank', 'location=yes');
+    ref.addEventListener('loadstop', function() {
+        ref.insertCSS({file: "mystyles.css"});
+    });
+
+## Full Example
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>InAppBrowser.insertCSS Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for device API libraries to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        // Global InAppBrowser reference
+        var iabRef = null;
+
+        // Inject our custom CSS into the InAppBrowser window
+        //
+        function changeBackgroundColor() {
+            iabRef.insertCSS({
+                code: "body { background: #ffff00; }"
+            }, function() {
+                alert("Styles Altered");
+            });
+        }
+
+        function iabClose(event) {
+             iabRef.removeEventListener('loadstop', changeBackgroundColor);
+             iabRef.removeEventListener('exit', iabClose);
+        }
+
+        // device APIs are available
+        //
+        function onDeviceReady() {
+             iabRef = window.open('http://apache.org', '_blank', 'location=yes');
+             iabRef.addEventListener('loadstop', changeBackgroundColor);
+             iabRef.addEventListener('exit', iabClose);
+        }
+
+        </script>
+      </head>
+      <body>
+      </body>
+    </html>
+
+# InAppBrowserEvent
+
+The object that is passed to the callback function from an
+`addEventListener` call on an `InAppBrowser` object.
+
+## Properties
+
+- __type__: the eventname, either `loadstart`, `loadstop`, `loaderror`, or `exit`. _(String)_
+
+- __url__: the URL that was loaded. _(String)_
+
+- __code__: the error code, only in the case of `loaderror`. _(Number)_
+
+- __message__: the error message, only in the case of `loaderror`. _(String)_
diff --git a/docs/en/3.2.0/cordova/inappbrowser/window.open.md b/docs/en/3.2.0/cordova/inappbrowser/window.open.md
new file mode 100644
index 0000000..63658f0
--- /dev/null
+++ b/docs/en/3.2.0/cordova/inappbrowser/window.open.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.
+---
+
+# window.open
+
+Opens a URL in a new `InAppBrowser` instance, the current browser
+instance, or the system browser.
+
+    var ref = window.open(url, target, options);
+
+- __ref__: Reference to the `InAppBrowser` window. _(InAppBrowser)_
+
+- __url__: The URL to load _(String)_. Call `encodeURI()` on this if the URL contains Unicode characters.
+
+- __target__: The target in which to load the URL, an optional parameter that defaults to `_self`. _(String)_
+
+    - `_self`: Opens in the Cordova WebView if the URL is in the white list, otherwise it opens in the `InAppBrowser`.
+    - `_blank`: Opens in the `InAppBrowser`.
+    - `_system`: Opens in the system's web browser.
+
+- __options__: Options for the `InAppBrowser`. Optional, defaulting to: `location=yes`. _(String)_
+
+    The `options` string must not contain any blank space, and each feature's name/value pairs must be separated by a comma. Feature names are case insensitive. All platforms support the value below:
+
+    - __location__: Set to `yes` or `no` to turn the `InAppBrowser`'s location bar on or off.
+    
+    Android only:
+
+    - __closebuttoncaption__: set to a string to use as the __Done__ button's caption.
+    - __hidden__: set to `yes` to create the browser and load the page, but not show it. The load event fires when loading is complete. Omit or set to `no` (default) to have the browser open and load normally. 
+    - __clearcache__: set to `yes` to have the browser's cookie cache cleared before the new window is opened
+    - __clearsessioncache__: set to `yes` to have the session cookie cache cleared before the new window is opened
+
+    iOS only:
+
+    - __closebuttoncaption__: set to a string to use as the __Done__ button's caption. Note that you need to localize this value yourself.
+    - __hidden__: set to `yes` to create the browser and load the page, but not show it. The load event fires when loading is complete. Omit or set to `no` (default) to have the browser open and load normally. 
+    - __toolbar__:  set to `yes` or `no` to turn the toolbar on or off for the InAppBrowser (defaults to `yes`)
+    - __enableViewportScale__:  Set to `yes` or `no` to prevent viewport scaling through a meta tag (defaults to `no`).
+    - __mediaPlaybackRequiresUserAction__: Set to `yes` or `no` to prevent HTML5 audio or video from autoplaying (defaults to `no`).
+    - __allowInlineMediaPlayback__: Set to `yes` or `no` to allow in-line HTML5 media playback, displaying within the browser window rather than a device-specific playback interface. The HTML's `video` element must also include the `webkit-playsinline` attribute (defaults to `no`)
+    - __keyboardDisplayRequiresUserAction__: Set to `yes` or `no` to open the keyboard when form elements receive focus via JavaScript's `focus()` call (defaults to `yes`).
+    - __suppressesIncrementalRendering__: Set to `yes` or `no` to wait until all new view content is received before being rendered (defaults to `no`).
+    - __presentationstyle__:  Set to `pagesheet`, `formsheet` or `fullscreen` to set the [presentation style](http://developer.apple.com/library/ios/documentation/UIKit/Reference/UIViewController_Class/Reference/Reference.html#//apple_ref/occ/instp/UIViewController/modalPresentationStyle) (defaults to `fullscreen`).
+    - __transitionstyle__: Set to `fliphorizontal`, `crossdissolve` or `coververtical` to set the [transition style](http://developer.apple.com/library/ios/#documentation/UIKit/Reference/UIViewController_Class/Reference/Reference.html#//apple_ref/occ/instp/UIViewController/modalTransitionStyle) (defaults to `coververtical`).
+
+## Supported Platforms
+
+- Amazon Fire OS
+- Android
+- BlackBerry
+- iOS
+- Windows Phone 7 and 8
+
+## Quick Example
+
+    var ref = window.open('http://apache.org', '_blank', 'location=yes');
+    var ref2 = window.open(encodeURI('http://ja.m.wikipedia.org/wiki/ハングル'), '_blank', 'location=yes');
+
+## Full Example
+
+    <!DOCTYPE html>
+    <html>
+      <head>
+        <title>window.open Example</title>
+
+        <script type="text/javascript" charset="utf-8" src="cordova.js"></script>
+        <script type="text/javascript" charset="utf-8">
+
+        // Wait for device API libraries to load
+        //
+        document.addEventListener("deviceready", onDeviceReady, false);
+
+        // device APIs are available
+        //
+        function onDeviceReady() {
+            // external url
+            var ref = window.open(encodeURI('http://apache.org'), '_blank', 'location=yes');
+            // relative document
+            ref = window.open('next.html', '_self');
+        }
+
+        </script>
+      </head>
+      <body>
+      </body>
+    </html>
diff --git a/docs/en/3.2.0/cordova/media/MediaError/mediaError.md b/docs/en/3.2.0/cordova/media/MediaError/mediaError.md
new file mode 100644
index 0000000..28ed43e
--- /dev/null
+++ b/docs/en/3.2.0/cordova/media/MediaError/mediaError.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.
+---
+
+# 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__: An 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 passed to a `mediaError` callback function
+when an error occurs.
+
diff --git a/docs/en/3.2.0/cordova/media/Parameters/mediaError.md b/docs/en/3.2.0/cordova/media/Parameters/mediaError.md
new file mode 100644
index 0000000..4113988
--- /dev/null
+++ b/docs/en/3.2.0/cordova/media/Parameters/mediaError.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.
+---
+
+# mediaError
+
+A user-specified callback function that executes 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/3.2.0/cordova/media/capture/CaptureCB.md b/docs/en/3.2.0/cordova/media/capture/CaptureCB.md
new file mode 100644
index 0000000..c7b7bf5
--- /dev/null
+++ b/docs/en/3.2.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 executes after a successful capture operation completes.
+At this point 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/3.2.0/cordova/media/capture/CaptureError.md b/docs/en/3.2.0/cordova/media/capture/CaptureError.md
new file mode 100644
index 0000000..0dbb700
--- /dev/null
+++ b/docs/en/3.2.0/cordova/media/capture/CaptureError.md
@@ -0,0 +1,38 @@
+---
+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`: The camera or microphone failed to capture image or sound.
+
+- `CaptureError.CAPTURE_APPLICATION_BUSY`: The camera or audio capture application is currently serving another capture request.
+
+- `CaptureError.CAPTURE_INVALID_ARGUMENT`: Invalid use of the API (e.g., the value of `limit` is less than one).
+
+- `CaptureError.CAPTURE_NO_MEDIA_FILES`: The user exits the camera or audio capture application before capturing anything.
+
+- `CaptureError.CAPTURE_NOT_SUPPORTED`: The requested capture operation is not supported.
diff --git a/docs/en/3.2.0/cordova/media/capture/CaptureErrorCB.md b/docs/en/3.2.0/cordova/media/capture/CaptureErrorCB.md
new file mode 100644
index 0000000..9c2a665
--- /dev/null
+++ b/docs/en/3.2.0/cordova/media/capture/CaptureErrorCB.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.
+---
+
+# CaptureErrorCB
+
+> Invoked if an error occurs during a media capture operation.
+
+    function captureError( CaptureError error ) { ... };
+
+## Description
+
+This function executes if an error occurs when trying to launch a
+media capture operation. Failure scenarios include when the capture
+application is busy, a capture operation is already taking place, or
+the user cancels the operation before any media files are captured.
+
+This function executes 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/3.2.0/cordova/media/capture/ConfigurationData.md b/docs/en/3.2.0/cordova/media/capture/ConfigurationData.md
new file mode 100644
index 0000000..0cd13b8
--- /dev/null
+++ b/docs/en/3.2.0/cordova/media/capture/ConfigurationData.md
@@ -0,0 +1,61 @@
+---
+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
+
+Describes 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 lowercase string representing the media type. (DOMString)
+
+- __height__: The height of the image or video in pixels.  The value is zero for sound clips. (Number)
+
+- __width__: The width of the image or video in pixels.  The value is zero for sound clips. (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.
diff --git a/docs/en/3.2.0/cordova/media/capture/MediaFile.getFormatData.md b/docs/en/3.2.0/cordova/media/capture/MediaFile.getFormatData.md
new file mode 100644
index 0000000..a5e8a86
--- /dev/null
+++ b/docs/en/3.2.0/cordova/media/capture/MediaFile.getFormatData.md
@@ -0,0 +1,64 @@
+---
+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 invokes the `MediaFileDataErrorCB`
+callback.
+
+## Supported Platforms
+
+- Amazon Fire OS
+- Android
+- BlackBerry WebWorks 5.0+
+- iOS
+- Windows Phone 7 and 8
+- Windows 8
+
+## Amazon Fire OS Quirks
+
+The API to access media file format information is limited, so not all
+`MediaFileData` properties are supported.
+
+## BlackBerry WebWorks Quirks
+
+Does not provide an API for information about media files, so all
+`MediaFileData` objects return with default values.
+
+## Android Quirks
+
+The API to access media file format information is limited, so not all
+`MediaFileData` properties are supported.
+
+## iOS Quirks
+
+The API to access media file format information is limited, so not all
+`MediaFileData` properties are supported.
diff --git a/docs/en/3.2.0/cordova/media/capture/MediaFile.md b/docs/en/3.2.0/cordova/media/capture/MediaFile.md
new file mode 100644
index 0000000..f0ac93a
--- /dev/null
+++ b/docs/en/3.2.0/cordova/media/capture/MediaFile.md
@@ -0,0 +1,38 @@
+---
+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 file's mime type (DOMString)
+
+- __lastModifiedDate__: The date and time when 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.
diff --git a/docs/en/3.2.0/cordova/media/capture/MediaFileData.md b/docs/en/3.2.0/cordova/media/capture/MediaFileData.md
new file mode 100644
index 0000000..853be08
--- /dev/null
+++ b/docs/en/3.2.0/cordova/media/capture/MediaFileData.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.
+---
+
+# 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.  The value is zero for images. (Number)
+
+- __height__: The height of the image or video in pixels. The value is zero for audio clips. (Number)
+
+- __width__: The width of the image or video in pixels. The value is zero for audio clips. (Number)
+
+- __duration__: The length of the video or sound clip in seconds. The value is zero for images. (Number)
+
+## BlackBerry WebWorks Quirks
+
+No API provides format information for media files, so the
+`MediaFileData` object returned by `MediaFile.getFormatData` features
+the following default values:
+
+- __codecs__: Not supported, and returns `null`.
+
+- __bitrate__: Not supported, and returns zero.
+
+- __height__: Not supported, and returns zero.
+
+- __width__: Not supported, and returns zero.
+
+- __duration__: Not supported, and returns zero.
+
+## Amazon Fire OS Quirks
+
+Supports the following `MediaFileData` properties:
+
+- __codecs__: Not supported, and returns `null`.
+
+- __bitrate__: Not supported, and returns zero.
+
+- __height__: Supported: image and video files only.
+
+- __width__: Supported: image and video files only.
+
+- __duration__: Supported: audio and video files only
+
+## Android Quirks
+
+Supports the following `MediaFileData` properties:
+
+- __codecs__: Not supported, and returns `null`.
+
+- __bitrate__: Not supported, and returns zero.
+
+- __height__: Supported: image and video files only.
+
+- __width__: Supported: image and video files only.
+
+- __duration__: Supported: audio and video files only.
+
+## iOS Quirks
+
+Supports the following `MediaFileData` properties:
+
+- __codecs__: Not supported, and returns `null`.
+
+- __bitrate__: Supported on iOS4 devices for audio only. Returns zero for images and videos.
+
+- __height__: Supported: image and video files only.
+
+- __width__: Supported: image and video files only.
+
+- __duration__: Supported: audio and video files only.
diff --git a/docs/en/3.2.0/cordova/media/capture/capture.md b/docs/en/3.2.0/cordova/media/capture/capture.md
new file mode 100644
index 0000000..a56154f
--- /dev/null
+++ b/docs/en/3.2.0/cordova/media/capture/capture.md
@@ -0,0 +1,164 @@
+---
+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 device's audio, image, and video capture capabilities.
+
+__WARNING__: Collection and use of images, video, or
+audio from the device's camera or microphone raises important privacy
+issues.  Your app's privacy policy should discuss how the app uses
+such sensors and whether the data recorded is shared with any other
+parties.  In addition, if the app's use of the camera or microphone is
+not apparent in the user interface, you should provide a just-in-time
+notice before the app accesses the camera or microphone (if the
+device operating system doesn't do so already). That notice should
+provide the same information noted above, as well as obtaining the
+user's permission (e.g., by presenting choices for __OK__ and __No
+Thanks__).  Note that some app marketplaces may require your app to
+provide just-in-time notice and obtain permission from the user prior
+to accessing the camera or microphone.  For more information, please
+see the Privacy Guide.
+
+## Objects
+
+- Capture
+- CaptureAudioOptions
+- CaptureImageOptions
+- CaptureVideoOptions
+- CaptureCallback
+- 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's audio recording application to record audio clips.
+
+- `capture.captureImage`: Launch the device's camera application to take photos.
+
+- `capture.captureVideo`: Launch the device's video recorder application to record videos.
+
+## Supported Platforms
+
+- Amazon Fire OS
+- Android
+- BlackBerry WebWorks 5.0+
+- iOS
+- Windows Phone 7 and 8
+- Windows 8
+
+## Accessing the Feature
+
+As of version 3.0, Cordova implements device-level APIs as _plugins_.
+Use the CLI's `plugin` command, described in The Command-Line
+Interface, to add or remove this feature for a project:
+
+        $ cordova plugin add org.apache.cordova.media-capture
+        $ cordova plugin ls
+        [ 'org.apache.cordova.file',
+          'org.apache.cordova.media-capture']
+        $ cordova plugin rm org.apache.cordova.media-capture
+
+These commands apply to all targeted platforms, but modify the
+platform-specific configuration settings described below:
+
+* Amazon Fire OS
+
+        (in app/res/xml/config.xml)
+        <feature name="File">
+            <param name="android-package" value="org.apache.cordova.file.FileUtils" />
+        </feature>
+        <feature name="Capture">
+            <param name="android-package" value="org.apache.cordova.mediacapture.Capture" />
+        </feature>
+
+        (in app/AndroidManifest.xml)   
+        <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
+        <uses-permission android:name="android.permission.RECORD_AUDIO" />
+        <uses-permission android:name="android.permission.RECORD_VIDEO" />
+
+* Android
+
+        (in app/res/xml/config.xml)
+        <feature name="File">
+            <param name="android-package" value="org.apache.cordova.file.FileUtils" />
+        </feature>
+        <feature name="Capture">
+            <param name="android-package" value="org.apache.cordova.mediacapture.Capture" />
+        </feature>
+
+        (in app/AndroidManifest.xml)
+        <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
+        <uses-permission android:name="android.permission.RECORD_AUDIO" />
+        <uses-permission android:name="android.permission.RECORD_VIDEO" />
+
+* BlackBerry WebWorks
+
+        (in www/plugins.xml)
+        <feature name="Capture">
+            <param name="blackberry-package" value="org.apache.cordova.capture.MediaCapture" />
+        </feature>
+
+        (in 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 (in the named application directory's `config.xml`)
+
+        <feature name="Capture">
+            <param name="ios-package" value="CDVCapture" />
+        </feature>
+
+* Windows Phone (in `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>
+
+Some platforms may support this feature without requiring any special
+configuration.  See Platform Support for an overview.
diff --git a/docs/en/3.2.0/cordova/media/capture/captureAudio.md b/docs/en/3.2.0/cordova/media/capture/captureAudio.md
new file mode 100644
index 0000000..152aec5
--- /dev/null
+++ b/docs/en/3.2.0/cordova/media/capture/captureAudio.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.
+---
+
+# capture.captureAudio
+
+> Start the audio recorder application and return information about captured audio clip files.
+
+    navigator.device.capture.captureAudio(
+        CaptureCB captureSuccess, CaptureErrorCB captureError,  [CaptureAudioOptions options]
+    );
+
+## Description
+
+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 `CaptureAudioOptions.limit` is reached.  If no `limit` parameter
+value is specified, it defaults to one (1), and the capture operation
+terminates after the user records a single audio clip.
+
+When the capture operation finishes, the `CaptureCallback` executes
+with an array of `MediaFile` objects describing each captured audio
+clip file.  If the user terminates the operation before an audio clip
+is captured, the `CaptureErrorCallback` executes with a `CaptureError`
+object, featuring the `CaptureError.CAPTURE_NO_MEDIA_FILES` error
+code.
+
+## Supported Platforms
+
+- Amazon Fire OS
+- Android
+- BlackBerry WebWorks 5.0+
+- iOS
+- Windows Phone 7 and 8
+- Windows 8
+
+## 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.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 audio recordings. The app receives 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 and 8 Quirks
+
+- Windows Phone 7 does not have a default audio recording application, so a simple user interface is provided.
diff --git a/docs/en/3.2.0/cordova/media/capture/captureAudioOptions.md b/docs/en/3.2.0/cordova/media/capture/captureAudioOptions.md
new file mode 100644
index 0000000..dbb4e79
--- /dev/null
+++ b/docs/en/3.2.0/cordova/media/capture/captureAudioOptions.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.
+---
+
+# 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.
+
+## 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);
+
+## Amazon Fire OS Quirks
+
+- The `duration` parameter is not supported.  Recording lengths cannot be limited programmatically.
+
+## Android Quirks
+
+- The `duration` parameter is not supported.  Recording lengths can't be limited programmatically.
+
+## BlackBerry WebWorks Quirks
+
+- The `duration` parameter is not supported.  Recording lengths can't be limited programmatically.
+
+## iOS Quirks
+
+- The `limit` parameter is not supported, so only one recording can be created for each invocation.
diff --git a/docs/en/3.2.0/cordova/media/capture/captureImage.md b/docs/en/3.2.0/cordova/media/capture/captureImage.md
new file mode 100644
index 0000000..5b35930
--- /dev/null
+++ b/docs/en/3.2.0/cordova/media/capture/captureImage.md
@@ -0,0 +1,138 @@
+---
+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 files.
+
+    navigator.device.capture.captureImage(
+        CaptureCB captureSuccess, CaptureErrorCB captureError, [CaptureImageOptions options]
+    );
+
+## Description
+
+Starts an asynchronous operation to capture images using the device's
+camera application.  The operation allows users to capture more than
+one image in a single session.
+
+The capture operation ends either when the user closes the camera
+application, or the maximum number of recordings specified by
+`CaptureAudioOptions.limit` is reached.  If no `limit` value is
+specified, it defaults to one (1), and the capture operation
+terminates after the user captures a single image.
+
+When the capture operation finishes, it invokes the `CaptureCB`
+callback with an array of `MediaFile` objects describing each captured
+image file.  If the user terminates the operation before capturing an
+image, the `CaptureErrorCB` callback executes with a `CaptureError`
+object featuring a `CaptureError.CAPTURE_NO_MEDIA_FILES` error code.
+
+## Supported Platforms
+
+- Amazon Fire OS
+- Android
+- BlackBerry WebWorks 5.0+
+- iOS
+- Windows Phone 7 and 8
+- Windows 8
+
+## Windows Phone 7 Quirks
+
+Invoking the native camera application while your device is connected
+via Zune does not work, and the error callback executes.
+
+## 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.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/3.2.0/cordova/media/capture/captureImageOptions.md b/docs/en/3.2.0/cordova/media/capture/captureImageOptions.md
new file mode 100644
index 0000000..33d1144
--- /dev/null
+++ b/docs/en/3.2.0/cordova/media/capture/captureImageOptions.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.
+---
+
+# CaptureImageOptions
+
+> Encapsulates image capture configuration options.
+
+## Properties
+
+- __limit__: The maximum number of images the user can capture in a single capture operation. The value must be greater than or equal to 1 (defaults to 1).
+
+## Quick Example
+
+    // limit capture operation to 3 images
+    var options = { limit: 3 };
+
+    navigator.device.capture.captureImage(captureSuccess, captureError, options);
+
+## iOS Quirks
+
+- The __limit__ parameter is not supported, and only one image is taken per invocation.
diff --git a/docs/en/3.2.0/cordova/media/capture/captureVideo.md b/docs/en/3.2.0/cordova/media/capture/captureVideo.md
new file mode 100644
index 0000000..1e0671c
--- /dev/null
+++ b/docs/en/3.2.0/cordova/media/capture/captureVideo.md
@@ -0,0 +1,138 @@
+---
+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 files.
+
+    navigator.device.capture.captureVideo(
+        CaptureCB captureSuccess, CaptureErrorCB captureError, [CaptureVideoOptions options]
+    );
+
+## Description
+
+Starts an asynchronous operation to capture video recordings using the
+device's video recording application.  The operation allows the user
+to capture more than one 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 `CaptureVideoOptions.limit` is reached.  If no `limit` parameter
+value is specified, it defaults to one (1), and the capture operation
+terminates after the user records a single video clip.
+
+When the capture operation finishes, it the `CaptureCB` callback
+executes with an array of `MediaFile` objects describing each captured
+video clip file.  If the user terminates the operation before
+capturing a video clip, the `CaptureErrorCB` callback executes with a
+`CaptureError` object featuring a
+`CaptureError.CAPTURE_NO_MEDIA_FILES` error code.
+
+## Supported Platforms
+
+- Amazon Fire OS
+- Android
+- BlackBerry WebWorks 5.0+
+- iOS
+- Windows Phone 7 and 8
+- Windows 8
+
+## 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.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 video recordings. The app receives a `CaptureError.CAPTURE_NOT_SUPPORTED` error code if the application is not installed on the device.
+
diff --git a/docs/en/3.2.0/cordova/media/capture/captureVideoOptions.md b/docs/en/3.2.0/cordova/media/capture/captureVideoOptions.md
new file mode 100644
index 0000000..105b5ba
--- /dev/null
+++ b/docs/en/3.2.0/cordova/media/capture/captureVideoOptions.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.
+---
+
+# CaptureVideoOptions
+
+> Encapsulates video capture configuration options.
+
+## Properties
+
+- __limit__: The maximum number of video clips the device's 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.
+
+## Quick Example
+
+    // limit capture operation to 3 video clips
+    var options = { limit: 3 };
+
+    navigator.device.capture.captureVideo(captureSuccess, captureError, options);
+
+## BlackBerry WebWorks Quirks
+
+- The __duration__ parameter is not supported, so the length of recordings can't be limited programmatically.
+
+## iOS Quirks
+
+- The __limit__ parameter is not supported.  Only one video is recorded per invocation.
+
diff --git a/docs/en/3.2.0/cordova/media/media.getCurrentPosition.md b/docs/en/3.2.0/cordova/media/media.getCurrentPosition.md
new file mode 100644
index 0000000..462ed08
--- /dev/null
+++ b/docs/en/3.2.0/cordova/media/media.getCurrentPosition.md
@@ -0,0 +1,176 @@
+---
+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 passed the current position in seconds.
+
+- __mediaError__: (Optional) The callback to execute if an error occurs.
+
+## Description
+
+An asynchronous function that returns the current position of the
+underlying audio file of a `Media` object. Also updates the `Media`
+object's `position` parameter.
+
+## Supported Platforms
+
+- Android
+
+- BlackBerry WebWorks 5.0+
+
+- iOS
+
+- Windows Phone 7 and 8
+
+- Tizen
+
+- Windows 8
+
+## 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.js"></script>
+            <script type="text/javascript" charset="utf-8">
+
+            // Wait for device API libraries to load
+            //
+            document.addEventListener("deviceready", onDeviceReady, false);
+
+            // device APIs are available
+            //
+            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/3.2.0/cordova/media/media.getDuration.md b/docs/en/3.2.0/cordova/media/media.getDuration.md
new file mode 100644
index 0000000..8194fb6
--- /dev/null
+++ b/docs/en/3.2.0/cordova/media/media.getDuration.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.
+---
+
+# media.getDuration
+
+Returns the duration of an audio file.
+
+    media.getDuration();
+
+## Description
+
+The `media.getDuration` method executes synchronously, returning the
+duration of the audio file in seconds, if known.  If the duration is
+unknown, it returns a value of -1.
+
+## Supported Platforms
+
+- Android
+- BlackBerry WebWorks 5.0+
+- iOS
+- Windows Phone 7 and 8
+- Tizen
+- Windows 8
+
+## 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.js"></script>
+            <script type="text/javascript" charset="utf-8">
+
+            // Wait for device API libraries to load
+            //
+            document.addEventListener("deviceready", onDeviceReady, false);
+
+            // device APIs are available
+            //
+            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/3.2.0/cordova/media/media.md b/docs/en/3.2.0/cordova/media/media.md
new file mode 100644
index 0000000..fa7f692
--- /dev/null
+++ b/docs/en/3.2.0/cordova/media/media.md
@@ -0,0 +1,163 @@
+---
+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 executes after a `Media` object has completed the current play, record, or stop action. _(Function)_
+
+- __mediaError__: (Optional) The callback that executes if an error occurs. _(Function)_
+
+- __mediaStatus__: (Optional) The callback that executes to indicate status changes. _(Function)_
+
+## Constants
+
+The following constants are reported as the only parameter to the
+`mediaStatus` callback:
+
+- `Media.MEDIA_NONE`     = 0;
+- `Media.MEDIA_STARTING` = 1;
+- `Media.MEDIA_RUNNING`  = 2;
+- `Media.MEDIA_PAUSED`   = 3;
+- `Media.MEDIA_STOPPED`  = 4;
+
+## 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 an audio file.
+
+- `media.pause`: Pause playback of an audio file.
+
+- `media.release`: Releases the underlying operating system's audio resources.
+
+- `media.seekTo`: Moves the position within the audio file.
+
+- `media.setVolume`: Set the volume for audio playback.
+
+- `media.startRecord`: Start recording an audio file.
+
+- `media.stopRecord`: Stop recording an audio file.
+
+- `media.stop`: Stop playing an 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
+
+- Amazon Fire OS
+- Android
+- BlackBerry WebWorks 5.0+
+- iOS
+- Windows Phone 7.5
+- Tizen
+- Windows 8
+
+## Accessing the Feature
+
+As of version 3.0, Cordova implements device-level APIs as _plugins_.
+Use the CLI's `plugin` command, described in The Command-Line
+Interface, to add or remove this feature for a project:
+
+        $ cordova plugin add org.apache.cordova.media 
+        $ cordova plugin ls
+        [ 'org.apache.cordova.media' ]
+        $ cordova plugin rm org.apache.cordova.media 
+
+These commands apply to all targeted platforms, but modify the
+platform-specific configuration settings described below:
+
+* Amazon Fire OS
+
+        (in app/res/xml/config.xml)
+        <feature name="Media">
+            <param name="android-package" value="org.apache.cordova.media.AudioHandler" />
+        </feature>
+
+        (in 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" />
+
+* Android
+
+        (in app/res/xml/config.xml)
+        <feature name="Media">
+            <param name="android-package" value="org.apache.cordova.media.AudioHandler" />
+        </feature>
+
+        (in 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" />
+
+* BlackBerry WebWorks
+
+        (in www/plugins.xml)
+        <feature name="Capture">
+            <param name="blackberry-package" value="org.apache.cordova.media.MediaCapture" />
+        </feature>
+
+* iOS (in the named application directory's `config.xml`)
+
+        <feature name="Media">
+            <param name="ios-package" value="CDVSound" />
+        </feature>
+
+* Windows Phone (in `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)
+
+Some platforms may support this feature without requiring any special
+configuration.  See Platform Support for an overview.
+
+## Windows Phone Quirks
+
+- Only one media file can be played back at a time.
+
+- There are strict restrictions on how your application interacts with other media. See the [Microsoft documentation for details][url].
+
+[url]: http://msdn.microsoft.com/en-us/library/windowsphone/develop/hh184838(v=vs.92).aspx
diff --git a/docs/en/3.2.0/cordova/media/media.pause.md b/docs/en/3.2.0/cordova/media/media.pause.md
new file mode 100644
index 0000000..f237ce7
--- /dev/null
+++ b/docs/en/3.2.0/cordova/media/media.pause.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.
+---
+
+# media.pause
+
+Pauses playing an audio file.
+
+    media.pause();
+
+## Description
+
+The `media.pause` method executes synchronously, and pauses playing an audio file.
+
+## Supported Platforms
+
+- Android
+- BlackBerry WebWorks 5.0+
+- iOS
+- Windows Phone 7 and 8
+- Tizen
+- Windows 8
+
+## 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.js"></script>
+            <script type="text/javascript" charset="utf-8">
+
+            // Wait for device API libraries to load
+            //
+            document.addEventListener("deviceready", onDeviceReady, false);
+
+            // device APIs are available
+            //
+            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/3.2.0/cordova/media/media.play.md b/docs/en/3.2.0/cordova/media/media.play.md
new file mode 100644
index 0000000..6dbdd5c
--- /dev/null
+++ b/docs/en/3.2.0/cordova/media/media.play.md
@@ -0,0 +1,193 @@
+---
+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
+
+The `media.play` method executes synchronously, and starts or resumes
+playing an audio file.
+
+## Supported Platforms
+
+- Android
+- BlackBerry WebWorks 5.0+
+- iOS
+- Windows Phone 7 and 8
+- Tizen
+- Windows 8
+
+## 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.js"></script>
+            <script type="text/javascript" charset="utf-8">
+
+            // Wait for device API libraries to load
+            //
+            document.addEventListener("deviceready", onDeviceReady, false);
+
+            // device APIs are available
+            //
+            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. An attempt to play
+  more audio files than the supported amount results in previous
+  playback being stopped.
+
+## iOS Quirks
+
+- __numberOfLoops__: Pass 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 allow playback when the screen
+  is locked.  If set to `true` (the default value), the state of the
+  hardware mute button is ignored, e.g.:
+
+        var myMedia = new Media("http://audio.ibeat.org/content/p1rj1s/p1rj1s_-_rockGuitar.mp3")
+        myMedia.play({ playAudioWhenScreenIsLocked : false })
+
+- __order of file search__: When only a file name or simple path is
+  provided, iOS searches in the `www` directory for the file, then in
+  the application's `documents/tmp` directory:
+
+        var myMedia = new Media("audio/beer.mp3")
+        myMedia.play()  // first looks for file in www/audio/beer.mp3 then in <application>/documents/tmp/audio/beer.mp3
diff --git a/docs/en/3.2.0/cordova/media/media.release.md b/docs/en/3.2.0/cordova/media/media.release.md
new file mode 100644
index 0000000..9c99964
--- /dev/null
+++ b/docs/en/3.2.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 system's audio resources.
+
+    media.release();
+
+## Description
+
+The `media.release` method executes synchronously, releasing the
+underlying operating system's audio resources.  This is particularly
+important for Android, since there are a finite amount of OpenCore
+instances for media playback. Applications should call the `release`
+function for any `Media` resource that is no longer needed.
+
+## Supported Platforms
+
+- Android
+- BlackBerry WebWorks 5.0+
+- iOS
+- Windows Phone 7 and 8
+- Tizen
+- Windows 8
+
+## 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.js"></script>
+            <script type="text/javascript" charset="utf-8">
+
+            // Wait for device API libraries to load
+            //
+            document.addEventListener("deviceready", onDeviceReady, false);
+
+            // device APIs are available
+            //
+            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/3.2.0/cordova/media/media.seekTo.md b/docs/en/3.2.0/cordova/media/media.seekTo.md
new file mode 100644
index 0000000..9727f63
--- /dev/null
+++ b/docs/en/3.2.0/cordova/media/media.seekTo.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.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
+
+The `media.seekTo` executes asynchronously, updating the current
+playback position within an audio file referenced by a `Media`
+object. Also updates the `Media` object's `position` parameter.
+
+## Supported Platforms
+
+- Android
+- BlackBerry WebWorks (OS 6.0 and higher)
+- iOS
+- Windows Phone 7 and 8
+- Tizen
+- Windows 8
+
+## 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.js"></script>
+            <script type="text/javascript" charset="utf-8">
+
+            // Wait for device API libraries to load
+            //
+            document.addEventListener("deviceready", onDeviceReady, false);
+
+            // device APIs are available
+            //
+            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");
+                            }
+