mobox 0.0.1
Sign up to get free protection for your applications and to get access to all the features.
- data/.gitignore +3 -0
- data/Gemfile +4 -0
- data/LICENSE +22 -0
- data/README.md +89 -0
- data/Rakefile +2 -0
- data/bin/mobox +275 -0
- data/lib/mobox.rb +34 -0
- data/lib/mobox/config.rb +36 -0
- data/lib/mobox/helpers.rb +9 -0
- data/lib/mobox/render_scope.rb +9 -0
- data/lib/mobox/server.rb +91 -0
- data/lib/mobox/version.rb +3 -0
- data/mobox.gemspec +31 -0
- data/template/.mobox +2 -0
- data/template/Gemfile +3 -0
- data/template/config.ru +76 -0
- data/template/src/assets/images/mobox-logo-inkscape.svg +177 -0
- data/template/src/assets/images/mobox-logo.pdf +0 -0
- data/template/src/assets/images/mobox-logo.png +0 -0
- data/template/src/assets/images/mobox-logo.svg +120 -0
- data/template/src/assets/javascripts/app/config.js.coffee.erb +2 -0
- data/template/src/assets/javascripts/app/controllers/.gitignore +0 -0
- data/template/src/assets/javascripts/app/controllers/home.js.coffee +10 -0
- data/template/src/assets/javascripts/app/helpers/.gitignore +0 -0
- data/template/src/assets/javascripts/app/index.js.coffee +7 -0
- data/template/src/assets/javascripts/app/lib/.gitignore +0 -0
- data/template/src/assets/javascripts/app/lib/app.js.coffee +6 -0
- data/template/src/assets/javascripts/app/lib/config.js.coffee +3 -0
- data/template/src/assets/javascripts/app/lib/view.js.coffee +18 -0
- data/template/src/assets/javascripts/app/models/.gitignore +0 -0
- data/template/src/assets/javascripts/app/views/.gitignore +0 -0
- data/template/src/assets/javascripts/app/views/home/index.jst.hamljs +8 -0
- data/template/src/assets/javascripts/application.js.coffee +25 -0
- data/template/src/assets/javascripts/vendor/1140gs/css3-mediaqueries.js +779 -0
- data/template/src/assets/javascripts/vendor/cordova-2.0.0.js +5240 -0
- data/template/src/assets/javascripts/vendor/gfx/gfx.cube.js +161 -0
- data/template/src/assets/javascripts/vendor/gfx/gfx.effects.js +330 -0
- data/template/src/assets/javascripts/vendor/gfx/gfx.flip.js +52 -0
- data/template/src/assets/javascripts/vendor/gfx/gfx.js +93 -0
- data/template/src/assets/javascripts/vendor/gfx/gfx.overlay.js +81 -0
- data/template/src/assets/javascripts/vendor/gfx/index.js +5 -0
- data/template/src/assets/javascripts/vendor/hammer/.gitignore +1 -0
- data/template/src/assets/javascripts/vendor/hammer/LICENSE +19 -0
- data/template/src/assets/javascripts/vendor/hammer/hammer.js +741 -0
- data/template/src/assets/javascripts/vendor/hammer/index.coffee +2 -0
- data/template/src/assets/javascripts/vendor/hammer/jquery.hammer.js +26 -0
- data/template/src/assets/javascripts/vendor/hammer/jquery.specialevent.hammer.js +39 -0
- data/template/src/assets/javascripts/vendor/jquery.js +4 -0
- data/template/src/assets/javascripts/vendor/jquery_transit/index.coffee +1 -0
- data/template/src/assets/javascripts/vendor/jquery_transit/jquery.transit.js +658 -0
- data/template/src/assets/javascripts/vendor/spine/ajax.js +318 -0
- data/template/src/assets/javascripts/vendor/spine/list.js +74 -0
- data/template/src/assets/javascripts/vendor/spine/local.js +30 -0
- data/template/src/assets/javascripts/vendor/spine/manager.js +158 -0
- data/template/src/assets/javascripts/vendor/spine/panel.js +132 -0
- data/template/src/assets/javascripts/vendor/spine/relation.js +255 -0
- data/template/src/assets/javascripts/vendor/spine/route.js +220 -0
- data/template/src/assets/javascripts/vendor/spine/spine.js +913 -0
- data/template/src/assets/javascripts/vendor/spine/stage.js +146 -0
- data/template/src/assets/javascripts/vendor/spine/tabs.js +66 -0
- data/template/src/assets/javascripts/vendor/spine/tmpl.js +22 -0
- data/template/src/assets/javascripts/vendor/spine/touch.js +79 -0
- data/template/src/assets/stylesheets/application.css.sass +3 -0
- data/template/src/assets/stylesheets/base.sass +78 -0
- data/template/src/assets/stylesheets/vendor/1140gs/1140gs.sass +110 -0
- data/template/src/assets/stylesheets/vendor/1140gs/conditionals.sass +34 -0
- data/template/src/assets/stylesheets/vendor/1140gs/ie.css +43 -0
- data/template/src/assets/stylesheets/vendor/1140gs/index.sass +1 -0
- data/template/src/assets/stylesheets/vendor/spine_mobile/index.sass +1 -0
- data/template/src/assets/stylesheets/vendor/spine_mobile/mixin.sass +89 -0
- data/template/src/assets/stylesheets/vendor/spine_mobile/spine_mobile.sass +57 -0
- data/template/src/assets/stylesheets/vendor/spine_mobile/theme.sass +79 -0
- data/template/src/config.yml +2 -0
- data/template/src/index.haml +21 -0
- data/vendor/compass-sprockets/README.md +5 -0
- data/vendor/compass-sprockets/lib/compass-sprockets.rb +32 -0
- data/vendor/compass-sprockets/lib/compass/sprockets.rb +56 -0
- data/vendor/compass-sprockets/lib/compass/sprockets/version.rb +6 -0
- data/vendor/compass-sprockets/lib/sprockets/compressors.rb +96 -0
- data/vendor/compass-sprockets/lib/sprockets/static_compiler.rb +62 -0
- data/vendor/haml-sprockets/Gemfile +4 -0
- data/vendor/haml-sprockets/LICENSE +8 -0
- data/vendor/haml-sprockets/README.md +33 -0
- data/vendor/haml-sprockets/Rakefile +1 -0
- data/vendor/haml-sprockets/lib/haml-sprockets.rb +34 -0
- data/vendor/haml-sprockets/lib/haml-sprockets/engine.rb +7 -0
- data/vendor/haml-sprockets/lib/haml-sprockets/version.rb +5 -0
- data/vendor/haml-sprockets/spec/lib/haml-sprockets_spec.rb +43 -0
- data/vendor/haml-sprockets/spec/spec_helper.rb +2 -0
- data/vendor/haml-sprockets/vendor/assets/javascripts/haml.js +651 -0
- data/vendor/phonegap/.gitignore +19 -0
- data/vendor/phonegap/LICENSE +426 -0
- data/vendor/phonegap/README.md +49 -0
- data/vendor/phonegap/VERSION +1 -0
- data/vendor/phonegap/changelog +205 -0
- data/vendor/phonegap/doc/LICENSE +548 -0
- data/vendor/phonegap/doc/NOTICE +11 -0
- data/vendor/phonegap/doc/_index.html +355 -0
- data/vendor/phonegap/doc/_index.json +1 -0
- data/vendor/phonegap/doc/arrow.png +0 -0
- data/vendor/phonegap/doc/cordova_accelerometer_accelerometer.md.html +728 -0
- data/vendor/phonegap/doc/cordova_camera_camera.cleanup.md.html +159 -0
- data/vendor/phonegap/doc/cordova_camera_camera.md.html +670 -0
- data/vendor/phonegap/doc/cordova_compass_compass.md.html +707 -0
- data/vendor/phonegap/doc/cordova_connection_connection.md.html +355 -0
- data/vendor/phonegap/doc/cordova_contacts_contacts.md.html +1715 -0
- data/vendor/phonegap/doc/cordova_device_device.md.html +682 -0
- data/vendor/phonegap/doc/cordova_events_events.md.html +1538 -0
- data/vendor/phonegap/doc/cordova_file_file.md.html +2306 -0
- data/vendor/phonegap/doc/cordova_geolocation_geolocation.md.html +1002 -0
- data/vendor/phonegap/doc/cordova_media_capture_capture.md.html +1256 -0
- data/vendor/phonegap/doc/cordova_media_media.md.html +1745 -0
- data/vendor/phonegap/doc/cordova_notification_notification.md.html +691 -0
- data/vendor/phonegap/doc/cordova_storage_storage.md.html +988 -0
- data/vendor/phonegap/doc/guide_command-line_index.md.html +323 -0
- data/vendor/phonegap/doc/guide_cordova-webview_android.md.html +180 -0
- data/vendor/phonegap/doc/guide_cordova-webview_index.md.html +131 -0
- data/vendor/phonegap/doc/guide_cordova-webview_ios.md.html +275 -0
- data/vendor/phonegap/doc/guide_getting-started_android_index.md.html +291 -0
- data/vendor/phonegap/doc/guide_getting-started_bada_index.md.html +225 -0
- data/vendor/phonegap/doc/guide_getting-started_blackberry_index.md.html +267 -0
- data/vendor/phonegap/doc/guide_getting-started_index.md.html +132 -0
- data/vendor/phonegap/doc/guide_getting-started_ios_index.md.html +248 -0
- data/vendor/phonegap/doc/guide_getting-started_symbian_index.md.html +198 -0
- data/vendor/phonegap/doc/guide_getting-started_webos_index.md.html +200 -0
- data/vendor/phonegap/doc/guide_getting-started_windows-phone_index.md.html +228 -0
- data/vendor/phonegap/doc/guide_plugin-development_android_index.md.html +275 -0
- data/vendor/phonegap/doc/guide_plugin-development_bada_index.md.html +192 -0
- data/vendor/phonegap/doc/guide_plugin-development_blackberry_index.md.html +259 -0
- data/vendor/phonegap/doc/guide_plugin-development_index.md.html +230 -0
- data/vendor/phonegap/doc/guide_plugin-development_ios_index.md.html +282 -0
- data/vendor/phonegap/doc/guide_plugin-development_webos_index.md.html +125 -0
- data/vendor/phonegap/doc/guide_plugin-development_windows-phone_index.md.html +125 -0
- data/vendor/phonegap/doc/guide_upgrading_android_index.md.html +321 -0
- data/vendor/phonegap/doc/guide_upgrading_bada_index.md.html +165 -0
- data/vendor/phonegap/doc/guide_upgrading_blackberry_index.md.html +244 -0
- data/vendor/phonegap/doc/guide_upgrading_index.md.html +136 -0
- data/vendor/phonegap/doc/guide_upgrading_ios_index.md.html +547 -0
- data/vendor/phonegap/doc/guide_upgrading_symbian_index.md.html +123 -0
- data/vendor/phonegap/doc/guide_upgrading_webos_index.md.html +161 -0
- data/vendor/phonegap/doc/guide_upgrading_windows-phone_index.md.html +332 -0
- data/vendor/phonegap/doc/guide_whitelist_index.md.html +299 -0
- data/vendor/phonegap/doc/img/guide/getting-started/android/AndroidFlow.png +0 -0
- data/vendor/phonegap/doc/img/guide/getting-started/android/buildPath.jpg +0 -0
- data/vendor/phonegap/doc/img/guide/getting-started/android/javaSrc.jpg +0 -0
- data/vendor/phonegap/doc/img/guide/getting-started/android/manifest.jpg +0 -0
- data/vendor/phonegap/doc/img/guide/getting-started/android/manifest.png +0 -0
- data/vendor/phonegap/doc/img/guide/getting-started/android/new_android_project.jpeg +0 -0
- data/vendor/phonegap/doc/img/guide/getting-started/android/step_1.png +0 -0
- data/vendor/phonegap/doc/img/guide/getting-started/android/step_2.png +0 -0
- data/vendor/phonegap/doc/img/guide/getting-started/android/step_3.png +0 -0
- data/vendor/phonegap/doc/img/guide/getting-started/android/step_4.png +0 -0
- data/vendor/phonegap/doc/img/guide/getting-started/android/step_5.png +0 -0
- data/vendor/phonegap/doc/img/guide/getting-started/bada/bada_1_run.png +0 -0
- data/vendor/phonegap/doc/img/guide/getting-started/bada/bada_2_run.png +0 -0
- data/vendor/phonegap/doc/img/guide/getting-started/bada/bada_project.png +0 -0
- data/vendor/phonegap/doc/img/guide/getting-started/bada/bada_set_target.png +0 -0
- data/vendor/phonegap/doc/img/guide/getting-started/bada/import_bada_project.png +0 -0
- data/vendor/phonegap/doc/img/guide/getting-started/bada/import_bada_project_2.png +0 -0
- data/vendor/phonegap/doc/img/guide/getting-started/ios/HelloWorldiPhone4.png +0 -0
- data/vendor/phonegap/doc/img/guide/getting-started/ios/XCode4-templates.png +0 -0
- data/vendor/phonegap/doc/img/guide/getting-started/ios/bin_create_project.png +0 -0
- data/vendor/phonegap/doc/img/guide/getting-started/ios/bin_folder.png +0 -0
- data/vendor/phonegap/doc/img/guide/getting-started/ios/create-folder-reference.png +0 -0
- data/vendor/phonegap/doc/img/guide/getting-started/ios/index-not-found.png +0 -0
- data/vendor/phonegap/doc/img/guide/getting-started/ios/project.jpg +0 -0
- data/vendor/phonegap/doc/img/guide/getting-started/ios/www-folder.png +0 -0
- data/vendor/phonegap/doc/img/guide/getting-started/ios/xcode4-name_your_app.png +0 -0
- data/vendor/phonegap/doc/img/guide/getting-started/windows-phone/wp7projectstructure.PNG +0 -0
- data/vendor/phonegap/doc/img/guide/getting-started/windows-phone/wpd.png +0 -0
- data/vendor/phonegap/doc/img/guide/getting-started/windows-phone/wpfirstrun.PNG +0 -0
- data/vendor/phonegap/doc/img/guide/getting-started/windows-phone/wpnewproj.PNG +0 -0
- data/vendor/phonegap/doc/img/guide/getting-started/windows-phone/wprun.png +0 -0
- data/vendor/phonegap/doc/index.css +404 -0
- data/vendor/phonegap/doc/index.html +210 -0
- data/vendor/phonegap/doc/index.js +74 -0
- data/vendor/phonegap/doc/line.png +0 -0
- data/vendor/phonegap/doc/mobile.css +139 -0
- data/vendor/phonegap/doc/prettify/LICENSE +191 -0
- data/vendor/phonegap/doc/prettify/lang-apollo.js +2 -0
- data/vendor/phonegap/doc/prettify/lang-css.js +2 -0
- data/vendor/phonegap/doc/prettify/lang-hs.js +2 -0
- data/vendor/phonegap/doc/prettify/lang-lisp.js +2 -0
- data/vendor/phonegap/doc/prettify/lang-lua.js +2 -0
- data/vendor/phonegap/doc/prettify/lang-ml.js +2 -0
- data/vendor/phonegap/doc/prettify/lang-proto.js +1 -0
- data/vendor/phonegap/doc/prettify/lang-scala.js +2 -0
- data/vendor/phonegap/doc/prettify/lang-sql.js +2 -0
- data/vendor/phonegap/doc/prettify/lang-vb.js +2 -0
- data/vendor/phonegap/doc/prettify/lang-vhdl.js +3 -0
- data/vendor/phonegap/doc/prettify/lang-wiki.js +2 -0
- data/vendor/phonegap/doc/prettify/lang-yaml.js +2 -0
- data/vendor/phonegap/doc/prettify/prettify.css +44 -0
- data/vendor/phonegap/doc/prettify/prettify.js +33 -0
- data/vendor/phonegap/keys +201 -0
- data/vendor/phonegap/lib/DISCLAIMER +8 -0
- data/vendor/phonegap/lib/LICENSE +548 -0
- data/vendor/phonegap/lib/NOTICE +11 -0
- data/vendor/phonegap/lib/README.MD +54 -0
- data/vendor/phonegap/lib/android/LICENSE +202 -0
- data/vendor/phonegap/lib/android/NOTICE +5 -0
- data/vendor/phonegap/lib/android/README.md +114 -0
- data/vendor/phonegap/lib/android/VERSION +1 -0
- data/vendor/phonegap/lib/android/bin/create +147 -0
- data/vendor/phonegap/lib/android/bin/create.bat +15 -0
- data/vendor/phonegap/lib/android/bin/create.js +188 -0
- data/vendor/phonegap/lib/android/bin/create.xml +98 -0
- data/vendor/phonegap/lib/android/bin/package.json +22 -0
- data/vendor/phonegap/lib/android/bin/templates/cordova/ApplicationInfo/ApplicationInfo.class +0 -0
- data/vendor/phonegap/lib/android/bin/templates/cordova/ApplicationInfo/ApplicationInfo.java +44 -0
- data/vendor/phonegap/lib/android/bin/templates/cordova/BOOM +7 -0
- data/vendor/phonegap/lib/android/bin/templates/cordova/BOOM.bat +1 -0
- data/vendor/phonegap/lib/android/bin/templates/cordova/appinfo.jar +0 -0
- data/vendor/phonegap/lib/android/bin/templates/cordova/clean +7 -0
- data/vendor/phonegap/lib/android/bin/templates/cordova/clean.bat +1 -0
- data/vendor/phonegap/lib/android/bin/templates/cordova/cordova +85 -0
- data/vendor/phonegap/lib/android/bin/templates/cordova/cordova.bat +15 -0
- data/vendor/phonegap/lib/android/bin/templates/cordova/cordova.js +104 -0
- data/vendor/phonegap/lib/android/bin/templates/cordova/debug +7 -0
- data/vendor/phonegap/lib/android/bin/templates/cordova/debug.bat +1 -0
- data/vendor/phonegap/lib/android/bin/templates/cordova/emulate +7 -0
- data/vendor/phonegap/lib/android/bin/templates/cordova/emulate.bat +1 -0
- data/vendor/phonegap/lib/android/bin/templates/cordova/log +7 -0
- data/vendor/phonegap/lib/android/bin/templates/cordova/log.bat +1 -0
- data/vendor/phonegap/lib/android/bin/templates/project/Activity.java +35 -0
- data/vendor/phonegap/lib/android/bin/templates/project/AndroidManifest.xml +61 -0
- data/vendor/phonegap/lib/android/bin/templates/project/assets/www/index.html +60 -0
- data/vendor/phonegap/lib/android/bin/templates/project/assets/www/main.js +165 -0
- data/vendor/phonegap/lib/android/bin/templates/project/assets/www/master.css +116 -0
- data/vendor/phonegap/lib/android/bin/templates/project/res/drawable-hdpi/icon.png +0 -0
- data/vendor/phonegap/lib/android/bin/templates/project/res/drawable-ldpi/icon.png +0 -0
- data/vendor/phonegap/lib/android/bin/templates/project/res/drawable-mdpi/icon.png +0 -0
- data/vendor/phonegap/lib/android/bin/templates/project/res/drawable-xhdpi/icon.png +0 -0
- data/vendor/phonegap/lib/android/bin/templates/project/res/drawable/icon.png +0 -0
- data/vendor/phonegap/lib/android/bin/tests/test_create_unix.js +135 -0
- data/vendor/phonegap/lib/android/bin/tests/test_create_win.js +143 -0
- data/vendor/phonegap/lib/android/cordova-2.0.0.jar +0 -0
- data/vendor/phonegap/lib/android/cordova-2.0.0.js +5724 -0
- data/vendor/phonegap/lib/android/example/AndroidManifest.xml +61 -0
- data/vendor/phonegap/lib/android/example/ant.properties +17 -0
- data/vendor/phonegap/lib/android/example/assets/www/cordova-2.0.0.js +5724 -0
- data/vendor/phonegap/lib/android/example/assets/www/index.html +60 -0
- data/vendor/phonegap/lib/android/example/assets/www/main.js +165 -0
- data/vendor/phonegap/lib/android/example/assets/www/master.css +116 -0
- data/vendor/phonegap/lib/android/example/build.xml +83 -0
- data/vendor/phonegap/lib/android/example/cordova/BOOM +7 -0
- data/vendor/phonegap/lib/android/example/cordova/appinfo.jar +0 -0
- data/vendor/phonegap/lib/android/example/cordova/clean +7 -0
- data/vendor/phonegap/lib/android/example/cordova/cordova +85 -0
- data/vendor/phonegap/lib/android/example/cordova/debug +7 -0
- data/vendor/phonegap/lib/android/example/cordova/emulate +7 -0
- data/vendor/phonegap/lib/android/example/cordova/log +7 -0
- data/vendor/phonegap/lib/android/example/libs/cordova-2.0.0.jar +0 -0
- data/vendor/phonegap/lib/android/example/proguard-project.txt +20 -0
- data/vendor/phonegap/lib/android/example/project.properties +14 -0
- data/vendor/phonegap/lib/android/example/res/drawable-hdpi/ic_launcher.png +0 -0
- data/vendor/phonegap/lib/android/example/res/drawable-hdpi/icon.png +0 -0
- data/vendor/phonegap/lib/android/example/res/drawable-ldpi/ic_launcher.png +0 -0
- data/vendor/phonegap/lib/android/example/res/drawable-ldpi/icon.png +0 -0
- data/vendor/phonegap/lib/android/example/res/drawable-mdpi/ic_launcher.png +0 -0
- data/vendor/phonegap/lib/android/example/res/drawable-mdpi/icon.png +0 -0
- data/vendor/phonegap/lib/android/example/res/drawable-xhdpi/icon.png +0 -0
- data/vendor/phonegap/lib/android/example/res/drawable/icon.png +0 -0
- data/vendor/phonegap/lib/android/example/res/layout/main.xml +13 -0
- data/vendor/phonegap/lib/android/example/res/values/strings.xml +4 -0
- data/vendor/phonegap/lib/android/example/res/xml/config.xml +54 -0
- data/vendor/phonegap/lib/android/example/src/org/apache/cordova/example/cordovaExample.java +35 -0
- data/vendor/phonegap/lib/android/xml/config.xml +54 -0
- data/vendor/phonegap/lib/bada/Icons/Cordova.png +0 -0
- data/vendor/phonegap/lib/bada/Icons/Cordova_Splash.png +0 -0
- data/vendor/phonegap/lib/bada/LICENSE +202 -0
- data/vendor/phonegap/lib/bada/NOTICE +5 -0
- data/vendor/phonegap/lib/bada/README.md +48 -0
- data/vendor/phonegap/lib/bada/Res/cordova/accelerometer.js +131 -0
- data/vendor/phonegap/lib/bada/Res/cordova/camera.js +102 -0
- data/vendor/phonegap/lib/bada/Res/cordova/compass.js +77 -0
- data/vendor/phonegap/lib/bada/Res/cordova/contact.js +355 -0
- data/vendor/phonegap/lib/bada/Res/cordova/cordova.base.js +561 -0
- data/vendor/phonegap/lib/bada/Res/cordova/cordova.bat +21 -0
- data/vendor/phonegap/lib/bada/Res/cordova/cordova.js +1661 -0
- data/vendor/phonegap/lib/bada/Res/cordova/debugconsole.js +126 -0
- data/vendor/phonegap/lib/bada/Res/cordova/device.js +46 -0
- data/vendor/phonegap/lib/bada/Res/cordova/file.js +682 -0
- data/vendor/phonegap/lib/bada/Res/cordova/geolocation.js +152 -0
- data/vendor/phonegap/lib/bada/Res/cordova/network.js +70 -0
- data/vendor/phonegap/lib/bada/Res/cordova/notification.js +117 -0
- data/vendor/phonegap/lib/bada/Res/cordova/position.js +74 -0
- data/vendor/phonegap/lib/bada/Res/eng-GB.xml +26 -0
- data/vendor/phonegap/lib/bada/Res/images/cordova_logo_normal_dark.png +0 -0
- data/vendor/phonegap/lib/bada/Res/index.html +108 -0
- data/vendor/phonegap/lib/bada/Res/main.js +390 -0
- data/vendor/phonegap/lib/bada/VERSION +1 -0
- data/vendor/phonegap/lib/bada/application.xml +45 -0
- data/vendor/phonegap/lib/bada/inc/Accelerometer.h +54 -0
- data/vendor/phonegap/lib/bada/inc/Compass.h +52 -0
- data/vendor/phonegap/lib/bada/inc/Contacts.h +62 -0
- data/vendor/phonegap/lib/bada/inc/Cordova.h +82 -0
- data/vendor/phonegap/lib/bada/inc/CordovaCommand.h +46 -0
- data/vendor/phonegap/lib/bada/inc/DebugConsole.h +41 -0
- data/vendor/phonegap/lib/bada/inc/Device.h +43 -0
- data/vendor/phonegap/lib/bada/inc/GeoLocation.h +52 -0
- data/vendor/phonegap/lib/bada/inc/Kamera.h +49 -0
- data/vendor/phonegap/lib/bada/inc/Network.h +56 -0
- data/vendor/phonegap/lib/bada/inc/Notification.h +50 -0
- data/vendor/phonegap/lib/bada/inc/WebForm.h +97 -0
- data/vendor/phonegap/lib/bada/manifest.xml +61 -0
- data/vendor/phonegap/lib/bada/src/Accelerometer.cpp +135 -0
- data/vendor/phonegap/lib/bada/src/Compass.cpp +131 -0
- data/vendor/phonegap/lib/bada/src/Contacts.cpp +600 -0
- data/vendor/phonegap/lib/bada/src/Cordova.cpp +139 -0
- data/vendor/phonegap/lib/bada/src/CordovaCommand.cpp +33 -0
- data/vendor/phonegap/lib/bada/src/CordovaEntry.cpp +60 -0
- data/vendor/phonegap/lib/bada/src/DebugConsole.cpp +81 -0
- data/vendor/phonegap/lib/bada/src/Device.cpp +81 -0
- data/vendor/phonegap/lib/bada/src/GeoLocation.cpp +144 -0
- data/vendor/phonegap/lib/bada/src/Kamera.cpp +121 -0
- data/vendor/phonegap/lib/bada/src/Network.cpp +123 -0
- data/vendor/phonegap/lib/bada/src/Notification.cpp +176 -0
- data/vendor/phonegap/lib/bada/src/WebForm.cpp +231 -0
- data/vendor/phonegap/lib/badaWac/Icons/codova_bada_wac_splash_type4.png +0 -0
- data/vendor/phonegap/lib/badaWac/Icons/codova_bada_wac_splash_type5.png +0 -0
- data/vendor/phonegap/lib/badaWac/Icons/cordova_bada_icon_type5.png +0 -0
- data/vendor/phonegap/lib/badaWac/Icons/cordova_bada_wac_icon_type3.png +0 -0
- data/vendor/phonegap/lib/badaWac/Icons/cordova_bada_wac_icon_type4.png +0 -0
- data/vendor/phonegap/lib/badaWac/Icons/cordova_bada_wac_splash_type3.png +0 -0
- data/vendor/phonegap/lib/badaWac/LICENSE +201 -0
- data/vendor/phonegap/lib/badaWac/NOTICE +5 -0
- data/vendor/phonegap/lib/badaWac/README.md +12 -0
- data/vendor/phonegap/lib/badaWac/Res/config.xml +47 -0
- data/vendor/phonegap/lib/badaWac/Res/cordova-2.0.0.js +5676 -0
- data/vendor/phonegap/lib/badaWac/Res/css/index.css +100 -0
- data/vendor/phonegap/lib/badaWac/Res/img/cordova.png +0 -0
- data/vendor/phonegap/lib/badaWac/Res/index.html +24 -0
- data/vendor/phonegap/lib/badaWac/Res/js/index.js +15 -0
- data/vendor/phonegap/lib/badaWac/Res/res/icon/cordova_128.png +0 -0
- data/vendor/phonegap/lib/badaWac/Res/res/icon/cordova_16.png +0 -0
- data/vendor/phonegap/lib/badaWac/Res/res/icon/cordova_24.png +0 -0
- data/vendor/phonegap/lib/badaWac/Res/res/icon/cordova_256.png +0 -0
- data/vendor/phonegap/lib/badaWac/Res/res/icon/cordova_32.png +0 -0
- data/vendor/phonegap/lib/badaWac/Res/res/icon/cordova_48.png +0 -0
- data/vendor/phonegap/lib/badaWac/Res/res/icon/cordova_512.png +0 -0
- data/vendor/phonegap/lib/badaWac/Res/res/icon/cordova_64.png +0 -0
- data/vendor/phonegap/lib/badaWac/Res/res/icon/cordova_android_36.png +0 -0
- data/vendor/phonegap/lib/badaWac/Res/res/icon/cordova_android_48.png +0 -0
- data/vendor/phonegap/lib/badaWac/Res/res/icon/cordova_android_72.png +0 -0
- data/vendor/phonegap/lib/badaWac/Res/res/icon/cordova_android_96.png +0 -0
- data/vendor/phonegap/lib/badaWac/Res/res/icon/cordova_bb_80.png +0 -0
- data/vendor/phonegap/lib/badaWac/Res/res/icon/cordova_ios_114.png +0 -0
- data/vendor/phonegap/lib/badaWac/Res/res/icon/cordova_ios_144.png +0 -0
- data/vendor/phonegap/lib/badaWac/Res/res/icon/cordova_ios_57.png +0 -0
- data/vendor/phonegap/lib/badaWac/Res/res/icon/cordova_ios_72.png +0 -0
- data/vendor/phonegap/lib/badaWac/Res/res/screen/android_hdpi_landscape.png +0 -0
- data/vendor/phonegap/lib/badaWac/Res/res/screen/android_hdpi_portrait.png +0 -0
- data/vendor/phonegap/lib/badaWac/Res/res/screen/android_ldpi_landscape.png +0 -0
- data/vendor/phonegap/lib/badaWac/Res/res/screen/android_ldpi_portrait.png +0 -0
- data/vendor/phonegap/lib/badaWac/Res/res/screen/android_mdpi_landscape.png +0 -0
- data/vendor/phonegap/lib/badaWac/Res/res/screen/android_mdpi_portrait.png +0 -0
- data/vendor/phonegap/lib/badaWac/Res/res/screen/android_xhdpi_landscape.png +0 -0
- data/vendor/phonegap/lib/badaWac/Res/res/screen/android_xhdpi_portrait.png +0 -0
- data/vendor/phonegap/lib/badaWac/Res/res/screen/blackberry_transparent_300.png +0 -0
- data/vendor/phonegap/lib/badaWac/Res/res/screen/blackberry_transparent_400.png +0 -0
- data/vendor/phonegap/lib/badaWac/Res/res/screen/ipad_landscape.png +0 -0
- data/vendor/phonegap/lib/badaWac/Res/res/screen/ipad_portrait.png +0 -0
- data/vendor/phonegap/lib/badaWac/Res/res/screen/ipad_retina_landscape.png +0 -0
- data/vendor/phonegap/lib/badaWac/Res/res/screen/ipad_retina_portrait.png +0 -0
- data/vendor/phonegap/lib/badaWac/Res/res/screen/iphone_landscape.png +0 -0
- data/vendor/phonegap/lib/badaWac/Res/res/screen/iphone_portrait.png +0 -0
- data/vendor/phonegap/lib/badaWac/Res/res/screen/iphone_retina_landscape.png +0 -0
- data/vendor/phonegap/lib/badaWac/Res/res/screen/iphone_retina_portrait.png +0 -0
- data/vendor/phonegap/lib/badaWac/Res/res/screen/windows_phone_portrait.jpg +0 -0
- data/vendor/phonegap/lib/badaWac/Res/sample/index.html +167 -0
- data/vendor/phonegap/lib/badaWac/Res/sample/js/cordova.js +5576 -0
- data/vendor/phonegap/lib/badaWac/Res/sample/js/sample.js +404 -0
- data/vendor/phonegap/lib/badaWac/Res/spec.html +50 -0
- data/vendor/phonegap/lib/badaWac/Res/spec/helper.js +11 -0
- data/vendor/phonegap/lib/badaWac/Res/spec/index.js +49 -0
- data/vendor/phonegap/lib/badaWac/Res/spec/lib/jasmine-1.2.0/MIT.LICENSE +20 -0
- data/vendor/phonegap/lib/badaWac/Res/spec/lib/jasmine-1.2.0/jasmine-html.js +616 -0
- data/vendor/phonegap/lib/badaWac/Res/spec/lib/jasmine-1.2.0/jasmine.css +81 -0
- data/vendor/phonegap/lib/badaWac/Res/spec/lib/jasmine-1.2.0/jasmine.js +2529 -0
- data/vendor/phonegap/lib/badaWac/VERSION +1 -0
- data/vendor/phonegap/lib/badaWac/application.xml +51 -0
- data/vendor/phonegap/lib/badaWac/manifest.xml +58 -0
- data/vendor/phonegap/lib/blackberry/LICENSE +268 -0
- data/vendor/phonegap/lib/blackberry/NOTICE +8 -0
- data/vendor/phonegap/lib/blackberry/README.md +90 -0
- data/vendor/phonegap/lib/blackberry/VERSION +1 -0
- data/vendor/phonegap/lib/blackberry/bin/create +84 -0
- data/vendor/phonegap/lib/blackberry/bin/create.bat +14 -0
- data/vendor/phonegap/lib/blackberry/bin/create.js +94 -0
- data/vendor/phonegap/lib/blackberry/bin/templates/dist/README.md +90 -0
- data/vendor/phonegap/lib/blackberry/bin/templates/project/blackberry.xml +356 -0
- data/vendor/phonegap/lib/blackberry/bin/templates/project/build.xml +138 -0
- data/vendor/phonegap/lib/blackberry/bin/templates/project/cordova/debug +53 -0
- data/vendor/phonegap/lib/blackberry/bin/templates/project/cordova/emulate +40 -0
- data/vendor/phonegap/lib/blackberry/bin/templates/project/lib/ant-contrib/LICENSE.txt +47 -0
- data/vendor/phonegap/lib/blackberry/bin/templates/project/lib/ant-contrib/ant-contrib-1.0b3.jar +0 -0
- data/vendor/phonegap/lib/blackberry/bin/templates/project/playbook.xml +283 -0
- data/vendor/phonegap/lib/blackberry/bin/templates/project/project.properties +97 -0
- data/vendor/phonegap/lib/blackberry/bin/templates/project/www/config.xml +82 -0
- data/vendor/phonegap/lib/blackberry/bin/templates/project/www/index.html +976 -0
- data/vendor/phonegap/lib/blackberry/bin/templates/project/www/json2.js +482 -0
- data/vendor/phonegap/lib/blackberry/bin/templates/project/www/plugins.xml +34 -0
- data/vendor/phonegap/lib/blackberry/bin/templates/project/www/resources/icon.png +0 -0
- data/vendor/phonegap/lib/blackberry/bin/templates/project/www/resources/loading_foreground.png +0 -0
- data/vendor/phonegap/lib/blackberry/sample/blackberry.xml +356 -0
- data/vendor/phonegap/lib/blackberry/sample/build.xml +138 -0
- data/vendor/phonegap/lib/blackberry/sample/cordova/debug +53 -0
- data/vendor/phonegap/lib/blackberry/sample/cordova/emulate +40 -0
- data/vendor/phonegap/lib/blackberry/sample/lib/ant-contrib/LICENSE.txt +47 -0
- data/vendor/phonegap/lib/blackberry/sample/lib/ant-contrib/ant-contrib-1.0b3.jar +0 -0
- data/vendor/phonegap/lib/blackberry/sample/lib/cordova.2.0.0/ext-air/Cordova_Network/library.xml +40 -0
- data/vendor/phonegap/lib/blackberry/sample/lib/cordova.2.0.0/ext-air/Cordova_Network/src/org/apache/cordova/network/Network.as +80 -0
- data/vendor/phonegap/lib/blackberry/sample/lib/cordova.2.0.0/ext/cordova.2.0.0.jar +0 -0
- data/vendor/phonegap/lib/blackberry/sample/lib/cordova.2.0.0/javascript/cordova-2.0.0.js +6407 -0
- data/vendor/phonegap/lib/blackberry/sample/lib/cordova.2.0.0/javascript/playbook/cordova-2.0.0.js +6845 -0
- data/vendor/phonegap/lib/blackberry/sample/playbook.xml +283 -0
- data/vendor/phonegap/lib/blackberry/sample/project.properties +97 -0
- data/vendor/phonegap/lib/blackberry/sample/www/config.xml +82 -0
- data/vendor/phonegap/lib/blackberry/sample/www/cordova-2.0.0.js +6407 -0
- data/vendor/phonegap/lib/blackberry/sample/www/ext-air/Cordova_Network/library.xml +40 -0
- data/vendor/phonegap/lib/blackberry/sample/www/ext-air/Cordova_Network/src/org/apache/cordova/network/Network.as +80 -0
- data/vendor/phonegap/lib/blackberry/sample/www/ext/cordova.2.0.0.jar +0 -0
- data/vendor/phonegap/lib/blackberry/sample/www/index.html +976 -0
- data/vendor/phonegap/lib/blackberry/sample/www/json2.js +482 -0
- data/vendor/phonegap/lib/blackberry/sample/www/playbook/cordova-2.0.0.js +6845 -0
- data/vendor/phonegap/lib/blackberry/sample/www/plugins.xml +34 -0
- data/vendor/phonegap/lib/blackberry/sample/www/resources/icon.png +0 -0
- data/vendor/phonegap/lib/blackberry/sample/www/resources/loading_foreground.png +0 -0
- data/vendor/phonegap/lib/blackberry/www/config.xml +82 -0
- data/vendor/phonegap/lib/blackberry/www/cordova-2.0.0.js +6407 -0
- data/vendor/phonegap/lib/blackberry/www/ext-air/Cordova_Network/library.xml +40 -0
- data/vendor/phonegap/lib/blackberry/www/ext-air/Cordova_Network/src/org/apache/cordova/network/Network.as +80 -0
- data/vendor/phonegap/lib/blackberry/www/ext/cordova.2.0.0.jar +0 -0
- data/vendor/phonegap/lib/blackberry/www/playbook/cordova-2.0.0.js +6845 -0
- data/vendor/phonegap/lib/blackberry/www/plugins.xml +34 -0
- data/vendor/phonegap/lib/ios/Cordova-2.0.0.dmg +0 -0
- data/vendor/phonegap/lib/ios/Cordova-2.0.0.dmg.SHA1 +1 -0
- data/vendor/phonegap/lib/ios/LICENSE +394 -0
- data/vendor/phonegap/lib/ios/NOTICE +5 -0
- data/vendor/phonegap/lib/ios/bin/BOOM +27 -0
- data/vendor/phonegap/lib/ios/bin/README.md +29 -0
- data/vendor/phonegap/lib/ios/bin/_build.sh +92 -0
- data/vendor/phonegap/lib/ios/bin/autotest +24 -0
- data/vendor/phonegap/lib/ios/bin/bench +48 -0
- data/vendor/phonegap/lib/ios/bin/create +99 -0
- data/vendor/phonegap/lib/ios/bin/package.json +15 -0
- data/vendor/phonegap/lib/ios/bin/replaces +28 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/__TESTING__.xcodeproj/TemplateIcon.icns +0 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/__TESTING__.xcodeproj/TemplateInfo.plist +28 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/__TESTING__.xcodeproj/project.pbxproj +638 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/__TESTING__/.gitignore +6 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/__TESTING__/Classes/AppDelegate.h +45 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/__TESTING__/Classes/AppDelegate.m +135 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/__TESTING__/Classes/MainViewController.h +32 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/__TESTING__/Classes/MainViewController.m +141 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/__TESTING__/Classes/MainViewController.xib +138 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/__TESTING__/Cordova.plist +83 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/__TESTING__/CordovaBuildSettings.xcconfig +26 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/__TESTING__/Plugins/README +20 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/__TESTING__/Resources/Capture.bundle/controls_bg.png +0 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/__TESTING__/Resources/Capture.bundle/controls_bg@2x.png +0 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/__TESTING__/Resources/Capture.bundle/controls_bg@2x~ipad.png +0 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/__TESTING__/Resources/Capture.bundle/controls_bg~ipad.png +0 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/__TESTING__/Resources/Capture.bundle/microphone.png +0 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/__TESTING__/Resources/Capture.bundle/microphone@2x.png +0 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/__TESTING__/Resources/Capture.bundle/microphone@2x~ipad.png +0 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/__TESTING__/Resources/Capture.bundle/microphone~ipad.png +0 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/__TESTING__/Resources/Capture.bundle/record_button.png +0 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/__TESTING__/Resources/Capture.bundle/record_button@2x.png +0 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/__TESTING__/Resources/Capture.bundle/record_button@2x~ipad.png +0 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/__TESTING__/Resources/Capture.bundle/record_button~ipad.png +0 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/__TESTING__/Resources/Capture.bundle/recording_bg.png +0 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/__TESTING__/Resources/Capture.bundle/recording_bg@2x.png +0 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/__TESTING__/Resources/Capture.bundle/recording_bg@2x~ipad.png +0 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/__TESTING__/Resources/Capture.bundle/recording_bg~ipad.png +0 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/__TESTING__/Resources/Capture.bundle/stop_button.png +0 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/__TESTING__/Resources/Capture.bundle/stop_button@2x.png +0 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/__TESTING__/Resources/Capture.bundle/stop_button@2x~ipad.png +0 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/__TESTING__/Resources/Capture.bundle/stop_button~ipad.png +0 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/__TESTING__/Resources/de.lproj/Localizable.strings +26 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/__TESTING__/Resources/en.lproj/Localizable.strings +25 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/__TESTING__/Resources/es.lproj/Localizable.strings +25 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/__TESTING__/Resources/icons/icon-72.png +0 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/__TESTING__/Resources/icons/icon-72@2x.png +0 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/__TESTING__/Resources/icons/icon.png +0 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/__TESTING__/Resources/icons/icon@2x.png +0 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/__TESTING__/Resources/se.lproj/Localizable.strings +26 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/__TESTING__/Resources/splash/Default-Landscape@2x~ipad.png +0 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/__TESTING__/Resources/splash/Default-Landscape~ipad.png +0 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/__TESTING__/Resources/splash/Default-Portrait@2x~ipad.png +0 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/__TESTING__/Resources/splash/Default-Portrait~ipad.png +0 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/__TESTING__/Resources/splash/Default@2x~iphone.png +0 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/__TESTING__/Resources/splash/Default~iphone.png +0 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/__TESTING__/__TESTING__-Info.plist +78 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/__TESTING__/__TESTING__-Prefix.pch +26 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/__TESTING__/main.m +35 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/cordova/debug +47 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/cordova/emulate +58 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/cordova/log +26 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/www/config.xml +47 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/www/cordova-2.0.0.js +5240 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/www/css/index.css +100 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/www/img/cordova.png +0 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/www/index.html +44 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/www/js/index.js +20 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/www/res/icon/cordova_128.png +0 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/www/res/icon/cordova_16.png +0 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/www/res/icon/cordova_24.png +0 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/www/res/icon/cordova_256.png +0 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/www/res/icon/cordova_32.png +0 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/www/res/icon/cordova_48.png +0 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/www/res/icon/cordova_512.png +0 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/www/res/icon/cordova_64.png +0 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/www/res/icon/cordova_android_36.png +0 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/www/res/icon/cordova_android_48.png +0 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/www/res/icon/cordova_android_72.png +0 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/www/res/icon/cordova_android_96.png +0 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/www/res/icon/cordova_bb_80.png +0 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/www/res/icon/cordova_ios_114.png +0 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/www/res/icon/cordova_ios_144.png +0 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/www/res/icon/cordova_ios_57.png +0 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/www/res/icon/cordova_ios_72.png +0 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/www/res/screen/android_hdpi_landscape.png +0 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/www/res/screen/android_hdpi_portrait.png +0 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/www/res/screen/android_ldpi_landscape.png +0 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/www/res/screen/android_ldpi_portrait.png +0 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/www/res/screen/android_mdpi_landscape.png +0 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/www/res/screen/android_mdpi_portrait.png +0 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/www/res/screen/android_xhdpi_landscape.png +0 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/www/res/screen/android_xhdpi_portrait.png +0 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/www/res/screen/blackberry_transparent_300.png +0 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/www/res/screen/blackberry_transparent_400.png +0 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/www/res/screen/ipad_landscape.png +0 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/www/res/screen/ipad_portrait.png +0 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/www/res/screen/ipad_retina_landscape.png +0 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/www/res/screen/ipad_retina_portrait.png +0 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/www/res/screen/iphone_landscape.png +0 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/www/res/screen/iphone_portrait.png +0 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/www/res/screen/iphone_retina_landscape.png +0 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/www/res/screen/iphone_retina_portrait.png +0 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/www/res/screen/windows_phone_portrait.jpg +0 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/www/spec.html +50 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/www/spec/helper.js +11 -0
- data/vendor/phonegap/lib/ios/bin/templates/project/www/spec/index.js +49 -0
- data/vendor/phonegap/lib/ios/bin/test +44 -0
- data/vendor/phonegap/lib/ios/bin/tests/autotest.coffee +24 -0
- data/vendor/phonegap/lib/ios/bin/tests/create.coffee +34 -0
- data/vendor/phonegap/lib/ios/bin/tests/debug.coffee +18 -0
- data/vendor/phonegap/lib/ios/bin/tests/test.coffee +18 -0
- data/vendor/phonegap/lib/symbian/deprecated.txt +1 -0
- data/vendor/phonegap/lib/webos/LICENSE +202 -0
- data/vendor/phonegap/lib/webos/Makefile +127 -0
- data/vendor/phonegap/lib/webos/NOTICE +11 -0
- data/vendor/phonegap/lib/webos/README.md +52 -0
- data/vendor/phonegap/lib/webos/VERSION +1 -0
- data/vendor/phonegap/lib/webos/framework/appinfo.json +10 -0
- data/vendor/phonegap/lib/webos/framework/config.xml +47 -0
- data/vendor/phonegap/lib/webos/framework/cordova_48.png +0 -0
- data/vendor/phonegap/lib/webos/framework/css/index.css +100 -0
- data/vendor/phonegap/lib/webos/framework/img/cordova.png +0 -0
- data/vendor/phonegap/lib/webos/framework/index.html +24 -0
- data/vendor/phonegap/lib/webos/framework/js/index.js +20 -0
- data/vendor/phonegap/lib/webos/framework/res/icon/cordova_128.png +0 -0
- data/vendor/phonegap/lib/webos/framework/res/icon/cordova_16.png +0 -0
- data/vendor/phonegap/lib/webos/framework/res/icon/cordova_24.png +0 -0
- data/vendor/phonegap/lib/webos/framework/res/icon/cordova_256.png +0 -0
- data/vendor/phonegap/lib/webos/framework/res/icon/cordova_32.png +0 -0
- data/vendor/phonegap/lib/webos/framework/res/icon/cordova_48.png +0 -0
- data/vendor/phonegap/lib/webos/framework/res/icon/cordova_512.png +0 -0
- data/vendor/phonegap/lib/webos/framework/res/icon/cordova_64.png +0 -0
- data/vendor/phonegap/lib/webos/framework/res/icon/cordova_android_36.png +0 -0
- data/vendor/phonegap/lib/webos/framework/res/icon/cordova_android_48.png +0 -0
- data/vendor/phonegap/lib/webos/framework/res/icon/cordova_android_72.png +0 -0
- data/vendor/phonegap/lib/webos/framework/res/icon/cordova_android_96.png +0 -0
- data/vendor/phonegap/lib/webos/framework/res/icon/cordova_bb_80.png +0 -0
- data/vendor/phonegap/lib/webos/framework/res/icon/cordova_ios_114.png +0 -0
- data/vendor/phonegap/lib/webos/framework/res/icon/cordova_ios_144.png +0 -0
- data/vendor/phonegap/lib/webos/framework/res/icon/cordova_ios_57.png +0 -0
- data/vendor/phonegap/lib/webos/framework/res/icon/cordova_ios_72.png +0 -0
- data/vendor/phonegap/lib/webos/framework/res/screen/android_hdpi_landscape.png +0 -0
- data/vendor/phonegap/lib/webos/framework/res/screen/android_hdpi_portrait.png +0 -0
- data/vendor/phonegap/lib/webos/framework/res/screen/android_ldpi_landscape.png +0 -0
- data/vendor/phonegap/lib/webos/framework/res/screen/android_ldpi_portrait.png +0 -0
- data/vendor/phonegap/lib/webos/framework/res/screen/android_mdpi_landscape.png +0 -0
- data/vendor/phonegap/lib/webos/framework/res/screen/android_mdpi_portrait.png +0 -0
- data/vendor/phonegap/lib/webos/framework/res/screen/android_xhdpi_landscape.png +0 -0
- data/vendor/phonegap/lib/webos/framework/res/screen/android_xhdpi_portrait.png +0 -0
- data/vendor/phonegap/lib/webos/framework/res/screen/blackberry_transparent_300.png +0 -0
- data/vendor/phonegap/lib/webos/framework/res/screen/blackberry_transparent_400.png +0 -0
- data/vendor/phonegap/lib/webos/framework/res/screen/ipad_landscape.png +0 -0
- data/vendor/phonegap/lib/webos/framework/res/screen/ipad_portrait.png +0 -0
- data/vendor/phonegap/lib/webos/framework/res/screen/ipad_retina_landscape.png +0 -0
- data/vendor/phonegap/lib/webos/framework/res/screen/ipad_retina_portrait.png +0 -0
- data/vendor/phonegap/lib/webos/framework/res/screen/iphone_landscape.png +0 -0
- data/vendor/phonegap/lib/webos/framework/res/screen/iphone_portrait.png +0 -0
- data/vendor/phonegap/lib/webos/framework/res/screen/iphone_retina_landscape.png +0 -0
- data/vendor/phonegap/lib/webos/framework/res/screen/iphone_retina_portrait.png +0 -0
- data/vendor/phonegap/lib/webos/framework/res/screen/windows_phone_portrait.jpg +0 -0
- data/vendor/phonegap/lib/webos/framework/spec.html +50 -0
- data/vendor/phonegap/lib/webos/framework/spec/helper.js +11 -0
- data/vendor/phonegap/lib/webos/framework/spec/index.js +49 -0
- data/vendor/phonegap/lib/webos/framework/spec/lib/jasmine-1.2.0/MIT.LICENSE +20 -0
- data/vendor/phonegap/lib/webos/framework/spec/lib/jasmine-1.2.0/jasmine-html.js +616 -0
- data/vendor/phonegap/lib/webos/framework/spec/lib/jasmine-1.2.0/jasmine.css +81 -0
- data/vendor/phonegap/lib/webos/framework/spec/lib/jasmine-1.2.0/jasmine.js +2529 -0
- data/vendor/phonegap/lib/webos/js/acceleration.js +59 -0
- data/vendor/phonegap/lib/webos/js/accelerometer.js +133 -0
- data/vendor/phonegap/lib/webos/js/application.js +54 -0
- data/vendor/phonegap/lib/webos/js/audio.js +113 -0
- data/vendor/phonegap/lib/webos/js/camera.js +60 -0
- data/vendor/phonegap/lib/webos/js/compass.js +167 -0
- data/vendor/phonegap/lib/webos/js/contacts.js +69 -0
- data/vendor/phonegap/lib/webos/js/cordova-core.js +405 -0
- data/vendor/phonegap/lib/webos/js/debugconsole.js +62 -0
- data/vendor/phonegap/lib/webos/js/device.js +98 -0
- data/vendor/phonegap/lib/webos/js/file.js +79 -0
- data/vendor/phonegap/lib/webos/js/geolocation.js +232 -0
- data/vendor/phonegap/lib/webos/js/map.js +67 -0
- data/vendor/phonegap/lib/webos/js/mojo.js +81 -0
- data/vendor/phonegap/lib/webos/js/mouse.js +40 -0
- data/vendor/phonegap/lib/webos/js/network.js +96 -0
- data/vendor/phonegap/lib/webos/js/notification.js +139 -0
- data/vendor/phonegap/lib/webos/js/orientation.js +124 -0
- data/vendor/phonegap/lib/webos/js/position.js +87 -0
- data/vendor/phonegap/lib/webos/js/service.js +74 -0
- data/vendor/phonegap/lib/webos/js/sms.js +60 -0
- data/vendor/phonegap/lib/webos/js/telephony.js +45 -0
- data/vendor/phonegap/lib/webos/js/window.js +88 -0
- data/vendor/phonegap/lib/webos/js/windowproperties.js +31 -0
- data/vendor/phonegap/lib/webos/lib/thumbs.0.5.2.js +104 -0
- data/vendor/phonegap/lib/windows-phone/LICENSE +12 -0
- data/vendor/phonegap/lib/windows-phone/NOTICE +5 -0
- data/vendor/phonegap/lib/windows-phone/README.md +50 -0
- data/vendor/phonegap/lib/windows-phone/VERSION +1 -0
- data/vendor/phonegap/lib/windows-phone/bin/create.bat +1 -0
- data/vendor/phonegap/lib/windows-phone/bin/create.js +154 -0
- data/vendor/phonegap/lib/windows-phone/example/App.xaml +37 -0
- data/vendor/phonegap/lib/windows-phone/example/App.xaml.cs +154 -0
- data/vendor/phonegap/lib/windows-phone/example/ApplicationIcon.png +0 -0
- data/vendor/phonegap/lib/windows-phone/example/Background.png +0 -0
- data/vendor/phonegap/lib/windows-phone/example/BuildManifestProcessor.js +81 -0
- data/vendor/phonegap/lib/windows-phone/example/CordovaExample.csproj +195 -0
- data/vendor/phonegap/lib/windows-phone/example/CordovaExample.sln +28 -0
- data/vendor/phonegap/lib/windows-phone/example/CordovaSourceDictionary.xml +4 -0
- data/vendor/phonegap/lib/windows-phone/example/MainPage.xaml +52 -0
- data/vendor/phonegap/lib/windows-phone/example/MainPage.xaml.cs +70 -0
- data/vendor/phonegap/lib/windows-phone/example/Plugins/Calculator.cs +46 -0
- data/vendor/phonegap/lib/windows-phone/example/Properties/AppManifest.xml +24 -0
- data/vendor/phonegap/lib/windows-phone/example/Properties/AssemblyInfo.cs +38 -0
- data/vendor/phonegap/lib/windows-phone/example/Properties/WMAppManifest.xml +59 -0
- data/vendor/phonegap/lib/windows-phone/example/SplashScreenImage.jpg +0 -0
- data/vendor/phonegap/lib/windows-phone/example/www/accelerometer.html +164 -0
- data/vendor/phonegap/lib/windows-phone/example/www/accelerometer2.html +175 -0
- data/vendor/phonegap/lib/windows-phone/example/www/audio.html +267 -0
- data/vendor/phonegap/lib/windows-phone/example/www/calculator.html +84 -0
- data/vendor/phonegap/lib/windows-phone/example/www/camera.html +115 -0
- data/vendor/phonegap/lib/windows-phone/example/www/capture.html +207 -0
- data/vendor/phonegap/lib/windows-phone/example/www/compass.html +150 -0
- data/vendor/phonegap/lib/windows-phone/example/www/contacts.html +169 -0
- data/vendor/phonegap/lib/windows-phone/example/www/cordova-2.0.0.js +5658 -0
- data/vendor/phonegap/lib/windows-phone/example/www/events.html +146 -0
- data/vendor/phonegap/lib/windows-phone/example/www/file.html +284 -0
- data/vendor/phonegap/lib/windows-phone/example/www/index.html +108 -0
- data/vendor/phonegap/lib/windows-phone/example/www/location.html +165 -0
- data/vendor/phonegap/lib/windows-phone/example/www/master.css +156 -0
- data/vendor/phonegap/lib/windows-phone/example/www/network.html +96 -0
- data/vendor/phonegap/lib/windows-phone/example/www/notification.html +112 -0
- data/vendor/phonegap/lib/windows-phone/example/www/storage.html +78 -0
- data/vendor/phonegap/lib/windows-phone/framework/Images/appbar.back.rest.png +0 -0
- data/vendor/phonegap/lib/windows-phone/framework/Images/appbar.close.rest.png +0 -0
- data/vendor/phonegap/lib/windows-phone/framework/Images/appbar.feature.video.rest.png +0 -0
- data/vendor/phonegap/lib/windows-phone/framework/Images/appbar.next.rest.png +0 -0
- data/vendor/phonegap/lib/windows-phone/framework/Images/appbar.save.rest.png +0 -0
- data/vendor/phonegap/lib/windows-phone/framework/Images/appbar.stop.rest.png +0 -0
- data/vendor/phonegap/lib/windows-phone/framework/Properties/AssemblyInfo.cs +35 -0
- data/vendor/phonegap/lib/windows-phone/framework/WP7CordovaClassLib.csproj +281 -0
- data/vendor/phonegap/lib/windows-phone/framework/WP7CordovaClassLib.sln +20 -0
- data/vendor/phonegap/lib/windows-phone/framework/WP7CordovaClassLibBare.csproj +127 -0
- data/vendor/phonegap/lib/windows-phone/framework/WP7GapClassLibBare.sln +20 -0
- data/vendor/phonegap/lib/windows-phone/framework/resources/notification-beep.wav +0 -0
- data/vendor/phonegap/lib/windows-phone/templates/CordovaStarter-2.0.0.zip +0 -0
- data/vendor/phonegap/lib/windows-phone/templates/custom/App.xaml +37 -0
- data/vendor/phonegap/lib/windows-phone/templates/custom/App.xaml.cs +154 -0
- data/vendor/phonegap/lib/windows-phone/templates/custom/ApplicationIcon.png +0 -0
- data/vendor/phonegap/lib/windows-phone/templates/custom/Background.png +0 -0
- data/vendor/phonegap/lib/windows-phone/templates/custom/BuildManifestProcessor.js +83 -0
- data/vendor/phonegap/lib/windows-phone/templates/custom/CordovaAppProj.csproj +152 -0
- data/vendor/phonegap/lib/windows-phone/templates/custom/CordovaSolution.sln +22 -0
- data/vendor/phonegap/lib/windows-phone/templates/custom/CordovaSourceDictionary.xml +23 -0
- data/vendor/phonegap/lib/windows-phone/templates/custom/MainPage.xaml +52 -0
- data/vendor/phonegap/lib/windows-phone/templates/custom/MainPage.xaml.cs +72 -0
- data/vendor/phonegap/lib/windows-phone/templates/custom/Properties/AppManifest.xml +6 -0
- data/vendor/phonegap/lib/windows-phone/templates/custom/Properties/AssemblyInfo.cs +38 -0
- data/vendor/phonegap/lib/windows-phone/templates/custom/Properties/WMAppManifest.xml +32 -0
- data/vendor/phonegap/lib/windows-phone/templates/custom/SplashScreenImage.jpg +0 -0
- data/vendor/phonegap/lib/windows-phone/templates/custom/VERSION +1 -0
- data/vendor/phonegap/lib/windows-phone/templates/custom/www/cordova-2.0.0.js +5672 -0
- data/vendor/phonegap/lib/windows-phone/templates/custom/www/css/index.css +100 -0
- data/vendor/phonegap/lib/windows-phone/templates/custom/www/img/cordova.png +0 -0
- data/vendor/phonegap/lib/windows-phone/templates/custom/www/index.html +24 -0
- data/vendor/phonegap/lib/windows-phone/templates/custom/www/js/index.js +20 -0
- data/vendor/phonegap/lib/windows-phone/templates/description.txt +4 -0
- data/vendor/phonegap/lib/windows-phone/templates/full/App.xaml +37 -0
- data/vendor/phonegap/lib/windows-phone/templates/full/App.xaml.cs +154 -0
- data/vendor/phonegap/lib/windows-phone/templates/full/ApplicationIcon.png +0 -0
- data/vendor/phonegap/lib/windows-phone/templates/full/Background.png +0 -0
- data/vendor/phonegap/lib/windows-phone/templates/full/BuildManifestProcessor.js +80 -0
- data/vendor/phonegap/lib/windows-phone/templates/full/CordovaAppProj.csproj +153 -0
- data/vendor/phonegap/lib/windows-phone/templates/full/CordovaLib/WP7CordovaClassLib.dll +0 -0
- data/vendor/phonegap/lib/windows-phone/templates/full/CordovaSolution.sln +22 -0
- data/vendor/phonegap/lib/windows-phone/templates/full/CordovaSourceDictionary.xml +9 -0
- data/vendor/phonegap/lib/windows-phone/templates/full/MainPage.xaml +52 -0
- data/vendor/phonegap/lib/windows-phone/templates/full/MainPage.xaml.cs +72 -0
- data/vendor/phonegap/lib/windows-phone/templates/full/Properties/AppManifest.xml +6 -0
- data/vendor/phonegap/lib/windows-phone/templates/full/Properties/AssemblyInfo.cs +38 -0
- data/vendor/phonegap/lib/windows-phone/templates/full/Properties/WMAppManifest.xml +41 -0
- data/vendor/phonegap/lib/windows-phone/templates/full/SplashScreenImage.jpg +0 -0
- data/vendor/phonegap/lib/windows-phone/templates/full/VERSION +1 -0
- data/vendor/phonegap/lib/windows-phone/templates/full/cordova/debug.bat +68 -0
- data/vendor/phonegap/lib/windows-phone/templates/full/cordova/emulate.bat +24 -0
- data/vendor/phonegap/lib/windows-phone/templates/full/www/cordova-2.0.0.js +5672 -0
- data/vendor/phonegap/lib/windows-phone/templates/full/www/css/index.css +100 -0
- data/vendor/phonegap/lib/windows-phone/templates/full/www/img/cordova.png +0 -0
- data/vendor/phonegap/lib/windows-phone/templates/full/www/index.html +24 -0
- data/vendor/phonegap/lib/windows-phone/templates/full/www/js/index.js +20 -0
- data/vendor/phonegap/lib/windows-phone/templates/pg_templateIcon.png +0 -0
- data/vendor/phonegap/lib/windows-phone/templates/pg_templatePreview.jpg +0 -0
- data/vendor/phonegap/lib/windows-phone/templates/standalone/App.xaml +37 -0
- data/vendor/phonegap/lib/windows-phone/templates/standalone/App.xaml.cs +154 -0
- data/vendor/phonegap/lib/windows-phone/templates/standalone/ApplicationIcon.png +0 -0
- data/vendor/phonegap/lib/windows-phone/templates/standalone/Background.png +0 -0
- data/vendor/phonegap/lib/windows-phone/templates/standalone/BuildManifestProcessor.js +80 -0
- data/vendor/phonegap/lib/windows-phone/templates/standalone/CordovaAppProj.csproj +231 -0
- data/vendor/phonegap/lib/windows-phone/templates/standalone/CordovaSolution.sln +22 -0
- data/vendor/phonegap/lib/windows-phone/templates/standalone/CordovaSourceDictionary.xml +4 -0
- data/vendor/phonegap/lib/windows-phone/templates/standalone/MainPage.xaml +52 -0
- data/vendor/phonegap/lib/windows-phone/templates/standalone/MainPage.xaml.cs +72 -0
- data/vendor/phonegap/lib/windows-phone/templates/standalone/Properties/AppManifest.xml +6 -0
- data/vendor/phonegap/lib/windows-phone/templates/standalone/Properties/AssemblyInfo.cs +38 -0
- data/vendor/phonegap/lib/windows-phone/templates/standalone/Properties/WMAppManifest.xml +42 -0
- data/vendor/phonegap/lib/windows-phone/templates/standalone/SplashScreenImage.jpg +0 -0
- data/vendor/phonegap/lib/windows-phone/templates/standalone/VERSION +1 -0
- data/vendor/phonegap/lib/windows-phone/templates/standalone/cordova/debug.bat +68 -0
- data/vendor/phonegap/lib/windows-phone/templates/standalone/cordova/emulate.bat +24 -0
- data/vendor/phonegap/lib/windows-phone/templates/standalone/cordovalib/BrowserMouseHelper.cs +345 -0
- data/vendor/phonegap/lib/windows-phone/templates/standalone/cordovalib/CommandFactory.cs +104 -0
- data/vendor/phonegap/lib/windows-phone/templates/standalone/cordovalib/Commands/Accelerometer.cs +195 -0
- data/vendor/phonegap/lib/windows-phone/templates/standalone/cordovalib/Commands/AudioPlayer.cs +617 -0
- data/vendor/phonegap/lib/windows-phone/templates/standalone/cordovalib/Commands/BaseCommand.cs +129 -0
- data/vendor/phonegap/lib/windows-phone/templates/standalone/cordovalib/Commands/Battery.cs +79 -0
- data/vendor/phonegap/lib/windows-phone/templates/standalone/cordovalib/Commands/Camera.cs +490 -0
- data/vendor/phonegap/lib/windows-phone/templates/standalone/cordovalib/Commands/Capture.cs +735 -0
- data/vendor/phonegap/lib/windows-phone/templates/standalone/cordovalib/Commands/Compass.cs +364 -0
- data/vendor/phonegap/lib/windows-phone/templates/standalone/cordovalib/Commands/Contacts.cs +643 -0
- data/vendor/phonegap/lib/windows-phone/templates/standalone/cordovalib/Commands/DebugConsole.cs +49 -0
- data/vendor/phonegap/lib/windows-phone/templates/standalone/cordovalib/Commands/Device.cs +124 -0
- data/vendor/phonegap/lib/windows-phone/templates/standalone/cordovalib/Commands/File.cs +1441 -0
- data/vendor/phonegap/lib/windows-phone/templates/standalone/cordovalib/Commands/FileTransfer.cs +525 -0
- data/vendor/phonegap/lib/windows-phone/templates/standalone/cordovalib/Commands/GeoLocation.cs +34 -0
- data/vendor/phonegap/lib/windows-phone/templates/standalone/cordovalib/Commands/ImageExifHelper.cs +222 -0
- data/vendor/phonegap/lib/windows-phone/templates/standalone/cordovalib/Commands/Media.cs +522 -0
- data/vendor/phonegap/lib/windows-phone/templates/standalone/cordovalib/Commands/MimeTypeMapper.cs +99 -0
- data/vendor/phonegap/lib/windows-phone/templates/standalone/cordovalib/Commands/NetworkStatus.cs +124 -0
- data/vendor/phonegap/lib/windows-phone/templates/standalone/cordovalib/Commands/Notification.cs +322 -0
- data/vendor/phonegap/lib/windows-phone/templates/standalone/cordovalib/CordovaCommandCall.cs +86 -0
- data/vendor/phonegap/lib/windows-phone/templates/standalone/cordovalib/CordovaView.xaml +65 -0
- data/vendor/phonegap/lib/windows-phone/templates/standalone/cordovalib/CordovaView.xaml.cs +451 -0
- data/vendor/phonegap/lib/windows-phone/templates/standalone/cordovalib/DOMStorageHelper.cs +145 -0
- data/vendor/phonegap/lib/windows-phone/templates/standalone/cordovalib/Images/appbar.back.rest.png +0 -0
- data/vendor/phonegap/lib/windows-phone/templates/standalone/cordovalib/Images/appbar.close.rest.png +0 -0
- data/vendor/phonegap/lib/windows-phone/templates/standalone/cordovalib/Images/appbar.feature.video.rest.png +0 -0
- data/vendor/phonegap/lib/windows-phone/templates/standalone/cordovalib/Images/appbar.next.rest.png +0 -0
- data/vendor/phonegap/lib/windows-phone/templates/standalone/cordovalib/Images/appbar.save.rest.png +0 -0
- data/vendor/phonegap/lib/windows-phone/templates/standalone/cordovalib/Images/appbar.stop.rest.png +0 -0
- data/vendor/phonegap/lib/windows-phone/templates/standalone/cordovalib/JSON/JsonHelper.cs +97 -0
- data/vendor/phonegap/lib/windows-phone/templates/standalone/cordovalib/NativeExecution.cs +207 -0
- data/vendor/phonegap/lib/windows-phone/templates/standalone/cordovalib/OrientationHelper.cs +128 -0
- data/vendor/phonegap/lib/windows-phone/templates/standalone/cordovalib/PluginResult.cs +165 -0
- data/vendor/phonegap/lib/windows-phone/templates/standalone/cordovalib/ScriptCallback.cs +80 -0
- data/vendor/phonegap/lib/windows-phone/templates/standalone/cordovalib/UI/AudioCaptureTask.cs +105 -0
- data/vendor/phonegap/lib/windows-phone/templates/standalone/cordovalib/UI/AudioRecorder.xaml +66 -0
- data/vendor/phonegap/lib/windows-phone/templates/standalone/cordovalib/UI/AudioRecorder.xaml.cs +387 -0
- data/vendor/phonegap/lib/windows-phone/templates/standalone/cordovalib/UI/ImageCapture.xaml +26 -0
- data/vendor/phonegap/lib/windows-phone/templates/standalone/cordovalib/UI/ImageCapture.xaml.cs +107 -0
- data/vendor/phonegap/lib/windows-phone/templates/standalone/cordovalib/UI/NotificationBox.xaml +62 -0
- data/vendor/phonegap/lib/windows-phone/templates/standalone/cordovalib/UI/NotificationBox.xaml.cs +41 -0
- data/vendor/phonegap/lib/windows-phone/templates/standalone/cordovalib/UI/VideoCaptureTask.cs +104 -0
- data/vendor/phonegap/lib/windows-phone/templates/standalone/cordovalib/UI/VideoRecorder.xaml +52 -0
- data/vendor/phonegap/lib/windows-phone/templates/standalone/cordovalib/UI/VideoRecorder.xaml.cs +405 -0
- data/vendor/phonegap/lib/windows-phone/templates/standalone/cordovalib/resources/notification-beep.wav +0 -0
- data/vendor/phonegap/lib/windows-phone/templates/standalone/www/cordova-2.0.0.js +5672 -0
- data/vendor/phonegap/lib/windows-phone/templates/standalone/www/css/index.css +100 -0
- data/vendor/phonegap/lib/windows-phone/templates/standalone/www/img/cordova.png +0 -0
- data/vendor/phonegap/lib/windows-phone/templates/standalone/www/index.html +24 -0
- data/vendor/phonegap/lib/windows-phone/templates/standalone/www/js/index.js +20 -0
- data/vendor/phonegap/lib/windows-phone/templates/vspackage/GapAppVsPackage.cs +64 -0
- data/vendor/phonegap/lib/windows-phone/templates/vspackage/GapAppVsPackage.csproj +174 -0
- data/vendor/phonegap/lib/windows-phone/templates/vspackage/GlobalSuppressions.cs +11 -0
- data/vendor/phonegap/lib/windows-phone/templates/vspackage/Guids.cs +14 -0
- data/vendor/phonegap/lib/windows-phone/templates/vspackage/Key.snk +0 -0
- data/vendor/phonegap/lib/windows-phone/templates/vspackage/Properties/AssemblyInfo.cs +36 -0
- data/vendor/phonegap/lib/windows-phone/templates/vspackage/Resources.Designer.cs +63 -0
- data/vendor/phonegap/lib/windows-phone/templates/vspackage/Resources.resx +129 -0
- data/vendor/phonegap/lib/windows-phone/templates/vspackage/Resources/Package.ico +0 -0
- data/vendor/phonegap/lib/windows-phone/templates/vspackage/VSPackage.resx +140 -0
- data/vendor/phonegap/lib/windows-phone/templates/vspackage/pg_templateIcon.png +0 -0
- data/vendor/phonegap/lib/windows-phone/templates/vspackage/pg_templatePreview.jpg +0 -0
- data/vendor/phonegap/lib/windows-phone/templates/vspackage/source.extension.vsixmanifest +30 -0
- data/vendor/phonegap/lib/windows-phone/tests/MobileSpecUnitTests/App.xaml +38 -0
- data/vendor/phonegap/lib/windows-phone/tests/MobileSpecUnitTests/App.xaml.cs +158 -0
- data/vendor/phonegap/lib/windows-phone/tests/MobileSpecUnitTests/ApplicationIcon.png +0 -0
- data/vendor/phonegap/lib/windows-phone/tests/MobileSpecUnitTests/Background.png +0 -0
- data/vendor/phonegap/lib/windows-phone/tests/MobileSpecUnitTests/BuildManifestProcessor.js +80 -0
- data/vendor/phonegap/lib/windows-phone/tests/MobileSpecUnitTests/CordovaSourceDictionary.xml +4 -0
- data/vendor/phonegap/lib/windows-phone/tests/MobileSpecUnitTests/MainPage.xaml +52 -0
- data/vendor/phonegap/lib/windows-phone/tests/MobileSpecUnitTests/MainPage.xaml.cs +42 -0
- data/vendor/phonegap/lib/windows-phone/tests/MobileSpecUnitTests/MobileSpecUnitTests.csproj +141 -0
- data/vendor/phonegap/lib/windows-phone/tests/MobileSpecUnitTests/MobileSpecUnitTests.sln +28 -0
- data/vendor/phonegap/lib/windows-phone/tests/MobileSpecUnitTests/Properties/AppManifest.xml +6 -0
- data/vendor/phonegap/lib/windows-phone/tests/MobileSpecUnitTests/Properties/AssemblyInfo.cs +35 -0
- data/vendor/phonegap/lib/windows-phone/tests/MobileSpecUnitTests/Properties/WMAppManifest.xml +35 -0
- data/vendor/phonegap/lib/windows-phone/tests/MobileSpecUnitTests/SplashScreenImage.jpg +0 -0
- data/vendor/phonegap/lib/windows-phone/tests/MobileSpecUnitTests/www/cordova-2.0.0.js +5658 -0
- data/vendor/phonegap/lib/windows-phone/tests/MobileSpecUnitTests/www/index.html +43 -0
- data/vendor/phonegap/lib/windows-phone/tests/MobileSpecUnitTests/www/master.css +112 -0
- data/vendor/phonegap/lib/windows-phone/tooling/CordovaDeploy/CordovaDeploy.sln +20 -0
- data/vendor/phonegap/lib/windows-phone/tooling/CordovaDeploy/CordovaDeploy/CordovaDeploy.csproj +79 -0
- data/vendor/phonegap/lib/windows-phone/tooling/CordovaDeploy/CordovaDeploy/Program.cs +219 -0
- data/vendor/phonegap/lib/windows-phone/tooling/CordovaDeploy/CordovaDeploy/Properties/AssemblyInfo.cs +36 -0
- data/vendor/phonegap/lib/windows-phone/tooling/scripts/debug.bat +68 -0
- data/vendor/phonegap/lib/windows-phone/tooling/scripts/emulate.bat +24 -0
- metadata +1040 -0
@@ -0,0 +1,364 @@
|
|
1
|
+
/*
|
2
|
+
Licensed under the Apache License, Version 2.0 (the "License");
|
3
|
+
you may not use this file except in compliance with the License.
|
4
|
+
You may obtain a copy of the License at
|
5
|
+
|
6
|
+
http://www.apache.org/licenses/LICENSE-2.0
|
7
|
+
|
8
|
+
Unless required by applicable law or agreed to in writing, software
|
9
|
+
distributed under the License is distributed on an "AS IS" BASIS,
|
10
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
11
|
+
See the License for the specific language governing permissions and
|
12
|
+
limitations under the License.
|
13
|
+
*/
|
14
|
+
|
15
|
+
using System;
|
16
|
+
using System.Net;
|
17
|
+
using System.Windows;
|
18
|
+
using System.Windows.Controls;
|
19
|
+
using System.Windows.Documents;
|
20
|
+
using System.Windows.Ink;
|
21
|
+
using System.Windows.Input;
|
22
|
+
using System.Windows.Media;
|
23
|
+
using System.Windows.Media.Animation;
|
24
|
+
using System.Windows.Shapes;
|
25
|
+
using DeviceCompass = Microsoft.Devices.Sensors.Compass;
|
26
|
+
using System.Windows.Threading;
|
27
|
+
using System.Runtime.Serialization;
|
28
|
+
using System.Collections.Generic;
|
29
|
+
using System.Diagnostics;
|
30
|
+
using System.Globalization;
|
31
|
+
using System.Threading;
|
32
|
+
using Microsoft.Devices.Sensors;
|
33
|
+
|
34
|
+
namespace WP7CordovaClassLib.Cordova.Commands
|
35
|
+
{
|
36
|
+
|
37
|
+
public class Compass : BaseCommand
|
38
|
+
{
|
39
|
+
#region Static members
|
40
|
+
|
41
|
+
/// <summary>
|
42
|
+
/// Status of listener
|
43
|
+
/// </summary>
|
44
|
+
private static int currentStatus;
|
45
|
+
|
46
|
+
/// <summary>
|
47
|
+
/// Id for get getCompass method
|
48
|
+
/// </summary>
|
49
|
+
private static string getCompassId = "getCompassId";
|
50
|
+
|
51
|
+
/// <summary>
|
52
|
+
/// Compass
|
53
|
+
/// </summary>
|
54
|
+
private static DeviceCompass compass = new DeviceCompass();
|
55
|
+
|
56
|
+
/// <summary>
|
57
|
+
/// Listeners for callbacks
|
58
|
+
/// </summary>
|
59
|
+
private static Dictionary<string, Compass> watchers = new Dictionary<string, Compass>();
|
60
|
+
|
61
|
+
#endregion
|
62
|
+
|
63
|
+
#region Status codes
|
64
|
+
|
65
|
+
public const int Stopped = 0;
|
66
|
+
public const int Starting = 1;
|
67
|
+
public const int Running = 2;
|
68
|
+
public const int ErrorFailedToStart = 4;
|
69
|
+
public const int Not_Supported = 20;
|
70
|
+
|
71
|
+
/*
|
72
|
+
* // Capture error codes
|
73
|
+
CompassError.COMPASS_INTERNAL_ERR = 0;
|
74
|
+
CompassError.COMPASS_NOT_SUPPORTED = 20;
|
75
|
+
* */
|
76
|
+
|
77
|
+
#endregion
|
78
|
+
|
79
|
+
#region CompassOptions class
|
80
|
+
/// <summary>
|
81
|
+
/// Represents Accelerometer options.
|
82
|
+
/// </summary>
|
83
|
+
[DataContract]
|
84
|
+
public class CompassOptions
|
85
|
+
{
|
86
|
+
/// <summary>
|
87
|
+
/// How often to retrieve the Acceleration in milliseconds
|
88
|
+
/// </summary>
|
89
|
+
[DataMember(IsRequired = false, Name = "frequency")]
|
90
|
+
public int Frequency { get; set; }
|
91
|
+
|
92
|
+
/// <summary>
|
93
|
+
/// The change in degrees required to initiate a watchHeadingFilter success callback.
|
94
|
+
/// </summary>
|
95
|
+
[DataMember(IsRequired = false, Name = "filter")]
|
96
|
+
public int Filter { get; set; }
|
97
|
+
|
98
|
+
/// <summary>
|
99
|
+
/// Watcher id
|
100
|
+
/// </summary>
|
101
|
+
[DataMember(IsRequired = false, Name = "id")]
|
102
|
+
public string Id { get; set; }
|
103
|
+
|
104
|
+
}
|
105
|
+
#endregion
|
106
|
+
|
107
|
+
|
108
|
+
/// <summary>
|
109
|
+
/// Time the value was last changed
|
110
|
+
/// </summary>
|
111
|
+
//private DateTime lastValueChangedTime;
|
112
|
+
|
113
|
+
/// <summary>
|
114
|
+
/// Accelerometer options
|
115
|
+
/// </summary>
|
116
|
+
private CompassOptions compassOptions;
|
117
|
+
|
118
|
+
//bool isDataValid;
|
119
|
+
|
120
|
+
//bool calibrating = false;
|
121
|
+
|
122
|
+
public Compass()
|
123
|
+
{
|
124
|
+
|
125
|
+
}
|
126
|
+
|
127
|
+
/// <summary>
|
128
|
+
/// Formats current coordinates into JSON format
|
129
|
+
/// </summary>
|
130
|
+
/// <returns>Coordinates in JSON format</returns>
|
131
|
+
private string GetHeadingFormatted(CompassReading reading)
|
132
|
+
{
|
133
|
+
string result = String.Format("\"magneticHeading\":{0},\"headingAccuracy\":{1},\"trueHeading\":{2},\"timestamp\":{3}",
|
134
|
+
reading.MagneticHeading.ToString("0.0", CultureInfo.InvariantCulture),
|
135
|
+
reading.HeadingAccuracy.ToString("0.0", CultureInfo.InvariantCulture),
|
136
|
+
reading.TrueHeading.ToString("0.0", CultureInfo.InvariantCulture),
|
137
|
+
reading.Timestamp.UtcTicks.ToString());
|
138
|
+
result = "{" + result + "}";
|
139
|
+
return result;
|
140
|
+
}
|
141
|
+
|
142
|
+
public void getHeading(string options)
|
143
|
+
{
|
144
|
+
if (!DeviceCompass.IsSupported)
|
145
|
+
{
|
146
|
+
DispatchCommandResult(new PluginResult(PluginResult.Status.ERROR, "{code:" + Not_Supported + "}"));
|
147
|
+
}
|
148
|
+
else
|
149
|
+
{
|
150
|
+
//if (compass == null)
|
151
|
+
//{
|
152
|
+
// // Instantiate the compass.
|
153
|
+
// compass = new DeviceCompass();
|
154
|
+
// compass.TimeBetweenUpdates = TimeSpan.FromMilliseconds(40);
|
155
|
+
// compass.CurrentValueChanged += new EventHandler<Microsoft.Devices.Sensors.SensorReadingEventArgs<Microsoft.Devices.Sensors.CompassReading>>(compass_CurrentValueChanged);
|
156
|
+
// compass.Calibrate += new EventHandler<Microsoft.Devices.Sensors.CalibrationEventArgs>(compass_Calibrate);
|
157
|
+
//}
|
158
|
+
|
159
|
+
|
160
|
+
//compass.Start();
|
161
|
+
|
162
|
+
}
|
163
|
+
|
164
|
+
try
|
165
|
+
{
|
166
|
+
if (currentStatus != Running)
|
167
|
+
{
|
168
|
+
|
169
|
+
lock (compass)
|
170
|
+
{
|
171
|
+
compass.CurrentValueChanged += compass_SingleHeadingValueChanged;
|
172
|
+
compass.Start();
|
173
|
+
this.SetStatus(Starting);
|
174
|
+
}
|
175
|
+
|
176
|
+
long timeout = 2000;
|
177
|
+
while ((currentStatus == Starting) && (timeout > 0))
|
178
|
+
{
|
179
|
+
timeout = timeout - 100;
|
180
|
+
Thread.Sleep(100);
|
181
|
+
}
|
182
|
+
|
183
|
+
if (currentStatus != Running)
|
184
|
+
{
|
185
|
+
DispatchCommandResult(new PluginResult(PluginResult.Status.IO_EXCEPTION, ErrorFailedToStart));
|
186
|
+
return;
|
187
|
+
}
|
188
|
+
}
|
189
|
+
lock (compass)
|
190
|
+
{
|
191
|
+
|
192
|
+
compass.CurrentValueChanged -= compass_SingleHeadingValueChanged;
|
193
|
+
if (watchers.Count < 1)
|
194
|
+
{
|
195
|
+
compass.Stop();
|
196
|
+
}
|
197
|
+
}
|
198
|
+
}
|
199
|
+
catch (UnauthorizedAccessException)
|
200
|
+
{
|
201
|
+
DispatchCommandResult(new PluginResult(PluginResult.Status.ILLEGAL_ACCESS_EXCEPTION, ErrorFailedToStart));
|
202
|
+
}
|
203
|
+
catch (Exception)
|
204
|
+
{
|
205
|
+
DispatchCommandResult(new PluginResult(PluginResult.Status.ERROR, ErrorFailedToStart));
|
206
|
+
}
|
207
|
+
}
|
208
|
+
|
209
|
+
void compass_SingleHeadingValueChanged(object sender, Microsoft.Devices.Sensors.SensorReadingEventArgs<CompassReading> e)
|
210
|
+
{
|
211
|
+
this.SetStatus(Running);
|
212
|
+
if (compass.IsDataValid)
|
213
|
+
{
|
214
|
+
// trueHeading :: The heading in degrees from 0 - 359.99 at a single moment in time.
|
215
|
+
// magneticHeading:: The heading relative to the geographic North Pole in degrees 0 - 359.99 at a single moment in time.
|
216
|
+
// A negative value indicates that the true heading could not be determined.
|
217
|
+
// headingAccuracy :: The deviation in degrees between the reported heading and the true heading.
|
218
|
+
//rawMagnetometerReading = e.SensorReading.MagnetometerReading;
|
219
|
+
|
220
|
+
//Debug.WriteLine("Compass Result :: " + GetHeadingFormatted(e.SensorReading));
|
221
|
+
|
222
|
+
PluginResult result = new PluginResult(PluginResult.Status.OK, GetHeadingFormatted(e.SensorReading));
|
223
|
+
|
224
|
+
DispatchCommandResult(result);
|
225
|
+
}
|
226
|
+
}
|
227
|
+
|
228
|
+
/// <summary>
|
229
|
+
/// Starts listening for compass sensor
|
230
|
+
/// </summary>
|
231
|
+
/// <returns>status of listener</returns>
|
232
|
+
private int start()
|
233
|
+
{
|
234
|
+
if ((currentStatus == Running) || (currentStatus == Starting))
|
235
|
+
{
|
236
|
+
return currentStatus;
|
237
|
+
}
|
238
|
+
try
|
239
|
+
{
|
240
|
+
lock (compass)
|
241
|
+
{
|
242
|
+
watchers.Add(getCompassId, this);
|
243
|
+
compass.CurrentValueChanged += watchers[getCompassId].compass_CurrentValueChanged;
|
244
|
+
compass.Start();
|
245
|
+
this.SetStatus(Starting);
|
246
|
+
}
|
247
|
+
}
|
248
|
+
catch (Exception)
|
249
|
+
{
|
250
|
+
this.SetStatus(ErrorFailedToStart);
|
251
|
+
}
|
252
|
+
return currentStatus;
|
253
|
+
}
|
254
|
+
|
255
|
+
public void startWatch(string options)
|
256
|
+
{
|
257
|
+
if (!DeviceCompass.IsSupported)
|
258
|
+
{
|
259
|
+
DispatchCommandResult(new PluginResult(PluginResult.Status.ERROR, Not_Supported));
|
260
|
+
}
|
261
|
+
|
262
|
+
try
|
263
|
+
{
|
264
|
+
compassOptions = JSON.JsonHelper.Deserialize<CompassOptions>(options);
|
265
|
+
}
|
266
|
+
catch (Exception ex)
|
267
|
+
{
|
268
|
+
this.DispatchCommandResult(new PluginResult(PluginResult.Status.JSON_EXCEPTION, ex.Message));
|
269
|
+
return;
|
270
|
+
}
|
271
|
+
|
272
|
+
if (string.IsNullOrEmpty(compassOptions.Id))
|
273
|
+
{
|
274
|
+
this.DispatchCommandResult(new PluginResult(PluginResult.Status.JSON_EXCEPTION));
|
275
|
+
return;
|
276
|
+
}
|
277
|
+
|
278
|
+
try
|
279
|
+
{
|
280
|
+
lock (compass)
|
281
|
+
{
|
282
|
+
watchers.Add(compassOptions.Id, this);
|
283
|
+
compass.CurrentValueChanged += watchers[compassOptions.Id].compass_CurrentValueChanged;
|
284
|
+
compass.Start();
|
285
|
+
this.SetStatus(Starting);
|
286
|
+
}
|
287
|
+
}
|
288
|
+
catch (Exception)
|
289
|
+
{
|
290
|
+
this.DispatchCommandResult(new PluginResult(PluginResult.Status.ERROR, ErrorFailedToStart));
|
291
|
+
return;
|
292
|
+
}
|
293
|
+
}
|
294
|
+
|
295
|
+
public void stopWatch(string options)
|
296
|
+
{
|
297
|
+
try
|
298
|
+
{
|
299
|
+
compassOptions = JSON.JsonHelper.Deserialize<CompassOptions>(options);
|
300
|
+
}
|
301
|
+
catch (Exception ex)
|
302
|
+
{
|
303
|
+
this.DispatchCommandResult(new PluginResult(PluginResult.Status.JSON_EXCEPTION, ex.Message));
|
304
|
+
return;
|
305
|
+
}
|
306
|
+
|
307
|
+
if (string.IsNullOrEmpty(compassOptions.Id))
|
308
|
+
{
|
309
|
+
this.DispatchCommandResult(new PluginResult(PluginResult.Status.JSON_EXCEPTION));
|
310
|
+
return;
|
311
|
+
}
|
312
|
+
|
313
|
+
if (currentStatus != Stopped)
|
314
|
+
{
|
315
|
+
lock (compass)
|
316
|
+
{
|
317
|
+
Compass watcher = watchers[compassOptions.Id];
|
318
|
+
compass.CurrentValueChanged -= watcher.compass_CurrentValueChanged;
|
319
|
+
watchers.Remove(compassOptions.Id);
|
320
|
+
watcher.Dispose();
|
321
|
+
}
|
322
|
+
}
|
323
|
+
this.SetStatus(Stopped);
|
324
|
+
|
325
|
+
this.DispatchCommandResult();
|
326
|
+
}
|
327
|
+
|
328
|
+
void compass_Calibrate(object sender, Microsoft.Devices.Sensors.CalibrationEventArgs e)
|
329
|
+
{
|
330
|
+
//throw new NotImplementedException();
|
331
|
+
// TODO: pass calibration error to JS
|
332
|
+
}
|
333
|
+
|
334
|
+
void compass_CurrentValueChanged(object sender, Microsoft.Devices.Sensors.SensorReadingEventArgs<CompassReading> e)
|
335
|
+
{
|
336
|
+
this.SetStatus(Running);
|
337
|
+
if (compass.IsDataValid)
|
338
|
+
{
|
339
|
+
// trueHeading :: The heading in degrees from 0 - 359.99 at a single moment in time.
|
340
|
+
// magneticHeading:: The heading relative to the geographic North Pole in degrees 0 - 359.99 at a single moment in time.
|
341
|
+
// A negative value indicates that the true heading could not be determined.
|
342
|
+
// headingAccuracy :: The deviation in degrees between the reported heading and the true heading.
|
343
|
+
//rawMagnetometerReading = e.SensorReading.MagnetometerReading;
|
344
|
+
|
345
|
+
//Debug.WriteLine("Compass Result :: " + GetHeadingFormatted(e.SensorReading));
|
346
|
+
|
347
|
+
PluginResult result = new PluginResult(PluginResult.Status.OK, GetHeadingFormatted(e.SensorReading));
|
348
|
+
result.KeepCallback = true;
|
349
|
+
|
350
|
+
DispatchCommandResult(result);
|
351
|
+
}
|
352
|
+
}
|
353
|
+
|
354
|
+
/// <summary>
|
355
|
+
/// Sets current status
|
356
|
+
/// </summary>
|
357
|
+
/// <param name="status">current status</param>
|
358
|
+
private void SetStatus(int status)
|
359
|
+
{
|
360
|
+
currentStatus = status;
|
361
|
+
}
|
362
|
+
|
363
|
+
}
|
364
|
+
}
|
@@ -0,0 +1,643 @@
|
|
1
|
+
/*
|
2
|
+
Licensed under the Apache License, Version 2.0 (the "License");
|
3
|
+
you may not use this file except in compliance with the License.
|
4
|
+
You may obtain a copy of the License at
|
5
|
+
|
6
|
+
http://www.apache.org/licenses/LICENSE-2.0
|
7
|
+
|
8
|
+
Unless required by applicable law or agreed to in writing, software
|
9
|
+
distributed under the License is distributed on an "AS IS" BASIS,
|
10
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
11
|
+
See the License for the specific language governing permissions and
|
12
|
+
limitations under the License.
|
13
|
+
*/
|
14
|
+
|
15
|
+
using System;
|
16
|
+
using System.Net;
|
17
|
+
using System.Windows;
|
18
|
+
using System.Windows.Controls;
|
19
|
+
using System.Windows.Documents;
|
20
|
+
using System.Windows.Ink;
|
21
|
+
using System.Windows.Input;
|
22
|
+
using System.Windows.Media;
|
23
|
+
using System.Windows.Media.Animation;
|
24
|
+
using System.Windows.Shapes;
|
25
|
+
using Microsoft.Phone.Tasks;
|
26
|
+
using Microsoft.Phone.UserData;
|
27
|
+
using System.Collections;
|
28
|
+
using System.Collections.Generic;
|
29
|
+
using System.Runtime.Serialization;
|
30
|
+
using DeviceContacts = Microsoft.Phone.UserData.Contacts;
|
31
|
+
using System.Diagnostics;
|
32
|
+
using System.Linq;
|
33
|
+
|
34
|
+
|
35
|
+
namespace WP7CordovaClassLib.Cordova.Commands
|
36
|
+
{
|
37
|
+
[DataContract]
|
38
|
+
public class SearchOptions
|
39
|
+
{
|
40
|
+
[DataMember]
|
41
|
+
public string filter { get; set; }
|
42
|
+
[DataMember]
|
43
|
+
public bool multiple { get; set; }
|
44
|
+
}
|
45
|
+
|
46
|
+
[DataContract]
|
47
|
+
public class ContactSearchParams
|
48
|
+
{
|
49
|
+
[DataMember]
|
50
|
+
public string[] fields { get; set; }
|
51
|
+
[DataMember]
|
52
|
+
public SearchOptions options { get; set; }
|
53
|
+
}
|
54
|
+
|
55
|
+
[DataContract]
|
56
|
+
public class JSONContactAddress
|
57
|
+
{
|
58
|
+
[DataMember]
|
59
|
+
public string formatted { get; set; }
|
60
|
+
[DataMember]
|
61
|
+
public string type { get; set; }
|
62
|
+
[DataMember]
|
63
|
+
public string streetAddress { get; set; }
|
64
|
+
[DataMember]
|
65
|
+
public string locality { get; set; }
|
66
|
+
[DataMember]
|
67
|
+
public string region { get; set; }
|
68
|
+
[DataMember]
|
69
|
+
public string postalCode { get; set; }
|
70
|
+
[DataMember]
|
71
|
+
public string country { get; set; }
|
72
|
+
[DataMember]
|
73
|
+
public bool pref { get; set; }
|
74
|
+
}
|
75
|
+
|
76
|
+
[DataContract]
|
77
|
+
public class JSONContactName
|
78
|
+
{
|
79
|
+
[DataMember]
|
80
|
+
public string formatted { get; set; }
|
81
|
+
[DataMember]
|
82
|
+
public string familyName { get; set; }
|
83
|
+
[DataMember]
|
84
|
+
public string givenName { get; set; }
|
85
|
+
[DataMember]
|
86
|
+
public string middleName { get; set; }
|
87
|
+
[DataMember]
|
88
|
+
public string honorificPrefix { get; set; }
|
89
|
+
[DataMember]
|
90
|
+
public string honorificSuffix { get; set; }
|
91
|
+
}
|
92
|
+
|
93
|
+
[DataContract]
|
94
|
+
public class JSONContactField
|
95
|
+
{
|
96
|
+
[DataMember]
|
97
|
+
public string type { get; set; }
|
98
|
+
[DataMember]
|
99
|
+
public string value { get; set; }
|
100
|
+
[DataMember]
|
101
|
+
public bool pref { get; set; }
|
102
|
+
}
|
103
|
+
|
104
|
+
[DataContract]
|
105
|
+
public class JSONContactOrganization
|
106
|
+
{
|
107
|
+
[DataMember]
|
108
|
+
public string type { get; set; }
|
109
|
+
[DataMember]
|
110
|
+
public string name { get; set; }
|
111
|
+
[DataMember]
|
112
|
+
public bool pref { get; set; }
|
113
|
+
[DataMember]
|
114
|
+
public string department { get; set; }
|
115
|
+
[DataMember]
|
116
|
+
public string title { get; set; }
|
117
|
+
}
|
118
|
+
|
119
|
+
[DataContract]
|
120
|
+
public class JSONContact
|
121
|
+
{
|
122
|
+
[DataMember]
|
123
|
+
public string id { get; set; }
|
124
|
+
[DataMember]
|
125
|
+
public string rawId { get; set; }
|
126
|
+
[DataMember]
|
127
|
+
public string displayName { get; set; }
|
128
|
+
[DataMember]
|
129
|
+
public string nickname { get; set; }
|
130
|
+
[DataMember]
|
131
|
+
public string note { get; set; }
|
132
|
+
|
133
|
+
[DataMember]
|
134
|
+
public JSONContactName name { get; set; }
|
135
|
+
|
136
|
+
[DataMember]
|
137
|
+
public JSONContactField[] emails { get; set; }
|
138
|
+
|
139
|
+
[DataMember]
|
140
|
+
public JSONContactField[] phoneNumbers { get; set; }
|
141
|
+
|
142
|
+
[DataMember]
|
143
|
+
public JSONContactField[] ims { get; set; }
|
144
|
+
|
145
|
+
[DataMember]
|
146
|
+
public JSONContactField[] photos { get; set; }
|
147
|
+
|
148
|
+
[DataMember]
|
149
|
+
public JSONContactField[] categories { get; set; }
|
150
|
+
|
151
|
+
[DataMember]
|
152
|
+
public JSONContactField[] urls { get; set; }
|
153
|
+
|
154
|
+
[DataMember]
|
155
|
+
public JSONContactOrganization[] organizations { get; set; }
|
156
|
+
|
157
|
+
[DataMember]
|
158
|
+
public JSONContactAddress[] addresses { get; set; }
|
159
|
+
}
|
160
|
+
|
161
|
+
|
162
|
+
public class Contacts : BaseCommand
|
163
|
+
{
|
164
|
+
|
165
|
+
public const int UNKNOWN_ERROR = 0;
|
166
|
+
public const int INVALID_ARGUMENT_ERROR = 1;
|
167
|
+
public const int TIMEOUT_ERROR = 2;
|
168
|
+
public const int PENDING_OPERATION_ERROR = 3;
|
169
|
+
public const int IO_ERROR = 4;
|
170
|
+
public const int NOT_SUPPORTED_ERROR = 5;
|
171
|
+
public const int PERMISSION_DENIED_ERROR = 20;
|
172
|
+
public const int SYNTAX_ERR = 8;
|
173
|
+
|
174
|
+
public Contacts()
|
175
|
+
{
|
176
|
+
|
177
|
+
}
|
178
|
+
|
179
|
+
private void saveContactTask_Completed(object sender, SaveContactResult e)
|
180
|
+
{
|
181
|
+
switch (e.TaskResult)
|
182
|
+
{
|
183
|
+
case TaskResult.OK:
|
184
|
+
// successful save
|
185
|
+
MessageBoxResult res = MessageBox.Show("contact saved", "Alert", MessageBoxButton.OK);
|
186
|
+
break;
|
187
|
+
case TaskResult.Cancel:
|
188
|
+
// user cancelled
|
189
|
+
break;
|
190
|
+
case TaskResult.None:
|
191
|
+
// no info about result is available
|
192
|
+
break;
|
193
|
+
}
|
194
|
+
}
|
195
|
+
|
196
|
+
// refer here for contact properties we can access: http://msdn.microsoft.com/en-us/library/microsoft.phone.tasks.savecontacttask_members%28v=VS.92%29.aspx
|
197
|
+
public void save(string jsonContact)
|
198
|
+
{
|
199
|
+
// jsonContact is actually an array of 1 {contact}
|
200
|
+
JSONContact contact = JSON.JsonHelper.Deserialize<JSONContact[]>(jsonContact)[0];
|
201
|
+
|
202
|
+
SaveContactTask contactTask = new SaveContactTask();
|
203
|
+
|
204
|
+
if (contact.nickname != null)
|
205
|
+
{
|
206
|
+
contactTask.Nickname = contact.nickname;
|
207
|
+
}
|
208
|
+
if (contact.urls != null && contact.urls.Length > 0)
|
209
|
+
{
|
210
|
+
contactTask.Website = contact.urls[0].value;
|
211
|
+
}
|
212
|
+
if (contact.note != null)
|
213
|
+
{
|
214
|
+
contactTask.Notes = contact.note;
|
215
|
+
}
|
216
|
+
|
217
|
+
#region contact.name
|
218
|
+
if (contact.name != null)
|
219
|
+
{
|
220
|
+
if (contact.name.givenName != null)
|
221
|
+
contactTask.FirstName = contact.name.givenName;
|
222
|
+
if (contact.name.familyName != null)
|
223
|
+
contactTask.LastName = contact.name.familyName;
|
224
|
+
if (contact.name.middleName != null)
|
225
|
+
contactTask.MiddleName = contact.name.middleName;
|
226
|
+
if (contact.name.honorificSuffix != null)
|
227
|
+
contactTask.Suffix = contact.name.honorificSuffix;
|
228
|
+
if (contact.name.honorificPrefix != null)
|
229
|
+
contactTask.Title = contact.name.honorificPrefix;
|
230
|
+
}
|
231
|
+
#endregion
|
232
|
+
|
233
|
+
#region contact.org
|
234
|
+
if (contact.organizations != null && contact.organizations.Count() > 0)
|
235
|
+
{
|
236
|
+
contactTask.Company = contact.organizations[0].name;
|
237
|
+
contactTask.JobTitle = contact.organizations[0].title;
|
238
|
+
}
|
239
|
+
#endregion
|
240
|
+
|
241
|
+
#region contact.phoneNumbers
|
242
|
+
if (contact.phoneNumbers != null && contact.phoneNumbers.Length > 0)
|
243
|
+
{
|
244
|
+
foreach (JSONContactField field in contact.phoneNumbers)
|
245
|
+
{
|
246
|
+
string fieldType = field.type.ToLower();
|
247
|
+
if (fieldType == "work")
|
248
|
+
{
|
249
|
+
contactTask.WorkPhone = field.value;
|
250
|
+
}
|
251
|
+
else if (fieldType == "home")
|
252
|
+
{
|
253
|
+
contactTask.HomePhone = field.value;
|
254
|
+
}
|
255
|
+
else if (fieldType == "mobile")
|
256
|
+
{
|
257
|
+
contactTask.MobilePhone = field.value;
|
258
|
+
}
|
259
|
+
}
|
260
|
+
}
|
261
|
+
#endregion
|
262
|
+
|
263
|
+
#region contact.emails
|
264
|
+
if (contact.emails != null && contact.emails.Length > 0)
|
265
|
+
{
|
266
|
+
foreach (JSONContactField field in contact.emails)
|
267
|
+
{
|
268
|
+
if (field != null)
|
269
|
+
{
|
270
|
+
if (field.type != null)
|
271
|
+
{
|
272
|
+
string fieldType = field.type.ToLower();
|
273
|
+
if (fieldType == "work")
|
274
|
+
{
|
275
|
+
contactTask.WorkEmail = field.value;
|
276
|
+
}
|
277
|
+
else if (fieldType == "home" || fieldType == "personal")
|
278
|
+
{
|
279
|
+
contactTask.PersonalEmail = field.value;
|
280
|
+
}
|
281
|
+
}
|
282
|
+
else
|
283
|
+
{
|
284
|
+
contactTask.OtherEmail = field.value;
|
285
|
+
}
|
286
|
+
}
|
287
|
+
|
288
|
+
}
|
289
|
+
}
|
290
|
+
#endregion
|
291
|
+
|
292
|
+
#region contact.addresses
|
293
|
+
if (contact.addresses != null && contact.addresses.Length > 0)
|
294
|
+
{
|
295
|
+
foreach (JSONContactAddress address in contact.addresses)
|
296
|
+
{
|
297
|
+
string fieldType = address.type.ToLower();
|
298
|
+
if (fieldType == "work")
|
299
|
+
{
|
300
|
+
contactTask.WorkAddressCity = address.locality;
|
301
|
+
contactTask.WorkAddressCountry = address.country;
|
302
|
+
contactTask.WorkAddressState = address.region;
|
303
|
+
contactTask.WorkAddressStreet = address.streetAddress;
|
304
|
+
contactTask.WorkAddressZipCode = address.postalCode;
|
305
|
+
}
|
306
|
+
else if (fieldType == "home" || fieldType == "personal")
|
307
|
+
{
|
308
|
+
contactTask.HomeAddressCity = address.locality;
|
309
|
+
contactTask.HomeAddressCountry = address.country;
|
310
|
+
contactTask.HomeAddressState = address.region;
|
311
|
+
contactTask.HomeAddressStreet = address.streetAddress;
|
312
|
+
contactTask.HomeAddressZipCode = address.postalCode;
|
313
|
+
}
|
314
|
+
else
|
315
|
+
{
|
316
|
+
// no other address fields available ...
|
317
|
+
Debug.WriteLine("Creating contact with unsupported address type :: " + address.type);
|
318
|
+
}
|
319
|
+
}
|
320
|
+
}
|
321
|
+
#endregion
|
322
|
+
|
323
|
+
|
324
|
+
contactTask.Completed += new EventHandler<SaveContactResult>(contactTask_Completed);
|
325
|
+
contactTask.Show();
|
326
|
+
|
327
|
+
DispatchCommandResult(new PluginResult(PluginResult.Status.OK, new string[] { }));
|
328
|
+
}
|
329
|
+
|
330
|
+
void contactTask_Completed(object sender, SaveContactResult e)
|
331
|
+
{
|
332
|
+
SaveContactTask task = sender as SaveContactTask;
|
333
|
+
|
334
|
+
if (e.TaskResult == TaskResult.OK)
|
335
|
+
{
|
336
|
+
DeviceContacts deviceContacts = new DeviceContacts();
|
337
|
+
deviceContacts.SearchCompleted += new EventHandler<ContactsSearchEventArgs>(postAdd_SearchCompleted);
|
338
|
+
deviceContacts.SearchAsync(task.FirstName + " " + task.LastName, FilterKind.DisplayName, task);
|
339
|
+
}
|
340
|
+
else if (e.TaskResult == TaskResult.Cancel)
|
341
|
+
{
|
342
|
+
|
343
|
+
}
|
344
|
+
}
|
345
|
+
|
346
|
+
void postAdd_SearchCompleted(object sender, ContactsSearchEventArgs e)
|
347
|
+
{
|
348
|
+
if (e.Results.Count() > 0)
|
349
|
+
{
|
350
|
+
List<Contact> foundContacts = new List<Contact>();
|
351
|
+
|
352
|
+
int n = (from Contact contact in e.Results select contact.GetHashCode()).Max();
|
353
|
+
Contact newContact = (from Contact contact in e.Results
|
354
|
+
where contact.GetHashCode() == n
|
355
|
+
select contact).First();
|
356
|
+
|
357
|
+
DispatchCommandResult(new PluginResult(PluginResult.Status.OK, FormatJSONContact(newContact, null)));
|
358
|
+
}
|
359
|
+
else
|
360
|
+
{
|
361
|
+
DispatchCommandResult(new PluginResult(PluginResult.Status.NO_RESULT));
|
362
|
+
}
|
363
|
+
}
|
364
|
+
|
365
|
+
|
366
|
+
|
367
|
+
public void remove(string id)
|
368
|
+
{
|
369
|
+
// note id is wrapped in [] and always has exactly one string ...
|
370
|
+
DispatchCommandResult(new PluginResult(PluginResult.Status.ERROR, "{\"code\":" + NOT_SUPPORTED_ERROR + "}"));
|
371
|
+
}
|
372
|
+
|
373
|
+
public void search(string searchCriteria)
|
374
|
+
{
|
375
|
+
ContactSearchParams searchParams = null;
|
376
|
+
try
|
377
|
+
{
|
378
|
+
searchParams = JSON.JsonHelper.Deserialize<ContactSearchParams[]>(searchCriteria)[0];
|
379
|
+
}
|
380
|
+
catch (Exception)
|
381
|
+
{
|
382
|
+
DispatchCommandResult(new PluginResult(PluginResult.Status.ERROR, INVALID_ARGUMENT_ERROR));
|
383
|
+
return;
|
384
|
+
}
|
385
|
+
|
386
|
+
if (searchParams.options == null)
|
387
|
+
{
|
388
|
+
searchParams.options = new SearchOptions();
|
389
|
+
searchParams.options.filter = "";
|
390
|
+
searchParams.options.multiple = true;
|
391
|
+
}
|
392
|
+
|
393
|
+
DeviceContacts deviceContacts = new DeviceContacts();
|
394
|
+
deviceContacts.SearchCompleted += new EventHandler<ContactsSearchEventArgs>(contacts_SearchCompleted);
|
395
|
+
|
396
|
+
// default is to search all fields
|
397
|
+
FilterKind filterKind = FilterKind.None;
|
398
|
+
// if only one field is specified, we will try the 3 available DeviceContact search filters
|
399
|
+
if (searchParams.fields.Count() == 1)
|
400
|
+
{
|
401
|
+
if (searchParams.fields.Contains("name"))
|
402
|
+
{
|
403
|
+
filterKind = FilterKind.DisplayName;
|
404
|
+
}
|
405
|
+
else if (searchParams.fields.Contains("emails"))
|
406
|
+
{
|
407
|
+
filterKind = FilterKind.EmailAddress;
|
408
|
+
}
|
409
|
+
else if (searchParams.fields.Contains("phoneNumbers"))
|
410
|
+
{
|
411
|
+
filterKind = FilterKind.PhoneNumber;
|
412
|
+
}
|
413
|
+
}
|
414
|
+
|
415
|
+
try
|
416
|
+
{
|
417
|
+
|
418
|
+
deviceContacts.SearchAsync(searchParams.options.filter, filterKind, searchParams);
|
419
|
+
}
|
420
|
+
catch (Exception ex)
|
421
|
+
{
|
422
|
+
Debug.WriteLine("search contacts exception :: " + ex.Message);
|
423
|
+
}
|
424
|
+
}
|
425
|
+
|
426
|
+
private void contacts_SearchCompleted(object sender, ContactsSearchEventArgs e)
|
427
|
+
{
|
428
|
+
ContactSearchParams searchParams = (ContactSearchParams)e.State;
|
429
|
+
|
430
|
+
List<Contact> foundContacts = null;
|
431
|
+
|
432
|
+
// if we have multiple search fields
|
433
|
+
if (searchParams.options.filter.Length > 0 && searchParams.fields.Count() > 1)
|
434
|
+
{
|
435
|
+
foundContacts = new List<Contact>();
|
436
|
+
if (searchParams.fields.Contains("emails"))
|
437
|
+
{
|
438
|
+
foundContacts.AddRange(from Contact con in e.Results
|
439
|
+
from ContactEmailAddress a in con.EmailAddresses
|
440
|
+
where a.EmailAddress.Contains(searchParams.options.filter)
|
441
|
+
select con);
|
442
|
+
}
|
443
|
+
if (searchParams.fields.Contains("displayName"))
|
444
|
+
{
|
445
|
+
foundContacts.AddRange(from Contact con in e.Results
|
446
|
+
where con.DisplayName.Contains(searchParams.options.filter)
|
447
|
+
select con);
|
448
|
+
}
|
449
|
+
if (searchParams.fields.Contains("name"))
|
450
|
+
{
|
451
|
+
foundContacts.AddRange(from Contact con in e.Results
|
452
|
+
where con.CompleteName != null && con.CompleteName.ToString().Contains(searchParams.options.filter)
|
453
|
+
select con);
|
454
|
+
}
|
455
|
+
if (searchParams.fields.Contains("phoneNumbers"))
|
456
|
+
{
|
457
|
+
foundContacts.AddRange(from Contact con in e.Results
|
458
|
+
from ContactPhoneNumber a in con.PhoneNumbers
|
459
|
+
where a.PhoneNumber.Contains(searchParams.options.filter)
|
460
|
+
select con);
|
461
|
+
}
|
462
|
+
if (searchParams.fields.Contains("urls"))
|
463
|
+
{
|
464
|
+
foundContacts.AddRange(from Contact con in e.Results
|
465
|
+
from string a in con.Websites
|
466
|
+
where a.Contains(searchParams.options.filter)
|
467
|
+
select con);
|
468
|
+
}
|
469
|
+
}
|
470
|
+
else
|
471
|
+
{
|
472
|
+
foundContacts = new List<Contact>(e.Results);
|
473
|
+
}
|
474
|
+
|
475
|
+
//List<string> contactList = new List<string>();
|
476
|
+
|
477
|
+
string strResult = "";
|
478
|
+
|
479
|
+
IEnumerable<Contact> distinctContacts = foundContacts.Distinct();
|
480
|
+
|
481
|
+
foreach (Contact contact in distinctContacts)
|
482
|
+
{
|
483
|
+
strResult += FormatJSONContact(contact, null) + ",";
|
484
|
+
//contactList.Add(FormatJSONContact(contact, null));
|
485
|
+
if (!searchParams.options.multiple)
|
486
|
+
{
|
487
|
+
break; // just return the first item
|
488
|
+
}
|
489
|
+
}
|
490
|
+
PluginResult result = new PluginResult(PluginResult.Status.OK);
|
491
|
+
result.Message = "[" + strResult.TrimEnd(',') + "]";
|
492
|
+
DispatchCommandResult(result);
|
493
|
+
|
494
|
+
}
|
495
|
+
|
496
|
+
private string FormatJSONPhoneNumbers(Contact con)
|
497
|
+
{
|
498
|
+
string retVal = "";
|
499
|
+
string contactFieldFormat = "\"type\":\"{0}\",\"value\":\"{1}\",\"pref\":\"false\"";
|
500
|
+
foreach (ContactPhoneNumber number in con.PhoneNumbers)
|
501
|
+
{
|
502
|
+
|
503
|
+
string contactField = string.Format(contactFieldFormat,
|
504
|
+
number.Kind.ToString(),
|
505
|
+
number.PhoneNumber);
|
506
|
+
|
507
|
+
retVal += "{" + contactField + "},";
|
508
|
+
}
|
509
|
+
return retVal.TrimEnd(',');
|
510
|
+
}
|
511
|
+
|
512
|
+
private string FormatJSONEmails(Contact con)
|
513
|
+
{
|
514
|
+
string retVal = "";
|
515
|
+
string contactFieldFormat = "\"type\":\"{0}\",\"value\":\"{1}\",\"pref\":\"false\"";
|
516
|
+
foreach (ContactEmailAddress address in con.EmailAddresses)
|
517
|
+
{
|
518
|
+
string contactField = string.Format(contactFieldFormat,
|
519
|
+
address.Kind.ToString(),
|
520
|
+
address.EmailAddress);
|
521
|
+
|
522
|
+
retVal += "{" + contactField + "},";
|
523
|
+
}
|
524
|
+
return retVal.TrimEnd(',');
|
525
|
+
}
|
526
|
+
|
527
|
+
private string getFormattedJSONAddress(ContactAddress address, bool isPrefered)
|
528
|
+
{
|
529
|
+
|
530
|
+
string addressFormatString = "\"pref\":{0}," + // bool
|
531
|
+
"\"type\":\"{1}\"," +
|
532
|
+
"\"formatted\":\"{2}\"," +
|
533
|
+
"\"streetAddress\":\"{3}\"," +
|
534
|
+
"\"locality\":\"{4}\"," +
|
535
|
+
"\"region\":\"{5}\"," +
|
536
|
+
"\"postalCode\":\"{6}\"," +
|
537
|
+
"\"country\":\"{7}\"";
|
538
|
+
|
539
|
+
string formattedAddress = address.PhysicalAddress.AddressLine1 + " "
|
540
|
+
+ address.PhysicalAddress.AddressLine2 + " "
|
541
|
+
+ address.PhysicalAddress.City + " "
|
542
|
+
+ address.PhysicalAddress.StateProvince + " "
|
543
|
+
+ address.PhysicalAddress.CountryRegion + " "
|
544
|
+
+ address.PhysicalAddress.PostalCode;
|
545
|
+
|
546
|
+
string jsonAddress = string.Format(addressFormatString,
|
547
|
+
isPrefered ? "\"true\"" : "\"false\"",
|
548
|
+
address.Kind.ToString(),
|
549
|
+
formattedAddress,
|
550
|
+
address.PhysicalAddress.AddressLine1 + " " + address.PhysicalAddress.AddressLine2,
|
551
|
+
address.PhysicalAddress.City,
|
552
|
+
address.PhysicalAddress.StateProvince,
|
553
|
+
address.PhysicalAddress.PostalCode,
|
554
|
+
address.PhysicalAddress.CountryRegion);
|
555
|
+
|
556
|
+
|
557
|
+
Debug.WriteLine("getFormattedJSONAddress returning :: " + jsonAddress);
|
558
|
+
|
559
|
+
return "{" + jsonAddress + "}";
|
560
|
+
}
|
561
|
+
|
562
|
+
private string FormatJSONAddresses(Contact con)
|
563
|
+
{
|
564
|
+
string retVal = "";
|
565
|
+
foreach (ContactAddress address in con.Addresses)
|
566
|
+
{
|
567
|
+
retVal += this.getFormattedJSONAddress(address, false) + ",";
|
568
|
+
}
|
569
|
+
|
570
|
+
Debug.WriteLine("FormatJSONAddresses returning :: " + retVal);
|
571
|
+
return retVal.TrimEnd(',');
|
572
|
+
}
|
573
|
+
|
574
|
+
private string FormatJSONWebsites(Contact con)
|
575
|
+
{
|
576
|
+
string retVal = "";
|
577
|
+
foreach (string website in con.Websites)
|
578
|
+
{
|
579
|
+
retVal += "\"" + website + "\",";
|
580
|
+
}
|
581
|
+
return retVal.TrimEnd(',');
|
582
|
+
}
|
583
|
+
|
584
|
+
/*
|
585
|
+
* formatted: The complete name of the contact. (DOMString)
|
586
|
+
familyName: The contacts family name. (DOMString)
|
587
|
+
givenName: The contacts given name. (DOMString)
|
588
|
+
middleName: The contacts middle name. (DOMString)
|
589
|
+
honorificPrefix: The contacts prefix (example Mr. or Dr.) (DOMString)
|
590
|
+
honorificSuffix: The contacts suffix (example Esq.). (DOMString)
|
591
|
+
*/
|
592
|
+
private string FormatJSONName(Contact con)
|
593
|
+
{
|
594
|
+
string retVal = "";
|
595
|
+
string formatStr = "\"formatted\":\"{0}\"," +
|
596
|
+
"\"familyName\":\"{1}\"," +
|
597
|
+
"\"givenName\":\"{2}\"," +
|
598
|
+
"\"middleName\":\"{3}\"," +
|
599
|
+
"\"honorificPrefix\":\"{4}\"," +
|
600
|
+
"\"honorificSuffix\":\"{5}\"";
|
601
|
+
|
602
|
+
retVal = string.Format(formatStr,
|
603
|
+
con.CompleteName.FirstName, // TODO:
|
604
|
+
con.CompleteName.LastName,
|
605
|
+
con.CompleteName.FirstName,
|
606
|
+
con.CompleteName.MiddleName,
|
607
|
+
con.CompleteName.Title,
|
608
|
+
con.CompleteName.Suffix);
|
609
|
+
|
610
|
+
return "{" + retVal + "}";
|
611
|
+
|
612
|
+
}
|
613
|
+
|
614
|
+
private string FormatJSONContact(Contact con, string[] fields)
|
615
|
+
{
|
616
|
+
|
617
|
+
string contactFormatStr = "\"id\":\"{0}\"," +
|
618
|
+
"\"displayName\":\"{1}\"," +
|
619
|
+
"\"nickname\":\"{2}\"," +
|
620
|
+
"\"phoneNumbers\":[{3}]," +
|
621
|
+
"\"emails\":[{4}]," +
|
622
|
+
"\"addresses\":[{5}]," +
|
623
|
+
"\"urls\":[{6}]," +
|
624
|
+
"\"name\":{7}," +
|
625
|
+
"\"note\":\"{8}\"";
|
626
|
+
|
627
|
+
string jsonContact = String.Format(contactFormatStr,
|
628
|
+
con.GetHashCode(),
|
629
|
+
con.DisplayName,
|
630
|
+
con.CompleteName.Nickname,
|
631
|
+
FormatJSONPhoneNumbers(con),
|
632
|
+
FormatJSONEmails(con),
|
633
|
+
FormatJSONAddresses(con),
|
634
|
+
FormatJSONWebsites(con),
|
635
|
+
FormatJSONName(con),
|
636
|
+
con.Notes.FirstOrDefault());
|
637
|
+
|
638
|
+
Debug.WriteLine("jsonContact = " + jsonContact);
|
639
|
+
|
640
|
+
return "{" + jsonContact + "}";
|
641
|
+
}
|
642
|
+
}
|
643
|
+
}
|